Struct machinery_api::plugins::entity::EntityApi[][src]

#[repr(C)]
pub struct EntityApi {
Show 75 fields pub create_truth_types: Option<unsafe extern "C" fn(tt: *mut TheTruthO)>, pub create_context: Option<unsafe extern "C" fn(a: *mut AllocatorI, tt: *mut TheTruthO, create_components: EntityCreateComponents) -> *mut EntityContextO>, pub destroy_context: Option<unsafe extern "C" fn(ctx: *mut EntityContextO)>, pub register_component: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, com: *const ComponentI) -> ComponentTypeT>, pub num_components: Option<unsafe extern "C" fn(ctx: *mut EntityContextO) -> u32>, pub component: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component_type: ComponentTypeT) -> *const ComponentI>, pub register_engine: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, engine: *const EngineI)>, pub registered_engines: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, count: *mut u32) -> *mut EngineI>, pub register_system: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, system: *const EntitySystemI)>, pub registered_systems: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, count: *mut u32) -> *mut EntitySystemI>, pub create_child_allocator: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, name: *const c_char, a: *mut AllocatorI)>, pub destroy_child_allocator: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, a: *mut AllocatorI)>, pub the_truth: Option<unsafe extern "C" fn(ctx: *mut EntityContextO) -> *mut TheTruthO>, pub create_entity: Option<unsafe extern "C" fn(ctx: *mut EntityContextO) -> EntityT>, pub batch_create_entity: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, es: *mut EntityT, n: u32)>, pub create_entity_from_mask: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, mask: *const ComponentMaskT) -> EntityT>, pub batch_create_entity_from_mask: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, mask: *const ComponentMaskT, es: *mut EntityT, n: u32)>, pub create_entity_from_asset: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, asset: TtIdT) -> EntityT>, pub batch_create_entity_from_asset: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, asset: TtIdT, es: *mut EntityT, n: u32)>, pub destroy_entity: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT)>, pub batch_destroy_entity: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, es: *const EntityT, n: u32)>, pub destroy_all_entities: Option<unsafe extern "C" fn(ctx: *mut EntityContextO)>, pub queue_destroy_entities: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, es: *const EntityT, n: u32)>, pub is_alive: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT) -> bool>, pub num_entities: Option<unsafe extern "C" fn(ctx: *mut EntityContextO) -> u32>, pub entities_matching: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, required: *const ComponentMaskT, ta: *mut TempAllocatorI) -> *mut EntitySetT>, pub entities_matching_with_forbidden: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, required: *const ComponentMaskT, forbidden: *const ComponentMaskT, ta: *mut TempAllocatorI) -> *mut EntitySetT>, pub flatten_set: Option<unsafe extern "C" fn(entities: *mut EntityT, set: *const EntitySetT)>, pub lookup_component_type: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, name_hash: StrhashT) -> ComponentTypeT>, pub component_manager: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component_type: ComponentTypeT) -> *mut ComponentManagerO>, pub component_manager_by_hash: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, name_hash: StrhashT) -> *mut ComponentManagerO>, pub create_component_mask: Option<unsafe extern "C" fn(components: *const ComponentTypeT, n: u32) -> ComponentMaskT>, pub component_mask: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT) -> *const ComponentMaskT>, pub add_component: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, component: ComponentTypeT) -> *mut c_void>, pub get_component: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, component: ComponentTypeT) -> *mut c_void>, pub get_component_by_hash: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, name_hash: StrhashT) -> *mut c_void>, pub remove_component: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, component: ComponentTypeT)>, pub call_remove_on_all_entities: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component: ComponentTypeT)>, pub get_engine: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, hash: StrhashT) -> *mut EngineI>, pub get_system: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, hash: StrhashT) -> *mut EntitySystemI>, pub parent: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT) -> EntityT>, pub children: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, ta: *mut TempAllocatorI) -> *mut EntityT>, pub asset: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT) -> TtIdT>, pub find_entity_from_asset: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, asset: TtIdT) -> EntityT>, pub resolve_asset_reference: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, asset: TtIdT) -> EntityT>, pub resolve_path: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, path: *const c_char) -> EntityT>, pub propagate_asset_changes: Option<unsafe extern "C" fn(ctx: *mut EntityContextO)>, pub propagate_listen_to: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, object: TtIdT)>, pub set_blackboard_double: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, id: StrhashT, value: f64)>, pub set_blackboard_ptr: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, id: StrhashT, value: *mut c_void)>, pub has_blackboard: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, id: StrhashT) -> bool>, pub get_blackboard_double: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, id: StrhashT, def: f64) -> f64>, pub get_blackboard_ptr: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, id: StrhashT) -> *mut c_void>, pub run_engine: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, engine: *const EngineI)>, pub update: Option<unsafe extern "C" fn(ctx: *mut EntityContextO)>, pub listen: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, c: ComponentTypeT, listener: *const EntityListenerI)>, pub unlisten: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, c: ComponentTypeT, listener: *const EntityListenerI)>, pub notify: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component_type: ComponentTypeT, entities: *const EntityT, num_entities: u32)>, pub listen_event: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, event: StrhashT, listener: *const EntityEventListenerI)>, pub unlisten_event: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, event: StrhashT, listener: *const EntityEventListenerI)>, pub unlisten_all: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, instance: *mut c_void)>, pub notify_event: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, event: StrhashT, e: *mut EntityT, entity_stride: u32, data: *mut c_void, data_stride: u32, n: u32)>, pub hot_reload: Option<unsafe extern "C" fn()>, pub set_debug_draw: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component_type: ComponentTypeT, tag: StrhashT, debug_draw: bool)>, pub get_all_debug_draws: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component_types: *mut *mut ComponentTypeT, tags: *mut *mut StrhashT, ta: *mut TempAllocatorI)>, pub has_debug_draw: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component_type: ComponentTypeT, tag: StrhashT) -> bool>, pub clear_debug_draw: Option<unsafe extern "C" fn(ctx: *mut EntityContextO)>, pub debug_draw: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, pbuf: *mut PrimitiveDrawerBufferT, vbuf: *mut PrimitiveDrawerBufferT, allocator: *mut AllocatorI, camera: *const CameraT, viewport: RectT)>, pub gamestate: Option<unsafe extern "C" fn(ctx: *mut EntityContextO) -> *mut GamestateO>, pub override_component_persistence: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, c: ComponentTypeT, persistence: *mut ComponentPersistenceI)>, pub propagate_changes_to_gamestate: Option<unsafe extern "C" fn(ctx: *mut EntityContextO)>, pub make_entity_persistent: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT)>, pub get_entity_gamestate_id: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, output: *mut GamestateObjectIdT) -> bool>, pub get_component_gamestate_id: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, c: ComponentTypeT, output: *mut GamestateStructIdT) -> bool>, pub lookup_entity_from_gamestate_id: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, id: *const GamestateObjectIdT) -> EntityT>,
}

Fields

create_truth_types: Option<unsafe extern "C" fn(tt: *mut TheTruthO)>create_context: Option<unsafe extern "C" fn(a: *mut AllocatorI, tt: *mut TheTruthO, create_components: EntityCreateComponents) -> *mut EntityContextO>destroy_context: Option<unsafe extern "C" fn(ctx: *mut EntityContextO)>register_component: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, com: *const ComponentI) -> ComponentTypeT>num_components: Option<unsafe extern "C" fn(ctx: *mut EntityContextO) -> u32>component: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component_type: ComponentTypeT) -> *const ComponentI>register_engine: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, engine: *const EngineI)>registered_engines: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, count: *mut u32) -> *mut EngineI>register_system: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, system: *const EntitySystemI)>registered_systems: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, count: *mut u32) -> *mut EntitySystemI>create_child_allocator: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, name: *const c_char, a: *mut AllocatorI)>destroy_child_allocator: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, a: *mut AllocatorI)>the_truth: Option<unsafe extern "C" fn(ctx: *mut EntityContextO) -> *mut TheTruthO>create_entity: Option<unsafe extern "C" fn(ctx: *mut EntityContextO) -> EntityT>batch_create_entity: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, es: *mut EntityT, n: u32)>create_entity_from_mask: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, mask: *const ComponentMaskT) -> EntityT>batch_create_entity_from_mask: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, mask: *const ComponentMaskT, es: *mut EntityT, n: u32)>create_entity_from_asset: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, asset: TtIdT) -> EntityT>batch_create_entity_from_asset: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, asset: TtIdT, es: *mut EntityT, n: u32)>destroy_entity: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT)>batch_destroy_entity: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, es: *const EntityT, n: u32)>destroy_all_entities: Option<unsafe extern "C" fn(ctx: *mut EntityContextO)>queue_destroy_entities: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, es: *const EntityT, n: u32)>is_alive: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT) -> bool>num_entities: Option<unsafe extern "C" fn(ctx: *mut EntityContextO) -> u32>entities_matching: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, required: *const ComponentMaskT, ta: *mut TempAllocatorI) -> *mut EntitySetT>entities_matching_with_forbidden: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, required: *const ComponentMaskT, forbidden: *const ComponentMaskT, ta: *mut TempAllocatorI) -> *mut EntitySetT>flatten_set: Option<unsafe extern "C" fn(entities: *mut EntityT, set: *const EntitySetT)>lookup_component_type: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, name_hash: StrhashT) -> ComponentTypeT>component_manager: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component_type: ComponentTypeT) -> *mut ComponentManagerO>component_manager_by_hash: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, name_hash: StrhashT) -> *mut ComponentManagerO>create_component_mask: Option<unsafe extern "C" fn(components: *const ComponentTypeT, n: u32) -> ComponentMaskT>component_mask: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT) -> *const ComponentMaskT>add_component: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, component: ComponentTypeT) -> *mut c_void>get_component: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, component: ComponentTypeT) -> *mut c_void>get_component_by_hash: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, name_hash: StrhashT) -> *mut c_void>remove_component: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, component: ComponentTypeT)>call_remove_on_all_entities: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component: ComponentTypeT)>get_engine: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, hash: StrhashT) -> *mut EngineI>get_system: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, hash: StrhashT) -> *mut EntitySystemI>parent: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT) -> EntityT>children: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, ta: *mut TempAllocatorI) -> *mut EntityT>asset: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT) -> TtIdT>find_entity_from_asset: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, asset: TtIdT) -> EntityT>resolve_asset_reference: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, asset: TtIdT) -> EntityT>resolve_path: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, path: *const c_char) -> EntityT>propagate_asset_changes: Option<unsafe extern "C" fn(ctx: *mut EntityContextO)>propagate_listen_to: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, object: TtIdT)>set_blackboard_double: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, id: StrhashT, value: f64)>set_blackboard_ptr: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, id: StrhashT, value: *mut c_void)>has_blackboard: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, id: StrhashT) -> bool>get_blackboard_double: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, id: StrhashT, def: f64) -> f64>get_blackboard_ptr: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, id: StrhashT) -> *mut c_void>run_engine: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, engine: *const EngineI)>update: Option<unsafe extern "C" fn(ctx: *mut EntityContextO)>listen: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, c: ComponentTypeT, listener: *const EntityListenerI)>unlisten: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, c: ComponentTypeT, listener: *const EntityListenerI)>notify: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component_type: ComponentTypeT, entities: *const EntityT, num_entities: u32)>listen_event: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, event: StrhashT, listener: *const EntityEventListenerI)>unlisten_event: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, event: StrhashT, listener: *const EntityEventListenerI)>unlisten_all: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, instance: *mut c_void)>notify_event: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, event: StrhashT, e: *mut EntityT, entity_stride: u32, data: *mut c_void, data_stride: u32, n: u32)>hot_reload: Option<unsafe extern "C" fn()>set_debug_draw: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component_type: ComponentTypeT, tag: StrhashT, debug_draw: bool)>get_all_debug_draws: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component_types: *mut *mut ComponentTypeT, tags: *mut *mut StrhashT, ta: *mut TempAllocatorI)>has_debug_draw: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, component_type: ComponentTypeT, tag: StrhashT) -> bool>clear_debug_draw: Option<unsafe extern "C" fn(ctx: *mut EntityContextO)>debug_draw: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, pbuf: *mut PrimitiveDrawerBufferT, vbuf: *mut PrimitiveDrawerBufferT, allocator: *mut AllocatorI, camera: *const CameraT, viewport: RectT)>gamestate: Option<unsafe extern "C" fn(ctx: *mut EntityContextO) -> *mut GamestateO>override_component_persistence: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, c: ComponentTypeT, persistence: *mut ComponentPersistenceI)>propagate_changes_to_gamestate: Option<unsafe extern "C" fn(ctx: *mut EntityContextO)>make_entity_persistent: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT)>get_entity_gamestate_id: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, output: *mut GamestateObjectIdT) -> bool>get_component_gamestate_id: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, e: EntityT, c: ComponentTypeT, output: *mut GamestateStructIdT) -> bool>lookup_entity_from_gamestate_id: Option<unsafe extern "C" fn(ctx: *mut EntityContextO, id: *const GamestateObjectIdT) -> EntityT>

Implementations

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Returns the “default value” for a type. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.