Struct gfx::device::handle::Manager
[−]
[src]
pub struct Manager<R: Resources> { // some fields omitted }
Stores reference-counted resources used in a command buffer. Seals actual resource names behind the interface, automatically referencing them both by the Factory on resource creation and the Renderer during CommandBuffer population.
Methods
impl<R: Resources> Manager<R>
[src]
fn new() -> Manager<R>
Create a new handle manager
fn clear(&mut self)
Clear all references
fn extend(&mut self, other: &Manager<R>)
Extend with all references of another handle manager
fn count(&self) -> usize
Count the total number of referenced resources
fn ref_buffer(&mut self, handle: &RawBuffer<R>) -> R::Buffer
Reference a buffer
fn ref_array_buffer(&mut self, handle: &ArrayBuffer<R>) -> R::ArrayBuffer
Reference am array buffer
fn ref_shader(&mut self, handle: &Shader<R>) -> R::Shader
Reference a shader
fn ref_program(&mut self, handle: &Program<R>) -> R::Program
Reference a program
fn ref_frame_buffer(&mut self, handle: &FrameBuffer<R>) -> R::FrameBuffer
Reference a frame buffer
fn ref_surface(&mut self, handle: &Surface<R>) -> R::Surface
Reference a surface
fn ref_texture(&mut self, handle: &Texture<R>) -> R::Texture
Reference a texture
fn ref_sampler(&mut self, handle: &Sampler<R>) -> R::Sampler
Reference a sampler
fn ref_fence(&mut self, fence: &Fence<R>) -> R::Fence
Reference a fence
Trait Implementations
impl<R: Resources> Producer<R> for Manager<R>
[src]
fn make_buffer(&mut self, name: R::Buffer, info: BufferInfo) -> RawBuffer<R>
fn make_array_buffer(&mut self, name: R::ArrayBuffer) -> ArrayBuffer<R>
fn make_shader(&mut self, name: R::Shader, info: Stage) -> Shader<R>
fn make_program(&mut self, name: R::Program, info: ProgramInfo) -> Program<R>
fn make_frame_buffer(&mut self, name: R::FrameBuffer) -> FrameBuffer<R>
fn make_surface(&mut self, name: R::Surface, info: SurfaceInfo) -> Surface<R>
fn make_texture(&mut self, name: R::Texture, info: TextureInfo) -> Texture<R>
fn make_sampler(&mut self, name: R::Sampler, info: SamplerInfo) -> Sampler<R>
fn make_fence(&mut self, name: R::Fence) -> Fence<R>
fn clean_with<T, F1: Fn(&mut T, &R::Buffer), F2: Fn(&mut T, &R::ArrayBuffer), F3: Fn(&mut T, &R::Shader), F4: Fn(&mut T, &R::Program), F5: Fn(&mut T, &R::FrameBuffer), F6: Fn(&mut T, &R::Surface), F7: Fn(&mut T, &R::Texture), F8: Fn(&mut T, &R::Sampler), F9: Fn(&mut T, &R::Fence)>(&mut self, param: &mut T, f1: F1, f2: F2, f3: F3, f4: F4, f5: F5, f6: F6, f7: F7, f8: F8, f9: F9)
Walk through all the handles, keep ones that are reference elsewhere and call the provided delete function (resource-specific) for others Read more