#[repr(C)]pub struct LeviRsApi {
pub abi_version: u32,
pub struct_size: u32,
pub log: unsafe extern "C" fn(mod_: LeviRsModHandle, level: i32, msg: LeviRsStr),
pub gaming_status: unsafe extern "C" fn() -> i32,
pub schedule: unsafe extern "C" fn(cb: LeviRsTaskCb, user: *mut c_void),
pub schedule_after: unsafe extern "C" fn(cb: LeviRsTaskCb, user: *mut c_void, delay_ms: u64),
pub subscribe_event: unsafe extern "C" fn(mod_: LeviRsModHandle, event_id: LeviRsStr, priority: i32, cb: LeviRsEventCb, user: *mut c_void) -> LeviRsListenerHandle,
pub unsubscribe_event: unsafe extern "C" fn(mod_: LeviRsModHandle, listener: LeviRsListenerHandle) -> bool,
pub list_events: unsafe extern "C" fn(ctx: *mut c_void, sink: LeviRsStrSink),
pub execute_command: unsafe extern "C" fn(cmd: LeviRsStr, ctx: *mut c_void, sink: LeviRsCmdOutputSink) -> bool,
pub register_command: unsafe extern "C" fn(mod_: LeviRsModHandle, name: LeviRsStr, description: LeviRsStr, permission: i32, cb: LeviRsCommandCb, user: *mut c_void) -> bool,
}Expand description
Function table handed to the Rust mod. Mirrors LeviRsApi.
Fields§
§abi_version: u32§struct_size: u32§log: unsafe extern "C" fn(mod_: LeviRsModHandle, level: i32, msg: LeviRsStr)level: -1=Off, 0=Fatal, 1=Error, 2=Warn, 3=Info, 4=Debug, 5=Trace. Thread-safe.
gaming_status: unsafe extern "C" fn() -> i320=Default, 1=Starting, 2=Running, 3=Stopping. Thread-safe.
schedule: unsafe extern "C" fn(cb: LeviRsTaskCb, user: *mut c_void)Queue onto the server thread ASAP. Thread-safe.
schedule_after: unsafe extern "C" fn(cb: LeviRsTaskCb, user: *mut c_void, delay_ms: u64)Queue onto the server thread after delay_ms. Thread-safe.
subscribe_event: unsafe extern "C" fn(mod_: LeviRsModHandle, event_id: LeviRsStr, priority: i32, cb: LeviRsEventCb, user: *mut c_void) -> LeviRsListenerHandleServer thread only. priority 0..4 (Highest..Lowest), 2 = Normal.
unsubscribe_event: unsafe extern "C" fn(mod_: LeviRsModHandle, listener: LeviRsListenerHandle) -> boolServer thread only.
list_events: unsafe extern "C" fn(ctx: *mut c_void, sink: LeviRsStrSink)Server thread only.
execute_command: unsafe extern "C" fn(cmd: LeviRsStr, ctx: *mut c_void, sink: LeviRsCmdOutputSink) -> boolServer thread only. Executes as console (Owner).
register_command: unsafe extern "C" fn(mod_: LeviRsModHandle, name: LeviRsStr, description: LeviRsStr, permission: i32, cb: LeviRsCommandCb, user: *mut c_void) -> boolServer thread only, call during on_enable. permission 0..4.
Auto Trait Implementations§
impl Freeze for LeviRsApi
impl RefUnwindSafe for LeviRsApi
impl Send for LeviRsApi
impl Sync for LeviRsApi
impl Unpin for LeviRsApi
impl UnsafeUnpin for LeviRsApi
impl UnwindSafe for LeviRsApi
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more