pub trait ICapeStreamImpl: ICapeStream {
type T: ICapeInterfaceImpl + ICapeStreamImpl;
const VTABLE: CAPEOPEN_1_2_ICapeStream_VTable = _;
// Required method
fn as_interface_pointer(&mut self) -> *mut ICapeInterface;
// Provided methods
fn init_interface() -> ICapeInterface { ... }
fn init<Timpl: ICapeStreamImpl + ICapeInterfaceImpl>(u: &mut Timpl) { ... }
extern "C" fn raw_stream_type(
me: *mut c_void,
stream_type: *mut CAPEOPEN_1_2_CapeStreamType,
) -> CapeResult { ... }
extern "C" fn raw_get_stream_object(
me: *mut c_void,
stream_object: *mut *mut ICapeInterface,
) -> CapeResult { ... }
extern "C" fn raw_get_upstream_port_connection(
me: *mut c_void,
upstream_port: *mut ICapeString,
upstream_unit: *mut ICapeString,
) -> CapeResult { ... }
extern "C" fn raw_get_downstream_port_connection(
me: *mut c_void,
downstream_port: *mut ICapeString,
downstream_unit: *mut ICapeString,
) -> CapeResult { ... }
}Provided Associated Constants§
const VTABLE: CAPEOPEN_1_2_ICapeStream_VTable = _
Required Associated Types§
type T: ICapeInterfaceImpl + ICapeStreamImpl
Required Methods§
fn as_interface_pointer(&mut self) -> *mut ICapeInterface
Provided Methods§
Sourcefn init_interface() -> ICapeInterface
fn init_interface() -> ICapeInterface
prepare CAPEOPEN_1_2_ICapeStream interface and return as generic ICapeInterface pointer
fn init<Timpl: ICapeStreamImpl + ICapeInterfaceImpl>(u: &mut Timpl)
extern "C" fn raw_stream_type( me: *mut c_void, stream_type: *mut CAPEOPEN_1_2_CapeStreamType, ) -> CapeResult
extern "C" fn raw_get_stream_object( me: *mut c_void, stream_object: *mut *mut ICapeInterface, ) -> CapeResult
extern "C" fn raw_get_upstream_port_connection( me: *mut c_void, upstream_port: *mut ICapeString, upstream_unit: *mut ICapeString, ) -> CapeResult
extern "C" fn raw_get_downstream_port_connection( me: *mut c_void, downstream_port: *mut ICapeString, downstream_unit: *mut ICapeString, ) -> 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.