Diligent Engine
 
Loading...
Searching...
No Matches
PipelineStateBase.hpp File Reference
#include <array>
#include <unordered_map>
#include <unordered_set>
#include <cstring>
#include <vector>
#include "PrivateConstants.h"
#include "PipelineState.h"
#include "DeviceObjectBase.hpp"
#include "STDAllocator.hpp"
#include "EngineMemory.h"
#include "GraphicsAccessories.hpp"
#include "FixedLinearAllocator.hpp"
#include "HashUtils.hpp"
#include "PipelineResourceSignatureBase.hpp"
#include "RefCntAutoPtr.hpp"
#include "AsyncInitializer.hpp"
#include "GraphicsTypesX.hpp"

Classes

struct  Diligent::ShaderResourceHashKey
 Hash map key that identifies shader resource by its name and shader stages. More...
 
class  Diligent::PipelineStateBase< EngineImplTraits >
 Template class implementing base functionality of the pipeline state object. More...
 

Namespaces

namespace  Diligent
 Graphics engine namespace.
 

Enumerations

enum  Diligent::PSO_CREATE_INTERNAL_FLAGS : Uint32 { }
 Internal PSO create flags. More...
 

Functions

void Diligent::ValidatePipelineResourceCompatibility (const PipelineResourceDesc &ResDesc, SHADER_RESOURCE_TYPE Type, PIPELINE_RESOURCE_FLAGS ResourceFlags, Uint32 ArraySize, const char *ShaderName, const char *SignatureName) noexcept(false)
 
void Diligent::CopyRTShaderGroupNames (std::unordered_map< HashMapStringKey, Uint32 > &NameToGroupIndex, const RayTracingPipelineStateCreateInfo &CreateInfo, FixedLinearAllocator &MemPool) noexcept
 Copies ray tracing shader group names and also initializes the mapping from the group name to its index.
 
ShaderResourceVariableDesc Diligent::FindPipelineResourceLayoutVariable (const PipelineResourceLayoutDesc &LayoutDesc, const char *Name, SHADER_TYPE ShaderStage, const char *CombinedSamplerSuffix)
 

Detailed Description

Implementation of the Diligent::PipelineStateBase template class