include!(concat!(env!("OUT_DIR"), "/read_bindings.rs"));
use std::ffi::{CString, CStr};
#[allow(unused)]
pub fn kml_file_validate(filename: &str) -> bool {
let c_filename = CString::new(filename).expect(&format!("Failed to Convert String {} to CString.", filename));
unsafe { validate_kml_file(c_filename.into_raw()) }
}
#[allow(unused)]
pub fn kml_file_read(filename: &str) -> String {
let c_filename = CString::new(filename).expect(&format!("Failed to Convert String {} to CString.", filename));
let c_str = unsafe { read_kml_file(c_filename.into_raw()) };
unsafe { CStr::from_ptr(c_str).to_string_lossy().into_owned() }
}
#[allow(unused)]
pub fn kml_name_read(filename: &str) -> String {
let c_filename = CString::new(filename).expect(&format!("Failed to Convert String {} to CString.", filename));
let c_str = unsafe { read_kml_name(c_filename.into_raw()) };
unsafe { CStr::from_ptr(c_str).to_string_lossy().into_owned() }
}
#[allow(unused)]
pub fn kml_version_read(filename: &str) -> f32 {
let c_filename = CString::new(filename).expect(&format!("Failed to Convert String {} to CString.", filename));
let version = unsafe { read_kml_version(c_filename.into_raw()) };
version
}
#[allow(unused)]
pub fn kml_author_read(filename: &str) -> String {
let c_filename = CString::new(filename).expect(&format!("Failed to Convert String {} to CString.", filename));
let c_str = unsafe { read_kml_author(c_filename.into_raw()) };
unsafe { CStr::from_ptr(c_str).to_string_lossy().into_owned() }
}
#[allow(unused)]
pub fn kml_description_read(filename: &str) -> String {
let c_filename = CString::new(filename).expect(&format!("Failed to Convert String {} to CString.", filename));
let c_str = unsafe { read_kml_description(c_filename.into_raw()) };
unsafe { CStr::from_ptr(c_str).to_string_lossy().into_owned() }
}
#[allow(unused)]
pub fn kml_size_read(filename: &str) -> f32 {
let c_filename = CString::new(filename).expect(&format!("Failed to Convert String {} to CString.", filename));
let size = unsafe { read_kml_size(c_filename.into_raw()) };
size
}