HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MslResourceBindingContext Class Reference

#include <MslResourceBindingContext.h>

+ Inheritance diagram for MslResourceBindingContext:

Public Member Functions

 MslResourceBindingContext (size_t uniformBindingLocation, size_t samplerBindingLocation)
 
void initialize () override
 
void emitDirectives (GenContext &context, ShaderStage &stage) override
 
void emitResourceBindings (GenContext &context, const VariableBlock &uniforms, ShaderStage &stage) override
 
void emitStructuredResourceBindings (GenContext &context, const VariableBlock &uniforms, ShaderStage &stage, const std::string &structInstanceName, const std::string &arraySuffix) override
 
void enableSeparateBindingLocations (bool separateBindingLocation)
 
- Public Member Functions inherited from HwResourceBindingContext
virtual ~HwResourceBindingContext ()
 
- Public Member Functions inherited from GenUserData
virtual ~GenUserData ()
 
GenUserDataPtr getSelf ()
 Return a shared pointer for this object. More...
 
ConstGenUserDataPtr getSelf () const
 Return a shared pointer for this object. More...
 
template<class T >
shared_ptr< TasA ()
 Return this object cast to a templated type. More...
 
template<class T >
shared_ptr< const TasA () const
 Return this object cast to a templated type. More...
 

Static Public Member Functions

static MslResourceBindingContextPtr create (size_t uniformBindingLocation=0, size_t samplerBindingLocation=0)
 

Protected Attributes

size_t _hwUniformBindLocation = 0
 
size_t _hwInitUniformBindLocation = 0
 
size_t _hwSamplerBindLocation = 0
 
size_t _hwInitSamplerBindLocation = 0
 
bool _separateBindingLocation = false
 

Additional Inherited Members

- Protected Member Functions inherited from GenUserData
 GenUserData ()
 

Detailed Description

Class representing a resource binding for Msl shader resources.

Definition at line 23 of file MslResourceBindingContext.h.

Constructor & Destructor Documentation

MslResourceBindingContext::MslResourceBindingContext ( size_t  uniformBindingLocation,
size_t  samplerBindingLocation 
)

Member Function Documentation

static MslResourceBindingContextPtr MslResourceBindingContext::create ( size_t  uniformBindingLocation = 0,
size_t  samplerBindingLocation = 0 
)
inlinestatic

Definition at line 28 of file MslResourceBindingContext.h.

void MslResourceBindingContext::emitDirectives ( GenContext context,
ShaderStage stage 
)
overridevirtual
void MslResourceBindingContext::emitResourceBindings ( GenContext context,
const VariableBlock uniforms,
ShaderStage stage 
)
overridevirtual
void MslResourceBindingContext::emitStructuredResourceBindings ( GenContext context,
const VariableBlock uniforms,
ShaderStage stage,
const std::string structInstanceName,
const std::string arraySuffix 
)
overridevirtual
void MslResourceBindingContext::enableSeparateBindingLocations ( bool  separateBindingLocation)
inline

Definition at line 50 of file MslResourceBindingContext.h.

void MslResourceBindingContext::initialize ( )
overridevirtual

Member Data Documentation

size_t MslResourceBindingContext::_hwInitSamplerBindLocation = 0
protected

Definition at line 63 of file MslResourceBindingContext.h.

size_t MslResourceBindingContext::_hwInitUniformBindLocation = 0
protected

Definition at line 57 of file MslResourceBindingContext.h.

size_t MslResourceBindingContext::_hwSamplerBindLocation = 0
protected

Definition at line 60 of file MslResourceBindingContext.h.

size_t MslResourceBindingContext::_hwUniformBindLocation = 0
protected

Definition at line 54 of file MslResourceBindingContext.h.

bool MslResourceBindingContext::_separateBindingLocation = false
protected

Definition at line 68 of file MslResourceBindingContext.h.


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