source_sdk_2013_sys 0.1.0-alpha.2

Low-level bindings for the Source SDK.
// @generated by `source_sdk_2013_bindgen`. DO NOT EDIT.
// Regenerate with the `source_sdk_2013_bindgen/generate_bindings` Cargo feature.

#![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 IterationRetval_t = ::std::os::raw::c_uint;
pub type SpatialPartitionHandle_t = ::std::os::raw::c_ushort;
pub type SpatialPartitionListMask_t = ::std::os::raw::c_int;
pub type SpatialTempHandle_t = ::std::os::raw::c_int;
pub const IterationRetval_t_ITERATION_CONTINUE: IterationRetval_t = 0;
pub const IterationRetval_t_ITERATION_STOP: IterationRetval_t = 1;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct IPartitionEnumerator {
    pub vtable_: *const IPartitionEnumerator__bindgen_vtable,
}
#[repr(C)]
pub struct IPartitionEnumerator__bindgen_vtable {
    pub IPartitionEnumerator_EnumElement: unsafe extern "C" fn(
        arg1: *mut IPartitionEnumerator,
        arg2: *mut IHandleEntity,
    ) -> IterationRetval_t,
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct IPartitionQueryCallback {
    pub vtable_: *const IPartitionQueryCallback__bindgen_vtable,
}
#[repr(C)]
pub struct IPartitionQueryCallback__bindgen_vtable {
    pub IPartitionQueryCallback_OnPreQuery_V1: unsafe extern "C" fn(
        arg1: *mut IPartitionQueryCallback,
    ),
    pub IPartitionQueryCallback_OnPreQuery: unsafe extern "C" fn(
        arg1: *mut IPartitionQueryCallback,
        arg2: SpatialPartitionListMask_t,
    ),
    pub IPartitionQueryCallback_OnPostQuery: unsafe extern "C" fn(
        arg1: *mut IPartitionQueryCallback,
        arg2: SpatialPartitionListMask_t,
    ),
}
#[repr(C)]
#[derive(Debug)]
pub struct ISpatialPartition {
    pub vtable_: *const ISpatialPartition__bindgen_vtable,
}
#[repr(C)]
pub struct ISpatialPartition__bindgen_vtable {
    pub ISpatialPartition_complete_destructor: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
    ),
    pub ISpatialPartition_deleting_destructor: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
    ),
    pub ISpatialPartition_CreateHandle: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: *mut IHandleEntity,
    ) -> SpatialPartitionHandle_t,
    pub ISpatialPartition_CreateHandle1: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: *mut IHandleEntity,
        arg3: SpatialPartitionListMask_t,
        arg4: *const Vector,
        arg5: *const Vector,
    ) -> SpatialPartitionHandle_t,
    pub ISpatialPartition_DestroyHandle: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionHandle_t,
    ),
    pub ISpatialPartition_Insert: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionListMask_t,
        arg3: SpatialPartitionHandle_t,
    ),
    pub ISpatialPartition_Remove: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionListMask_t,
        arg3: SpatialPartitionHandle_t,
    ),
    pub ISpatialPartition_RemoveAndInsert: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionListMask_t,
        arg3: SpatialPartitionListMask_t,
        arg4: SpatialPartitionHandle_t,
    ),
    pub ISpatialPartition_Remove1: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionHandle_t,
    ),
    pub ISpatialPartition_ElementMoved: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionHandle_t,
        arg3: *const Vector,
        arg4: *const Vector,
    ),
    pub ISpatialPartition_HideElement: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionHandle_t,
    ) -> SpatialTempHandle_t,
    pub ISpatialPartition_UnhideElement: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionHandle_t,
        arg3: SpatialTempHandle_t,
    ),
    pub ISpatialPartition_InstallQueryCallback_V1: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: *mut IPartitionQueryCallback,
    ),
    pub ISpatialPartition_RemoveQueryCallback: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: *mut IPartitionQueryCallback,
    ),
    pub ISpatialPartition_EnumerateElementsInBox: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionListMask_t,
        arg3: *const Vector,
        arg4: *const Vector,
        arg5: bool,
        arg6: *mut IPartitionEnumerator,
    ),
    pub ISpatialPartition_EnumerateElementsInSphere: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionListMask_t,
        arg3: *const Vector,
        arg4: f32,
        arg5: bool,
        arg6: *mut IPartitionEnumerator,
    ),
    pub ISpatialPartition_EnumerateElementsAlongRay: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionListMask_t,
        arg3: *const Ray_t,
        arg4: bool,
        arg5: *mut IPartitionEnumerator,
    ),
    pub ISpatialPartition_EnumerateElementsAtPoint: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionListMask_t,
        arg3: *const Vector,
        arg4: bool,
        arg5: *mut IPartitionEnumerator,
    ),
    pub ISpatialPartition_SuppressLists: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: SpatialPartitionListMask_t,
        arg3: bool,
    ),
    pub ISpatialPartition_GetSuppressedLists: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
    ) -> SpatialPartitionListMask_t,
    pub ISpatialPartition_RenderAllObjectsInTree: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: f32,
    ),
    pub ISpatialPartition_RenderObjectsInPlayerLeafs: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: *const Vector,
        arg3: *const Vector,
        arg4: f32,
    ),
    pub ISpatialPartition_RenderLeafsForRayTraceStart: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: f32,
    ),
    pub ISpatialPartition_RenderLeafsForRayTraceEnd: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
    ),
    pub ISpatialPartition_RenderLeafsForHullTraceStart: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: f32,
    ),
    pub ISpatialPartition_RenderLeafsForHullTraceEnd: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
    ),
    pub ISpatialPartition_RenderLeafsForBoxStart: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: f32,
    ),
    pub ISpatialPartition_RenderLeafsForBoxEnd: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
    ),
    pub ISpatialPartition_RenderLeafsForSphereStart: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: f32,
    ),
    pub ISpatialPartition_RenderLeafsForSphereEnd: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
    ),
    pub ISpatialPartition_RenderObjectsInBox: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: *const Vector,
        arg3: *const Vector,
        arg4: f32,
    ),
    pub ISpatialPartition_RenderObjectsInSphere: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: *const Vector,
        arg3: f32,
        arg4: f32,
    ),
    pub ISpatialPartition_RenderObjectsAlongRay: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: *const Ray_t,
        arg3: f32,
    ),
    pub ISpatialPartition_ReportStats: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: *const ::std::os::raw::c_char,
    ),
    pub ISpatialPartition_InstallQueryCallback: unsafe extern "C" fn(
        arg1: *mut ISpatialPartition,
        arg2: *mut IPartitionQueryCallback,
    ),
}
include!("layout_assertions.rs");