Diligent Engine  v.2.4.g
Classes | Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
Diligent::ShaderVariableManagerGL Class Reference

#include <ShaderVariableManagerGL.hpp>

Classes

struct  GLVariableBase
 
struct  ImageBindInfo
 
struct  StorageBufferBindInfo
 
struct  TextureBindInfo
 
struct  UniformBuffBindInfo
 

Public Types

using ResourceAttribs = PipelineResourceAttribsGL
 

Public Member Functions

 ShaderVariableManagerGL (IObject &Owner, ShaderResourceCacheGL &ResourceCache) noexcept
 
 ~ShaderVariableManagerGL ()
 
void Destroy (IMemoryAllocator &Allocator)
 
 ShaderVariableManagerGL (const ShaderVariableManagerGL &)=delete
 
ShaderVariableManagerGLoperator= (const ShaderVariableManagerGL &)=delete
 
 ShaderVariableManagerGL (ShaderVariableManagerGL &&)=default
 
ShaderVariableManagerGLoperator= (ShaderVariableManagerGL &&)=delete
 
void Initialize (const PipelineResourceSignatureGLImpl &Signature, IMemoryAllocator &Allocator, const SHADER_RESOURCE_VARIABLE_TYPE *AllowedVarTypes, Uint32 NumAllowedTypes, SHADER_TYPE ShaderType)
 
const PipelineResourceDescGetResourceDesc (Uint32 Index) const
 
const ResourceAttribsGetResourceAttribs (Uint32 Index) const
 
void BindResources (IResourceMapping *pResourceMapping, Uint32 Flags)
 
IShaderResourceVariableGetVariable (const Char *Name) const
 
IShaderResourceVariableGetVariable (Uint32 Index) const
 
IObjectGetOwner ()
 
Uint32 GetVariableCount () const
 
Uint32 GetNumUBs () const
 
Uint32 GetNumTextures () const
 
Uint32 GetNumImages () const
 
Uint32 GetNumStorageBuffers () const
 
template<typename ResourceType >
Uint32 GetNumResources () const
 
template<typename ResourceType >
const ResourceType & GetConstResource (Uint32 ResIndex) const
 
Uint32 GetVariableIndex (const IShaderResourceVariable &Var) const
 

Static Public Member Functions

static size_t GetRequiredMemorySize (const PipelineResourceSignatureGLImpl &Signature, const SHADER_RESOURCE_VARIABLE_TYPE *AllowedVarTypes, Uint32 NumAllowedTypes, SHADER_TYPE ShaderType)
 

Friends

class ShaderVariableIndexLocator
 
class ShaderVariableLocator
 

Member Typedef Documentation

◆ ResourceAttribs

Constructor & Destructor Documentation

◆ ShaderVariableManagerGL() [1/3]

Diligent::ShaderVariableManagerGL::ShaderVariableManagerGL ( IObject Owner,
ShaderResourceCacheGL ResourceCache 
)
inlinenoexcept

◆ ~ShaderVariableManagerGL()

Diligent::ShaderVariableManagerGL::~ShaderVariableManagerGL ( )

◆ ShaderVariableManagerGL() [2/3]

Diligent::ShaderVariableManagerGL::ShaderVariableManagerGL ( const ShaderVariableManagerGL )
delete

◆ ShaderVariableManagerGL() [3/3]

Diligent::ShaderVariableManagerGL::ShaderVariableManagerGL ( ShaderVariableManagerGL &&  )
default

Member Function Documentation

◆ BindResources()

void Diligent::ShaderVariableManagerGL::BindResources ( IResourceMapping pResourceMapping,
Uint32  Flags 
)

◆ Destroy()

void Diligent::ShaderVariableManagerGL::Destroy ( IMemoryAllocator Allocator)

◆ GetConstResource()

template<typename ResourceType >
const ResourceType& Diligent::ShaderVariableManagerGL::GetConstResource ( Uint32  ResIndex) const
inline

◆ GetNumImages()

Uint32 Diligent::ShaderVariableManagerGL::GetNumImages ( ) const
inline

◆ GetNumResources()

template<typename ResourceType >
Uint32 Diligent::ShaderVariableManagerGL::GetNumResources ( ) const

◆ GetNumStorageBuffers()

Uint32 Diligent::ShaderVariableManagerGL::GetNumStorageBuffers ( ) const
inline

◆ GetNumTextures()

Uint32 Diligent::ShaderVariableManagerGL::GetNumTextures ( ) const
inline

◆ GetNumUBs()

Uint32 Diligent::ShaderVariableManagerGL::GetNumUBs ( ) const
inline

◆ GetOwner()

IObject& Diligent::ShaderVariableManagerGL::GetOwner ( )
inline

◆ GetRequiredMemorySize()

size_t Diligent::ShaderVariableManagerGL::GetRequiredMemorySize ( const PipelineResourceSignatureGLImpl Signature,
const SHADER_RESOURCE_VARIABLE_TYPE AllowedVarTypes,
Uint32  NumAllowedTypes,
SHADER_TYPE  ShaderType 
)
static

◆ GetResourceAttribs()

const ShaderVariableManagerGL::ResourceAttribs & Diligent::ShaderVariableManagerGL::GetResourceAttribs ( Uint32  Index) const

◆ GetResourceDesc()

const PipelineResourceDesc & Diligent::ShaderVariableManagerGL::GetResourceDesc ( Uint32  Index) const

◆ GetVariable() [1/2]

IShaderResourceVariable * Diligent::ShaderVariableManagerGL::GetVariable ( const Char Name) const

◆ GetVariable() [2/2]

IShaderResourceVariable * Diligent::ShaderVariableManagerGL::GetVariable ( Uint32  Index) const

◆ GetVariableCount()

Uint32 Diligent::ShaderVariableManagerGL::GetVariableCount ( ) const
inline

◆ GetVariableIndex()

Uint32 Diligent::ShaderVariableManagerGL::GetVariableIndex ( const IShaderResourceVariable Var) const

◆ Initialize()

void Diligent::ShaderVariableManagerGL::Initialize ( const PipelineResourceSignatureGLImpl Signature,
IMemoryAllocator Allocator,
const SHADER_RESOURCE_VARIABLE_TYPE AllowedVarTypes,
Uint32  NumAllowedTypes,
SHADER_TYPE  ShaderType 
)

◆ operator=() [1/2]

ShaderVariableManagerGL& Diligent::ShaderVariableManagerGL::operator= ( const ShaderVariableManagerGL )
delete

◆ operator=() [2/2]

ShaderVariableManagerGL& Diligent::ShaderVariableManagerGL::operator= ( ShaderVariableManagerGL &&  )
delete

Friends And Related Function Documentation

◆ ShaderVariableIndexLocator

friend class ShaderVariableIndexLocator
friend

◆ ShaderVariableLocator

friend class ShaderVariableLocator
friend

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