use mesh::PrimitiveType;
use types::AiString;
#[allow(non_camel_case_types)]
pub enum Property<'a> {
GLOB_MEASURE_TIME(bool),
PP_SBBC_MAX_BONES(i32),
PP_CT_MAX_SMOOTHING_ANGLE(f32),
PP_CT_TEXTURE_CHANNEL_INDEX(i32),
PP_GSN_MAX_SMOOTHING_ANGLE(f32),
IMPORT_MDL_COLORMAP(&'a AiString),
PP_RRM_EXCLUDE_LIST(&'a AiString),
PP_PTV_KEEP_HIERARCHY(bool),
PP_PTV_NORMALIZE(f32),
PP_FD_REMOVE(bool),
PP_OG_EXCLUDE_LIST(&'a AiString),
PP_SLM_TRIANGLE_LIMIT(i32),
PP_SLM_VERTEX_LIMIT(i32),
PP_LBW_MAX_WEIGHTS(i32),
PP_DB_THRESHOLD(f32),
PP_DB_ALL_OR_NONE(bool),
PP_ICL_PTCACHE_SIZE(i32),
PP_RVC_FLAGS(&'a [Component]),
PP_SBP_REMOVE(&'a [PrimitiveType]),
PP_FID_ANIM_ACCURACY(f32),
PP_TUV_EVALUATE(&'a [TransformUV]),
FAVOUR_SPEED(bool),
IMPORT_GLOBAL_KEYFRAME(i32),
IMPORT_MD3_KEYFRAME(i32),
IMPORT_MD2_KEYFRAME(i32),
IMPORT_MDL_KEYFRAME(i32),
IMPORT_MDC_KEYFRAME(i32),
IMPORT_SMD_KEYFRAME(i32),
IMPORT_UNREAL_KEYFRAME(i32),
IMPORT_AC_SEPARATE_BFCULL(bool),
IMPORT_AC_EVAL_SUBDIVISION(bool),
IMPORT_UNREAL_HANDLE_FLAGS(bool),
IMPORT_TER_MAKE_UVS(bool),
IMPORT_ASE_RECONSTRUCT_NORMALS(bool),
IMPORT_MD3_HANDLE_MULTIPART(bool),
IMPORT_MD3_SKIN_NAME(&'a AiString),
IMPORT_MD3_SHADER_SRC(&'a AiString),
IMPORT_LWO_ONE_LAYER_ONLY(i32),
IMPORT_MD5_NO_ANIM_AUTOLOAD(bool),
IMPORT_LWS_ANIM_START(i32),
IMPORT_LWS_ANIM_END(i32),
IMPORT_IRR_ANIM_FPS(i32),
IMPORT_OGRE_MATERIAL_FILE(&'a AiString),
IMPORT_OGRE_TEXTURETYPE_FROM_FILENAME(bool),
IMPORT_IFC_SKIP_SPACE_REPRESENTATIONS(bool),
IMPORT_IFC_SKIP_CURVE_REPRESENTATIONS(bool),
IMPORT_IFC_CUSTOM_TRIANGULATION(bool),
}
#[derive(Copy, Clone, PartialEq, Eq, Debug)]
#[repr(C, u32)]
pub enum TransformUV {
Scaling = 0x1,
Rotation = 0x2,
Translation = 0x4,
All = 0x7,
}
#[derive(Copy, Clone, PartialEq, Eq, Debug)]
#[repr(C, u32)]
pub enum Component {
Normals = 0x2,
TangentsAndBitangents = 0x4,
Colors = 0x8,
Texcoords = 0x10,
Boneweights = 0x20,
Animations = 0x40,
Textures = 0x80,
Lights = 0x100,
Cameras = 0x200,
Meshes = 0x400,
Materials = 0x800,
}
#[cfg(untrue)]
mod todo {
pub const SBBC_DEFAULT_MAX_BONES : u32 = 60;
pub const SLM_DEFAULT_MAX_TRIANGLES : u32 = 1000000;
pub const SLM_DEFAULT_MAX_VERTICES : u32 = 1000000;
pub const LMW_MAX_WEIGHTS : u32 = 0x4;
pub const DEBONE_THRESHOLD : f32 = 1.0;
pub const ICL_PTCACHE_SIZE : u32 = 12;
}