#[repr(C)]pub struct hkMemoryAllocatorVtbl {
pub CxxDrop: unsafe extern "C" fn(this: *mut hkMemoryAllocator),
pub BlockAlloc: extern "C" fn(this: *mut hkMemoryAllocator, num_bytes: i32) -> *mut u8,
pub BlockFree: extern "C" fn(this: *mut hkMemoryAllocator, ptr: *mut u8, num_bytes: i32),
pub BufAlloc: extern "C" fn(this: *mut hkMemoryAllocator, req_num_bytes_in_out: &mut i32) -> *mut u8,
pub BufFree: extern "C" fn(this: *mut hkMemoryAllocator, ptr: *mut u8, num_bytes: i32),
pub BufRealloc: extern "C" fn(this: *mut hkMemoryAllocator, old_ptr: *mut u8, old_num_bytes: i32, req_num_bytes_in_out: &mut i32) -> *mut u8,
pub BlockAllocBatch: extern "C" fn(this: *mut hkMemoryAllocator, ptrs_out: *mut *mut u8, num_ptrs: i32, block_size: i32),
pub BlockFreeBatch: extern "C" fn(this: *mut hkMemoryAllocator, ptrs_in: *mut *mut u8, num_ptrs: i32, block_size: i32),
pub GetMemoryStatistics: extern "C" fn(this: *mut hkMemoryAllocator, usage: &mut MemoryStatistics),
pub GetAllocatedSize: extern "C" fn(this: *mut hkMemoryAllocator, obj: *const c_void, num_bytes: i32) -> i32,
pub ResetPeakMemoryStatistics: extern "C" fn(this: *mut hkMemoryAllocator),
}
Expand description
NOTE: Unlike the C++ implementation, *mut u8
instead of *mut c_void
for allocated memory blocks
Fields§
§CxxDrop: unsafe extern "C" fn(this: *mut hkMemoryAllocator)
§BlockAlloc: extern "C" fn(this: *mut hkMemoryAllocator, num_bytes: i32) -> *mut u8
§BlockFree: extern "C" fn(this: *mut hkMemoryAllocator, ptr: *mut u8, num_bytes: i32)
§BufAlloc: extern "C" fn(this: *mut hkMemoryAllocator, req_num_bytes_in_out: &mut i32) -> *mut u8
§BufFree: extern "C" fn(this: *mut hkMemoryAllocator, ptr: *mut u8, num_bytes: i32)
§BufRealloc: extern "C" fn(this: *mut hkMemoryAllocator, old_ptr: *mut u8, old_num_bytes: i32, req_num_bytes_in_out: &mut i32) -> *mut u8
§BlockAllocBatch: extern "C" fn(this: *mut hkMemoryAllocator, ptrs_out: *mut *mut u8, num_ptrs: i32, block_size: i32)
§BlockFreeBatch: extern "C" fn(this: *mut hkMemoryAllocator, ptrs_in: *mut *mut u8, num_ptrs: i32, block_size: i32)
§GetMemoryStatistics: extern "C" fn(this: *mut hkMemoryAllocator, usage: &mut MemoryStatistics)
§GetAllocatedSize: extern "C" fn(this: *mut hkMemoryAllocator, obj: *const c_void, num_bytes: i32) -> i32
§ResetPeakMemoryStatistics: extern "C" fn(this: *mut hkMemoryAllocator)
Auto Trait Implementations§
impl Freeze for hkMemoryAllocatorVtbl
impl RefUnwindSafe for hkMemoryAllocatorVtbl
impl Send for hkMemoryAllocatorVtbl
impl Sync for hkMemoryAllocatorVtbl
impl Unpin for hkMemoryAllocatorVtbl
impl UnwindSafe for hkMemoryAllocatorVtbl
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