pub type AllocateDeviceMemoryFunction = Option<unsafe extern "C" fn(allocator: Allocator, memory_type: u32, memory: DeviceMemory, size: DeviceSize, user_data: *mut c_void)>;