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, WGPUIndexFormat stripIndexFormat=WGPUIndexFormat_Undefined)
 
RenderPipelineHandle loadRenderPipeline (EffectHandle effect, InputLayoutHandle inputLayoutHandle, PrimitiveType primitiveType, RasterizerStateHandle rasterizeStateHandle, DepthStencilStateHandle depthStencilStateHandle, BlendStateHandle blendStateHandle, RenderTargetHandle renderTargetHandle, DepthStencilHandle depthStencilHandle, WGPUIndexFormat stripIndexFormat=WGPUIndexFormat_Undefined)
 
ComputePipelineHandle loadComputePipeline (EffectHandle effect)
 
void releaseRenderPipeline (RenderPipelineHandle psoHandle) override
 
void releaseComputePipeline (ComputePipelineHandle psoHandle) override
 
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 38 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 399 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,
WGPUIndexFormat  stripIndexFormat = WGPUIndexFormat_Undefined 
)

Definition at line 104 of file PipelineStatesWebGPU.cpp.

◆ releaseComputePipeline()

void Cogs::PipelineStatesWebGPU::releaseComputePipeline ( ComputePipelineHandle  psoHandle)
overridevirtual

Implements Cogs::IPipelineStates.

Definition at line 456 of file PipelineStatesWebGPU.cpp.

◆ releaseRenderPipeline()

void Cogs::PipelineStatesWebGPU::releaseRenderPipeline ( RenderPipelineHandle  psoHandle)
overridevirtual

Implements Cogs::IPipelineStates.

Definition at line 443 of file PipelineStatesWebGPU.cpp.

◆ releaseResources()

void Cogs::PipelineStatesWebGPU::releaseResources ( )
overridevirtual

Implements Cogs::IPipelineStates.

Definition at line 467 of file PipelineStatesWebGPU.cpp.

◆ renderPipelineHash()

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

Definition at line 66 of file PipelineStatesWebGPU.cpp.

Member Data Documentation

◆ computePipeline

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

Definition at line 72 of file PipelineStatesWebGPU.h.

◆ computePipelineHashMap

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

Definition at line 71 of file PipelineStatesWebGPU.h.

◆ graphics_device

GraphicsDeviceWebGPU* Cogs::PipelineStatesWebGPU::graphics_device = nullptr

Definition at line 66 of file PipelineStatesWebGPU.h.

◆ renderPipeline

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

Definition at line 69 of file PipelineStatesWebGPU.h.

◆ renderPipelineHashMap

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

Definition at line 68 of file PipelineStatesWebGPU.h.


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