use libc::{c_char, c_uint, c_float, c_int};
use scene::RawScene;
use types::{AiString, MemoryInfo};
use fileio::{AiFileIO};
#[repr(C)]
pub struct PropertyStore {
sentinel: c_char,
}
#[link(name = "assimp")]
extern {
pub fn aiImportFile(fname: *const c_char, flags: c_uint) -> *const RawScene;
pub fn aiImportFileExWithProperties(fname: *const c_char,
flags: c_uint,
fio : *mut AiFileIO,
props: *const PropertyStore)
-> *const RawScene;
pub fn aiGetErrorString() -> *const c_char;
pub fn aiImportFileFromMemory(buf: *const c_char,
len: c_uint,
flags: c_uint,
hint: *const c_char)
-> *const RawScene;
pub fn aiImportFileFromMemoryWithProperties(buf: *const c_char,
len: c_uint,
flags: c_uint,
hint: *const c_char,
props: *const PropertyStore)
-> *const RawScene;
pub fn aiApplyPostProcessing(scene: *const RawScene,
flags: c_uint)
-> *const RawScene;
pub fn aiReleaseImport(scene: *const RawScene);
pub fn aiGetMemoryRequirements(scene: *const RawScene, info: *mut MemoryInfo);
pub fn aiCreatePropertyStore() -> *mut PropertyStore;
pub fn aiReleasePropertyStore(p: *mut PropertyStore);
pub fn aiSetImportPropertyInteger(store: *mut PropertyStore,
name: *const c_char,
value: c_int);
pub fn aiSetImportPropertyFloat(store: *mut PropertyStore,
name: *const c_char,
value: c_float);
pub fn aiSetImportPropertyString(store: *mut PropertyStore,
name: *const c_char,
st: *const AiString);
}