Cogs.Core
Public Member Functions | Public Attributes | List of all members
Cogs::PipelineStatesWebGPU Struct Reference
Inheritance diagram for Cogs::PipelineStatesWebGPU:
Cogs::IPipelineStates

Public Member Functions

void initialize (GraphicsDeviceWebGPU *device)
 
size_t renderPipelineHash (EffectHandle effect, InputLayoutHandle inputLayoutHandle, PrimitiveType primitiveType, RasterizerStateHandle rasterizeStateHandle, DepthStencilStateHandle depthStencilStateHandle, BlendStateHandle blendStateHandle, RenderTargetHandle renderTargetHandle, DepthStencilHandle depthStencilHandle)
 
RenderPipelineHandle loadRenderPipeline (EffectHandle effect, InputLayoutHandle inputLayoutHandle, PrimitiveType primitiveType, RasterizerStateHandle rasterizeStateHandle, DepthStencilStateHandle depthStencilStateHandle, BlendStateHandle blendStateHandle, RenderTargetHandle renderTargetHandle, DepthStencilHandle depthStencilHandle)
 
ComputePipelineHandle loadComputePipeline (EffectHandle effect)
 
virtual void releaseRenderPipeline (RenderPipelineHandle) override
 
virtual void releaseComputePipeline (ComputePipelineHandle) override
 
virtual void releaseResources () override
 
virtual void releaseRenderPipeline (RenderPipelineHandle psoHandle)=0
 
virtual void releaseComputePipeline (ComputePipelineHandle psoHandle)=0
 
virtual void releaseResources ()=0
 

Public Attributes

GraphicsDeviceWebGPUgraphics_device = nullptr
 
std::unordered_map< size_t, RenderPipelineHandlerenderPipelineHashMap
 
SafeResourceMap< RenderPipelineHandle, RenderPipelineWebGPUrenderPipeline
 
std::unordered_map< size_t, ComputePipelineHandlecomputePipelineHashMap
 
SafeResourceMap< ComputePipelineHandle, ComputePipelineWebGPUcomputePipeline
 

Detailed Description

Definition at line 37 of file PipelineStatesWebGPU.h.

Member Function Documentation

◆ initialize()

void Cogs::PipelineStatesWebGPU::initialize ( GraphicsDeviceWebGPU device)

Definition at line 61 of file PipelineStatesWebGPU.cpp.

◆ loadComputePipeline()

ComputePipelineHandle Cogs::PipelineStatesWebGPU::loadComputePipeline ( EffectHandle  effect)

Definition at line 366 of file PipelineStatesWebGPU.cpp.

◆ loadRenderPipeline()

RenderPipelineHandle Cogs::PipelineStatesWebGPU::loadRenderPipeline ( EffectHandle  effect,
InputLayoutHandle  inputLayoutHandle,
PrimitiveType  primitiveType,
RasterizerStateHandle  rasterizeStateHandle,
DepthStencilStateHandle  depthStencilStateHandle,
BlendStateHandle  blendStateHandle,
RenderTargetHandle  renderTargetHandle,
DepthStencilHandle  depthStencilHandle 
)

Definition at line 102 of file PipelineStatesWebGPU.cpp.

◆ releaseComputePipeline()

virtual void Cogs::PipelineStatesWebGPU::releaseComputePipeline ( ComputePipelineHandle  )
inlineoverridevirtual

Implements Cogs::IPipelineStates.

Definition at line 60 of file PipelineStatesWebGPU.h.

◆ releaseRenderPipeline()

virtual void Cogs::PipelineStatesWebGPU::releaseRenderPipeline ( RenderPipelineHandle  )
inlineoverridevirtual

Implements Cogs::IPipelineStates.

Definition at line 59 of file PipelineStatesWebGPU.h.

◆ releaseResources()

virtual void Cogs::PipelineStatesWebGPU::releaseResources ( )
inlineoverridevirtual

Implements Cogs::IPipelineStates.

Definition at line 61 of file PipelineStatesWebGPU.h.

◆ renderPipelineHash()

size_t Cogs::PipelineStatesWebGPU::renderPipelineHash ( EffectHandle  effect,
InputLayoutHandle  inputLayoutHandle,
PrimitiveType  primitiveType,
RasterizerStateHandle  rasterizeStateHandle,
DepthStencilStateHandle  depthStencilStateHandle,
BlendStateHandle  blendStateHandle,
RenderTargetHandle  renderTargetHandle,
DepthStencilHandle  depthStencilHandle 
)

Definition at line 66 of file PipelineStatesWebGPU.cpp.

Member Data Documentation

◆ computePipeline

SafeResourceMap<ComputePipelineHandle, ComputePipelineWebGPU> Cogs::PipelineStatesWebGPU::computePipeline

Definition at line 69 of file PipelineStatesWebGPU.h.

◆ computePipelineHashMap

std::unordered_map<size_t, ComputePipelineHandle> Cogs::PipelineStatesWebGPU::computePipelineHashMap

Definition at line 68 of file PipelineStatesWebGPU.h.

◆ graphics_device

GraphicsDeviceWebGPU* Cogs::PipelineStatesWebGPU::graphics_device = nullptr

Definition at line 63 of file PipelineStatesWebGPU.h.

◆ renderPipeline

SafeResourceMap<RenderPipelineHandle, RenderPipelineWebGPU> Cogs::PipelineStatesWebGPU::renderPipeline

Definition at line 66 of file PipelineStatesWebGPU.h.

◆ renderPipelineHashMap

std::unordered_map<size_t, RenderPipelineHandle> Cogs::PipelineStatesWebGPU::renderPipelineHashMap

Definition at line 65 of file PipelineStatesWebGPU.h.


The documentation for this struct was generated from the following files: