#![allow(
clippy::all,
ambiguous_glob_reexports,
non_snake_case,
non_camel_case_types,
non_upper_case_globals,
unsafe_op_in_unsafe_fn,
unused_imports,
unused_qualifications
)]
#[allow(unused_imports)]
use super::super::super::__bindgen_prelude::*;
pub type CStudioHdr_CActivityToSequenceMapping_ActivityToValueIdxHash = __BindgenOpaqueArray8<
[u8; 40usize],
>;
#[repr(C)]
#[derive(Debug)]
pub struct CStudioHdr {
pub m_pStudioHdr: *const studiohdr_t,
pub m_pVModel: *mut virtualmodel_t,
pub m_pStudioHdrCache: CUtlVector<
*const studiohdr_t,
CUtlMemory<*const studiohdr_t>,
>,
pub m_nFrameUnlockCounter: ::std::os::raw::c_int,
pub m_pFrameUnlockCounter: *mut ::std::os::raw::c_int,
pub m_FrameUnlockCounterMutex: CThreadFastMutex,
pub m_boneFlags: CUtlVector<
::std::os::raw::c_int,
CUtlMemory<::std::os::raw::c_int>,
>,
pub m_boneParent: CUtlVector<
::std::os::raw::c_int,
CUtlMemory<::std::os::raw::c_int>,
>,
pub m_ActivityToSequence: CStudioHdr_CActivityToSequenceMapping,
pub m_nPerfAnimatedBones: ::std::os::raw::c_int,
pub m_nPerfUsedBones: ::std::os::raw::c_int,
pub m_nPerfAnimationLayers: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug)]
pub struct CStudioHdr_CActivityToSequenceMapping {
pub m_pSequenceTuples: *mut CStudioHdr_CActivityToSequenceMapping_SequenceTuple,
pub m_iSequenceTuplesCount: ::std::os::raw::c_uint,
pub m_bIsInitialized: bool,
pub m_ActToSeqHash: CStudioHdr_CActivityToSequenceMapping_ActivityToValueIdxHash,
pub m_expectedPStudioHdr: *const ::std::os::raw::c_void,
pub m_expectedVModel: *const ::std::os::raw::c_void,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct CStudioHdr_CActivityToSequenceMapping_HashValueType {
pub activityIdx: ::std::os::raw::c_int,
pub startingIdx: ::std::os::raw::c_int,
pub count: ::std::os::raw::c_int,
pub totalWeight: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct CStudioHdr_CActivityToSequenceMapping_HashValueType_HashFuncs {
pub _address: u8,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct CStudioHdr_CActivityToSequenceMapping_SequenceTuple {
pub seqnum: ::std::os::raw::c_short,
pub weight: ::std::os::raw::c_short,
pub pActivityModifiers: *mut CUtlSymbol,
pub iNumActivityModifiers: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug)]
pub struct OptimizedModel_StripHeader_t {
_unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct flexsetting_t {
pub nameindex: ::std::os::raw::c_int,
pub obsolete1: ::std::os::raw::c_int,
pub numsettings: ::std::os::raw::c_int,
pub index: ::std::os::raw::c_int,
pub obsolete2: ::std::os::raw::c_int,
pub settingindex: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct flexsettinghdr_t {
pub id: ::std::os::raw::c_int,
pub version: ::std::os::raw::c_int,
pub name: [::std::os::raw::c_char; 64usize],
pub length: ::std::os::raw::c_int,
pub numflexsettings: ::std::os::raw::c_int,
pub flexsettingindex: ::std::os::raw::c_int,
pub nameindex: ::std::os::raw::c_int,
pub numindexes: ::std::os::raw::c_int,
pub indexindex: ::std::os::raw::c_int,
pub numkeys: ::std::os::raw::c_int,
pub keynameindex: ::std::os::raw::c_int,
pub keymappingindex: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct flexweight_t {
pub key: ::std::os::raw::c_int,
pub weight: f32,
pub influence: f32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudio_meshvertexdata_t {
pub unused_modelvertexdata: ::std::os::raw::c_int,
pub numLODVertexes: [::std::os::raw::c_int; 8usize],
pub modelvertexdata: __BindgenOpaqueArray<[u32; 2usize]>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudio_modelvertexdata_t {
pub pVertexData: *const ::std::os::raw::c_void,
pub pTangentData: *const ::std::os::raw::c_void,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioactivitymodifier_t {
pub sznameindex: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioanim_t {
pub bone: byte,
pub flags: byte,
pub nextoffset: ::std::os::raw::c_short,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioanim_valueptr_t {
pub offset: [::std::os::raw::c_short; 3usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioanimblock_t {
pub datastart: ::std::os::raw::c_int,
pub dataend: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioanimdesc_t {
pub baseptr: ::std::os::raw::c_int,
pub sznameindex: ::std::os::raw::c_int,
pub fps: f32,
pub flags: ::std::os::raw::c_int,
pub numframes: ::std::os::raw::c_int,
pub nummovements: ::std::os::raw::c_int,
pub movementindex: ::std::os::raw::c_int,
pub unused1: [::std::os::raw::c_int; 6usize],
pub animblock: ::std::os::raw::c_int,
pub animindex: ::std::os::raw::c_int,
pub numikrules: ::std::os::raw::c_int,
pub ikruleindex: ::std::os::raw::c_int,
pub animblockikruleindex: ::std::os::raw::c_int,
pub numlocalhierarchy: ::std::os::raw::c_int,
pub localhierarchyindex: ::std::os::raw::c_int,
pub sectionindex: ::std::os::raw::c_int,
pub sectionframes: ::std::os::raw::c_int,
pub zeroframespan: ::std::os::raw::c_short,
pub zeroframecount: ::std::os::raw::c_short,
pub zeroframeindex: ::std::os::raw::c_int,
pub zeroframestalltime: f32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioanimsections_t {
pub animblock: ::std::os::raw::c_int,
pub animindex: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union mstudioanimvalue_t {
pub num: mstudioanimvalue_t__bindgen_ty_1,
pub value: ::std::os::raw::c_short,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioanimvalue_t__bindgen_ty_1 {
pub valid: byte,
pub total: byte,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioattachment_t {
pub sznameindex: ::std::os::raw::c_int,
pub flags: ::std::os::raw::c_uint,
pub localbone: ::std::os::raw::c_int,
pub local: matrix3x4_t,
pub unused: [::std::os::raw::c_int; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioautolayer_t {
pub iSequence: ::std::os::raw::c_short,
pub iPose: ::std::os::raw::c_short,
pub flags: ::std::os::raw::c_int,
pub start: f32,
pub peak: f32,
pub tail: f32,
pub end: f32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiobbox_t {
pub bone: ::std::os::raw::c_int,
pub group: ::std::os::raw::c_int,
pub bbmin: Vector,
pub bbmax: Vector,
pub szhitboxnameindex: ::std::os::raw::c_int,
pub unused: [::std::os::raw::c_int; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiobodyparts_t {
pub sznameindex: ::std::os::raw::c_int,
pub nummodels: ::std::os::raw::c_int,
pub base: ::std::os::raw::c_int,
pub modelindex: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiobone_t {
pub sznameindex: ::std::os::raw::c_int,
pub parent: ::std::os::raw::c_int,
pub bonecontroller: [::std::os::raw::c_int; 6usize],
pub pos: Vector,
pub quat: Quaternion,
pub rot: RadianEuler,
pub posscale: Vector,
pub rotscale: Vector,
pub poseToBone: matrix3x4_t,
pub qAlignment: Quaternion,
pub flags: ::std::os::raw::c_int,
pub proctype: ::std::os::raw::c_int,
pub procindex: ::std::os::raw::c_int,
pub physicsbone: ::std::os::raw::c_int,
pub surfacepropidx: ::std::os::raw::c_int,
pub contents: ::std::os::raw::c_int,
pub unused: [::std::os::raw::c_int; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiobonecontroller_t {
pub bone: ::std::os::raw::c_int,
pub type_: ::std::os::raw::c_int,
pub start: f32,
pub end: f32,
pub rest: ::std::os::raw::c_int,
pub inputfield: ::std::os::raw::c_int,
pub unused: [::std::os::raw::c_int; 8usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioboneflexdriver_t {
pub m_nBoneIndex: ::std::os::raw::c_int,
pub m_nControlCount: ::std::os::raw::c_int,
pub m_nControlIndex: ::std::os::raw::c_int,
pub unused: [::std::os::raw::c_int; 3usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioboneflexdrivercontrol_t {
pub m_nBoneComponent: ::std::os::raw::c_int,
pub m_nFlexControllerIndex: ::std::os::raw::c_int,
pub m_flMin: f32,
pub m_flMax: f32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioboneweight_t {
pub weight: [f32; 3usize],
pub bone: [::std::os::raw::c_char; 3usize],
pub numbones: byte,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiocompressedikerror_t {
pub scale: [f32; 6usize],
pub offset: [::std::os::raw::c_short; 6usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioevent_t {
pub cycle: f32,
pub event: ::std::os::raw::c_int,
pub type_: ::std::os::raw::c_int,
pub options: [::std::os::raw::c_char; 64usize],
pub szeventindex: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioeyeball_t {
pub sznameindex: ::std::os::raw::c_int,
pub bone: ::std::os::raw::c_int,
pub org: Vector,
pub zoffset: f32,
pub radius: f32,
pub up: Vector,
pub forward: Vector,
pub texture: ::std::os::raw::c_int,
pub unused1: ::std::os::raw::c_int,
pub iris_scale: f32,
pub unused2: ::std::os::raw::c_int,
pub upperflexdesc: [::std::os::raw::c_int; 3usize],
pub lowerflexdesc: [::std::os::raw::c_int; 3usize],
pub uppertarget: [f32; 3usize],
pub lowertarget: [f32; 3usize],
pub upperlidflexdesc: ::std::os::raw::c_int,
pub lowerlidflexdesc: ::std::os::raw::c_int,
pub unused: [::std::os::raw::c_int; 4usize],
pub m_bNonFACS: bool,
pub unused3: [::std::os::raw::c_char; 3usize],
pub unused4: [::std::os::raw::c_int; 7usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioflex_t {
pub flexdesc: ::std::os::raw::c_int,
pub target0: f32,
pub target1: f32,
pub target2: f32,
pub target3: f32,
pub numverts: ::std::os::raw::c_int,
pub vertindex: ::std::os::raw::c_int,
pub flexpair: ::std::os::raw::c_int,
pub vertanimtype: ::std::os::raw::c_uchar,
pub unusedchar: [::std::os::raw::c_uchar; 3usize],
pub unused: [::std::os::raw::c_int; 6usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioflexcontroller_t {
pub sztypeindex: ::std::os::raw::c_int,
pub sznameindex: ::std::os::raw::c_int,
pub localToGlobal: ::std::os::raw::c_int,
pub min: f32,
pub max: f32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioflexcontrollerui_t {
pub sznameindex: ::std::os::raw::c_int,
pub szindex0: ::std::os::raw::c_int,
pub szindex1: ::std::os::raw::c_int,
pub szindex2: ::std::os::raw::c_int,
pub remaptype: ::std::os::raw::c_uchar,
pub stereo: bool,
pub unused: [byte; 2usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioflexdesc_t {
pub szFACSindex: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct mstudioflexop_t {
pub op: ::std::os::raw::c_int,
pub d: mstudioflexop_t__bindgen_ty_1,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union mstudioflexop_t__bindgen_ty_1 {
pub index: ::std::os::raw::c_int,
pub value: f32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioflexrule_t {
pub flex: ::std::os::raw::c_int,
pub numops: ::std::os::raw::c_int,
pub opindex: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiohitboxset_t {
pub sznameindex: ::std::os::raw::c_int,
pub numhitboxes: ::std::os::raw::c_int,
pub hitboxindex: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioikchain_t {
pub sznameindex: ::std::os::raw::c_int,
pub linktype: ::std::os::raw::c_int,
pub numlinks: ::std::os::raw::c_int,
pub linkindex: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioikerror_t {
pub pos: Vector,
pub q: Quaternion,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioiklink_t {
pub bone: ::std::os::raw::c_int,
pub kneeDir: Vector,
pub unused0: Vector,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioiklock_t {
pub chain: ::std::os::raw::c_int,
pub flPosWeight: f32,
pub flLocalQWeight: f32,
pub flags: ::std::os::raw::c_int,
pub unused: [::std::os::raw::c_int; 4usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioikrule_t {
pub index: ::std::os::raw::c_int,
pub type_: ::std::os::raw::c_int,
pub chain: ::std::os::raw::c_int,
pub bone: ::std::os::raw::c_int,
pub slot: ::std::os::raw::c_int,
pub height: f32,
pub radius: f32,
pub floor: f32,
pub pos: Vector,
pub q: Quaternion,
pub compressedikerrorindex: ::std::os::raw::c_int,
pub unused2: ::std::os::raw::c_int,
pub iStart: ::std::os::raw::c_int,
pub ikerrorindex: ::std::os::raw::c_int,
pub start: f32,
pub peak: f32,
pub tail: f32,
pub end: f32,
pub unused3: f32,
pub contact: f32,
pub drop: f32,
pub top: f32,
pub unused6: ::std::os::raw::c_int,
pub unused7: ::std::os::raw::c_int,
pub unused8: ::std::os::raw::c_int,
pub szattachmentindex: ::std::os::raw::c_int,
pub unused: [::std::os::raw::c_int; 7usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiolinearbone_t {
pub numbones: ::std::os::raw::c_int,
pub flagsindex: ::std::os::raw::c_int,
pub parentindex: ::std::os::raw::c_int,
pub posindex: ::std::os::raw::c_int,
pub quatindex: ::std::os::raw::c_int,
pub rotindex: ::std::os::raw::c_int,
pub posetoboneindex: ::std::os::raw::c_int,
pub posscaleindex: ::std::os::raw::c_int,
pub rotscaleindex: ::std::os::raw::c_int,
pub qalignmentindex: ::std::os::raw::c_int,
pub unused: [::std::os::raw::c_int; 6usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiolocalhierarchy_t {
pub iBone: ::std::os::raw::c_int,
pub iNewParent: ::std::os::raw::c_int,
pub start: f32,
pub peak: f32,
pub tail: f32,
pub end: f32,
pub iStart: ::std::os::raw::c_int,
pub localanimindex: ::std::os::raw::c_int,
pub unused: [::std::os::raw::c_int; 4usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiomesh_t {
pub material: ::std::os::raw::c_int,
pub modelindex: ::std::os::raw::c_int,
pub numvertices: ::std::os::raw::c_int,
pub vertexoffset: ::std::os::raw::c_int,
pub numflexes: ::std::os::raw::c_int,
pub flexindex: ::std::os::raw::c_int,
pub materialtype: ::std::os::raw::c_int,
pub materialparam: ::std::os::raw::c_int,
pub meshid: ::std::os::raw::c_int,
pub center: Vector,
pub vertexdata: mstudio_meshvertexdata_t,
pub unused: [::std::os::raw::c_int; 6usize],
}
#[repr(C, packed(4))]
#[derive(Debug, Copy, Clone)]
pub struct mstudiomodel_t {
pub name: [::std::os::raw::c_char; 64usize],
pub type_: ::std::os::raw::c_int,
pub boundingradius: f32,
pub nummeshes: ::std::os::raw::c_int,
pub meshindex: ::std::os::raw::c_int,
pub numvertices: ::std::os::raw::c_int,
pub vertexindex: ::std::os::raw::c_int,
pub tangentsindex: ::std::os::raw::c_int,
pub numattachments: ::std::os::raw::c_int,
pub attachmentindex: ::std::os::raw::c_int,
pub numeyeballs: ::std::os::raw::c_int,
pub eyeballindex: ::std::os::raw::c_int,
pub vertexdata: mstudio_modelvertexdata_t,
pub unused: [::std::os::raw::c_int; 6usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiomodelgroup_t {
pub szlabelindex: ::std::os::raw::c_int,
pub sznameindex: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiomouth_t {
pub bone: ::std::os::raw::c_int,
pub forward: Vector,
pub flexdesc: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiomovement_t {
pub endframe: ::std::os::raw::c_int,
pub motionflags: ::std::os::raw::c_int,
pub v0: f32,
pub v1: f32,
pub angle: f32,
pub vector: Vector,
pub position: Vector,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioposeparamdesc_t {
pub sznameindex: ::std::os::raw::c_int,
pub flags: ::std::os::raw::c_int,
pub start: f32,
pub end: f32,
pub loop_: f32,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudioseqdesc_t {
pub baseptr: ::std::os::raw::c_int,
pub szlabelindex: ::std::os::raw::c_int,
pub szactivitynameindex: ::std::os::raw::c_int,
pub flags: ::std::os::raw::c_int,
pub activity: ::std::os::raw::c_int,
pub actweight: ::std::os::raw::c_int,
pub numevents: ::std::os::raw::c_int,
pub eventindex: ::std::os::raw::c_int,
pub bbmin: Vector,
pub bbmax: Vector,
pub numblends: ::std::os::raw::c_int,
pub animindexindex: ::std::os::raw::c_int,
pub movementindex: ::std::os::raw::c_int,
pub groupsize: [::std::os::raw::c_int; 2usize],
pub paramindex: [::std::os::raw::c_int; 2usize],
pub paramstart: [f32; 2usize],
pub paramend: [f32; 2usize],
pub paramparent: ::std::os::raw::c_int,
pub fadeintime: f32,
pub fadeouttime: f32,
pub localentrynode: ::std::os::raw::c_int,
pub localexitnode: ::std::os::raw::c_int,
pub nodeflags: ::std::os::raw::c_int,
pub entryphase: f32,
pub exitphase: f32,
pub lastframe: f32,
pub nextseq: ::std::os::raw::c_int,
pub pose: ::std::os::raw::c_int,
pub numikrules: ::std::os::raw::c_int,
pub numautolayers: ::std::os::raw::c_int,
pub autolayerindex: ::std::os::raw::c_int,
pub weightlistindex: ::std::os::raw::c_int,
pub posekeyindex: ::std::os::raw::c_int,
pub numiklocks: ::std::os::raw::c_int,
pub iklockindex: ::std::os::raw::c_int,
pub keyvalueindex: ::std::os::raw::c_int,
pub keyvaluesize: ::std::os::raw::c_int,
pub cycleposeindex: ::std::os::raw::c_int,
pub activitymodifierindex: ::std::os::raw::c_int,
pub numactivitymodifiers: ::std::os::raw::c_int,
pub unused: [::std::os::raw::c_int; 5usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiosrcbonetransform_t {
pub sznameindex: ::std::os::raw::c_int,
pub pretransform: matrix3x4_t,
pub posttransform: matrix3x4_t,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiotexture_t {
pub sznameindex: ::std::os::raw::c_int,
pub flags: ::std::os::raw::c_int,
pub used: ::std::os::raw::c_int,
pub unused1: ::std::os::raw::c_int,
pub material: *mut IMaterial,
pub clientmaterial: *mut ::std::os::raw::c_void,
pub unused: [::std::os::raw::c_int; 8usize],
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct mstudiovertanim_t {
pub index: ::std::os::raw::c_ushort,
pub speed: byte,
pub side: byte,
pub __bindgen_anon_1: mstudiovertanim_t__bindgen_ty_1,
pub __bindgen_anon_2: mstudiovertanim_t__bindgen_ty_2,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiovertanim_t_CSortByIndex {
pub _address: u8,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union mstudiovertanim_t__bindgen_ty_1 {
pub delta: [::std::os::raw::c_short; 3usize],
pub flDelta: [float16; 3usize],
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union mstudiovertanim_t__bindgen_ty_2 {
pub ndelta: [::std::os::raw::c_short; 3usize],
pub flNDelta: [float16; 3usize],
}
#[repr(C)]
#[derive(Copy, Clone)]
pub struct mstudiovertanim_wrinkle_t {
pub _base: mstudiovertanim_t,
pub wrinkledelta: ::std::os::raw::c_short,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct mstudiovertex_t {
pub m_BoneWeights: mstudioboneweight_t,
pub m_vecPosition: Vector,
pub m_vecNormal: Vector,
pub m_vecTexCoord: Vector2D,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct serializedstudioptr_t {
pub _address: u8,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct studiohdr2_t {
pub numsrcbonetransform: ::std::os::raw::c_int,
pub srcbonetransformindex: ::std::os::raw::c_int,
pub illumpositionattachmentindex: ::std::os::raw::c_int,
pub flMaxEyeDeflection: f32,
pub linearboneindex: ::std::os::raw::c_int,
pub sznameindex: ::std::os::raw::c_int,
pub m_nBoneFlexDriverCount: ::std::os::raw::c_int,
pub m_nBoneFlexDriverIndex: ::std::os::raw::c_int,
pub virtualModel: __BindgenOpaqueArray<[u32; 2usize]>,
pub animblockModel: __BindgenOpaqueArray<[u32; 2usize]>,
pub pVertexBase: __BindgenOpaqueArray<[u32; 2usize]>,
pub pIndexBase: __BindgenOpaqueArray<[u32; 2usize]>,
pub reserved: [::std::os::raw::c_int; 48usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct studiohdr_t {
pub id: ::std::os::raw::c_int,
pub version: ::std::os::raw::c_int,
pub checksum: ::std::os::raw::c_int,
pub name: [::std::os::raw::c_char; 64usize],
pub length: ::std::os::raw::c_int,
pub eyeposition: Vector,
pub illumposition: Vector,
pub hull_min: Vector,
pub hull_max: Vector,
pub view_bbmin: Vector,
pub view_bbmax: Vector,
pub flags: ::std::os::raw::c_int,
pub numbones: ::std::os::raw::c_int,
pub boneindex: ::std::os::raw::c_int,
pub numbonecontrollers: ::std::os::raw::c_int,
pub bonecontrollerindex: ::std::os::raw::c_int,
pub numhitboxsets: ::std::os::raw::c_int,
pub hitboxsetindex: ::std::os::raw::c_int,
pub numlocalanim: ::std::os::raw::c_int,
pub localanimindex: ::std::os::raw::c_int,
pub numlocalseq: ::std::os::raw::c_int,
pub localseqindex: ::std::os::raw::c_int,
pub activitylistversion: ::std::os::raw::c_int,
pub eventsindexed: ::std::os::raw::c_int,
pub numtextures: ::std::os::raw::c_int,
pub textureindex: ::std::os::raw::c_int,
pub numcdtextures: ::std::os::raw::c_int,
pub cdtextureindex: ::std::os::raw::c_int,
pub numskinref: ::std::os::raw::c_int,
pub numskinfamilies: ::std::os::raw::c_int,
pub skinindex: ::std::os::raw::c_int,
pub numbodyparts: ::std::os::raw::c_int,
pub bodypartindex: ::std::os::raw::c_int,
pub numlocalattachments: ::std::os::raw::c_int,
pub localattachmentindex: ::std::os::raw::c_int,
pub numlocalnodes: ::std::os::raw::c_int,
pub localnodeindex: ::std::os::raw::c_int,
pub localnodenameindex: ::std::os::raw::c_int,
pub numflexdesc: ::std::os::raw::c_int,
pub flexdescindex: ::std::os::raw::c_int,
pub numflexcontrollers: ::std::os::raw::c_int,
pub flexcontrollerindex: ::std::os::raw::c_int,
pub numflexrules: ::std::os::raw::c_int,
pub flexruleindex: ::std::os::raw::c_int,
pub numikchains: ::std::os::raw::c_int,
pub ikchainindex: ::std::os::raw::c_int,
pub nummouths: ::std::os::raw::c_int,
pub mouthindex: ::std::os::raw::c_int,
pub numlocalposeparameters: ::std::os::raw::c_int,
pub localposeparamindex: ::std::os::raw::c_int,
pub surfacepropindex: ::std::os::raw::c_int,
pub keyvalueindex: ::std::os::raw::c_int,
pub keyvaluesize: ::std::os::raw::c_int,
pub numlocalikautoplaylocks: ::std::os::raw::c_int,
pub localikautoplaylockindex: ::std::os::raw::c_int,
pub mass: f32,
pub contents: ::std::os::raw::c_int,
pub numincludemodels: ::std::os::raw::c_int,
pub includemodelindex: ::std::os::raw::c_int,
pub unused_virtualModel: ::std::os::raw::c_int,
pub szanimblocknameindex: ::std::os::raw::c_int,
pub numanimblocks: ::std::os::raw::c_int,
pub animblockindex: ::std::os::raw::c_int,
pub unused_animblockModel: ::std::os::raw::c_int,
pub bonetablebynameindex: ::std::os::raw::c_int,
pub unused_pVertexBase: ::std::os::raw::c_int,
pub unused_pIndexBase: ::std::os::raw::c_int,
pub constdirectionallightdot: byte,
pub rootLOD: byte,
pub numAllowedRootLODs: byte,
pub unused: [byte; 1usize],
pub unused4: ::std::os::raw::c_int,
pub numflexcontrollerui: ::std::os::raw::c_int,
pub flexcontrolleruiindex: ::std::os::raw::c_int,
pub flVertAnimFixedPointScale: f32,
pub unused3: [::std::os::raw::c_int; 1usize],
pub studiohdr2index: ::std::os::raw::c_int,
pub unused2: [::std::os::raw::c_int; 1usize],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct studiohwdata_t {
pub m_RootLOD: ::std::os::raw::c_int,
pub m_NumLODs: ::std::os::raw::c_int,
pub m_pLODs: *mut studioloddata_t,
pub m_NumStudioMeshes: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct studioloddata_t {
pub m_pMeshData: *mut studiomeshdata_t,
pub m_SwitchPoint: f32,
pub numMaterials: ::std::os::raw::c_int,
pub ppMaterials: *mut *mut IMaterial,
pub pMaterialFlags: *mut ::std::os::raw::c_int,
pub m_pHWMorphDecalBoneRemap: *mut ::std::os::raw::c_int,
pub m_nDecalBoneCount: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct studiomeshdata_t {
pub m_NumGroup: ::std::os::raw::c_int,
pub m_pMeshGroup: *mut studiomeshgroup_t,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct studiomeshgroup_t {
pub m_pMesh: *mut IMesh,
pub m_NumStrips: ::std::os::raw::c_int,
pub m_Flags: ::std::os::raw::c_int,
pub m_pStripData: *mut OptimizedModel_StripHeader_t,
pub m_pGroupIndexToMeshIndex: *mut ::std::os::raw::c_ushort,
pub m_NumVertices: ::std::os::raw::c_int,
pub m_pUniqueTris: *mut ::std::os::raw::c_int,
pub m_pIndices: *mut ::std::os::raw::c_ushort,
pub m_MeshNeedsRestore: bool,
pub m_ColorMeshID: ::std::os::raw::c_short,
pub m_pMorph: *mut IMorph,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct thinModelVertices_t {
pub m_numBoneInfluences: ::std::os::raw::c_int,
pub m_boneWeights: *mut f32,
pub m_boneIndices: *mut ::std::os::raw::c_char,
pub m_vecPositions: *mut Vector,
pub m_vecNormals: *mut ::std::os::raw::c_ushort,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct vertexFileHeader_t {
pub id: ::std::os::raw::c_int,
pub version: ::std::os::raw::c_int,
pub checksum: ::std::os::raw::c_int,
pub numLODs: ::std::os::raw::c_int,
pub numLODVertexes: [::std::os::raw::c_int; 8usize],
pub numFixups: ::std::os::raw::c_int,
pub fixupTableStart: ::std::os::raw::c_int,
pub vertexDataStart: ::std::os::raw::c_int,
pub tangentDataStart: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct virtualgeneric_t {
pub group: ::std::os::raw::c_int,
pub index: ::std::os::raw::c_int,
}
#[repr(C)]
#[derive(Debug)]
pub struct virtualgroup_t {
pub cache: *mut ::std::os::raw::c_void,
pub boneMap: CUtlVector<::std::os::raw::c_int, CUtlMemory<::std::os::raw::c_int>>,
pub masterBone: CUtlVector<::std::os::raw::c_int, CUtlMemory<::std::os::raw::c_int>>,
pub masterSeq: CUtlVector<::std::os::raw::c_int, CUtlMemory<::std::os::raw::c_int>>,
pub masterAnim: CUtlVector<::std::os::raw::c_int, CUtlMemory<::std::os::raw::c_int>>,
pub masterAttachment: CUtlVector<
::std::os::raw::c_int,
CUtlMemory<::std::os::raw::c_int>,
>,
pub masterPose: CUtlVector<::std::os::raw::c_int, CUtlMemory<::std::os::raw::c_int>>,
pub masterNode: CUtlVector<::std::os::raw::c_int, CUtlMemory<::std::os::raw::c_int>>,
}
#[repr(C)]
#[derive(Debug)]
pub struct virtualmodel_t {
pub m_Lock: CThreadFastMutex,
pub m_seq: CUtlVector<virtualsequence_t, CUtlMemory<virtualsequence_t>>,
pub m_anim: CUtlVector<virtualgeneric_t, CUtlMemory<virtualgeneric_t>>,
pub m_attachment: CUtlVector<virtualgeneric_t, CUtlMemory<virtualgeneric_t>>,
pub m_pose: CUtlVector<virtualgeneric_t, CUtlMemory<virtualgeneric_t>>,
pub m_group: CUtlVector<virtualgroup_t, CUtlMemory<virtualgroup_t>>,
pub m_node: CUtlVector<virtualgeneric_t, CUtlMemory<virtualgeneric_t>>,
pub m_iklock: CUtlVector<virtualgeneric_t, CUtlMemory<virtualgeneric_t>>,
pub m_autoplaySequences: CUtlVector<
::std::os::raw::c_ushort,
CUtlMemory<::std::os::raw::c_ushort>,
>,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct virtualsequence_t {
pub flags: ::std::os::raw::c_int,
pub activity: ::std::os::raw::c_int,
pub group: ::std::os::raw::c_int,
pub index: ::std::os::raw::c_int,
}
include!("layout_assertions.rs");