Trait gfx::device::handle::Producer [] [src]

pub trait Producer<R: Resources> {
    fn make_buffer(&mut self, R, BufferInfo) -> RawBuffer<R>;
    fn make_array_buffer(&mut self, R) -> ArrayBuffer<R>;
    fn make_shader(&mut self, R, Stage) -> Shader<R>;
    fn make_program(&mut self, R, ProgramInfo) -> Program<R>;
    fn make_frame_buffer(&mut self, R) -> FrameBuffer<R>;
    fn make_surface(&mut self, R, SurfaceInfo) -> Surface<R>;
    fn make_texture(&mut self, R, TextureInfo) -> Texture<R>;
    fn make_sampler(&mut self, R, SamplerInfo) -> Sampler<R>;
    fn clean_with<T, F1: Fn(&mut T, &R), F2: Fn(&mut T, &R), F3: Fn(&mut T, &R), F4: Fn(&mut T, &R), F5: Fn(&mut T, &R), F6: Fn(&mut T, &R), F7: Fn(&mut T, &R), F8: Fn(&mut T, &R)>(&mut self, &mut T, F1, F2, F3, F4, F5, F6, F7, F8);
}

A service trait to be used by the device implementation

Required Methods

fn make_buffer(&mut self, R, BufferInfo) -> RawBuffer<R>

fn make_array_buffer(&mut self, R) -> ArrayBuffer<R>

fn make_shader(&mut self, R, Stage) -> Shader<R>

fn make_program(&mut self, R, ProgramInfo) -> Program<R>

fn make_frame_buffer(&mut self, R) -> FrameBuffer<R>

fn make_surface(&mut self, R, SurfaceInfo) -> Surface<R>

fn make_texture(&mut self, R, TextureInfo) -> Texture<R>

fn make_sampler(&mut self, R, SamplerInfo) -> Sampler<R>

fn clean_with<T, F1: Fn(&mut T, &R), F2: Fn(&mut T, &R), F3: Fn(&mut T, &R), F4: Fn(&mut T, &R), F5: Fn(&mut T, &R), F6: Fn(&mut T, &R), F7: Fn(&mut T, &R), F8: Fn(&mut T, &R)>(&mut self, &mut T, F1, F2, F3, F4, F5, F6, F7, F8)

Walk through all the handles, keep ones that are reference elsewhere and call the provided delete function (resource-specific) for others

Implementors