[]Trait rendy::core::hal::Backend

pub trait Backend: 'static + Send + Sync + Eq + Clone + Any + Hash + Debug {
    type Instance: Instance<Self>;
    type PhysicalDevice: PhysicalDevice<Self>;
    type Device: Device<Self>;
    type Surface: PresentationSurface<Self>;
    type Swapchain: Swapchain<Self>;
    type QueueFamily: QueueFamily;
    type CommandQueue: CommandQueue<Self>;
    type CommandBuffer: CommandBuffer<Self>;
    type ShaderModule: Send + Sync + Any + Debug;
    type RenderPass: Send + Sync + Any + Debug;
    type Framebuffer: Send + Sync + Any + Debug;
    type Memory: Send + Sync + Any + Debug;
    type CommandPool: CommandPool<Self>;
    type Buffer: Send + Sync + Any + Debug;
    type BufferView: Send + Sync + Any + Debug;
    type Image: Send + Sync + Any + Debug;
    type ImageView: Send + Sync + Any + Debug;
    type Sampler: Send + Sync + Any + Debug;
    type ComputePipeline: Send + Sync + Any + Debug;
    type GraphicsPipeline: Send + Sync + Any + Debug;
    type PipelineCache: Send + Sync + Any + Debug;
    type PipelineLayout: Send + Sync + Any + Debug;
    type DescriptorPool: DescriptorPool<Self>;
    type DescriptorSet: Send + Sync + Any + Debug;
    type DescriptorSetLayout: Send + Sync + Any + Debug;
    type Fence: Send + Sync + Any + Debug;
    type Semaphore: Send + Sync + Any + Debug;
    type Event: Send + Sync + Any + Debug;
    type QueryPool: Send + Sync + Any + Debug;
}

The Backend trait wraps together all the types needed for a graphics backend. Each backend module, such as OpenGL or Metal, will implement this trait with its own concrete types.

Associated Types

Loading content...

Implementors

Loading content...