pub trait ICapeMaterialManagerImpl: ICapeMaterialManager {
type T: ICapeInterfaceImpl + ICapeMaterialManagerImpl;
const VTABLE: CAPEOPEN_1_2_ICapeMaterialManager_VTable = _;
// Required method
fn as_interface_pointer(&mut self) -> *mut ICapeInterface;
// Provided methods
fn init_interface() -> ICapeInterface { ... }
fn init<Timpl: ICapeMaterialManagerImpl + ICapeInterfaceImpl>(u: &mut Timpl) { ... }
extern "C" fn raw_get_material_list(
me: *mut c_void,
material_name_list: *mut ICapeArrayString,
) -> CapeResult { ... }
extern "C" fn raw_create_material(
me: *mut c_void,
material_name: *mut ICapeString,
material: *mut *mut ICapeInterface,
) -> CapeResult { ... }
}Provided Associated Constants§
Required Associated Types§
Required Methods§
fn as_interface_pointer(&mut self) -> *mut ICapeInterface
Provided Methods§
Sourcefn init_interface() -> ICapeInterface
fn init_interface() -> ICapeInterface
prepare CAPEOPEN_1_2_ICapeMaterialManager interface and return as generic ICapeInterface pointer
fn init<Timpl: ICapeMaterialManagerImpl + ICapeInterfaceImpl>(u: &mut Timpl)
extern "C" fn raw_get_material_list( me: *mut c_void, material_name_list: *mut ICapeArrayString, ) -> CapeResult
extern "C" fn raw_create_material( me: *mut c_void, material_name: *mut ICapeString, material: *mut *mut ICapeInterface, ) -> CapeResult
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.