Trait coaster::framework::IFramework
source · pub trait IFramework {
type H: IHardware;
type D: IDevice + Clone;
type B: IBinary + Clone;
// Required methods
fn ID() -> &'static str;
fn new() -> Self
where Self: Sized;
fn load_hardwares() -> Result<Vec<Self::H>, Error>;
fn hardwares(&self) -> &[Self::H];
fn binary(&self) -> &Self::B;
fn new_device(&self, _: &[Self::H]) -> Result<Self::D, Error>;
}
Expand description
Defines a Framework.
Required Associated Types§
Required Methods§
sourcefn ID() -> &'static str
fn ID() -> &'static str
Defines the Framework by a Name.
For convention, let the ID be uppercase.
EXAMPLE: OPENCL
Object Safety§
This trait is not object safe.