[][src]Trait rendy_core::hal::Backend

pub trait Backend: 'static + Clone + Eq + Send + Sync + Any + Debug + Hash {
    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

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

Loading content...

Implementors

Loading content...