1use crate::{
4    pso::{BasePipeline, EntryPoint, PipelineCreationFlags},
5    Backend,
6};
7
8#[derive(Debug)]
10pub struct ComputePipelineDesc<'a, B: Backend> {
11    pub label: Option<&'a str>,
13    pub shader: EntryPoint<'a, B>,
15    pub layout: &'a B::PipelineLayout,
17    pub flags: PipelineCreationFlags,
19    pub parent: BasePipeline<'a, B::ComputePipeline>,
21}
22
23impl<'a, B: Backend> ComputePipelineDesc<'a, B> {
24    pub fn new(shader: EntryPoint<'a, B>, layout: &'a B::PipelineLayout) -> Self {
26        ComputePipelineDesc {
27            label: None,
28            shader,
29            layout,
30            flags: PipelineCreationFlags::empty(),
31            parent: BasePipeline::None,
32        }
33    }
34}