XII Release 0.1.0
Loading...
Searching...
No Matches
xiiGALShaderVariableDescription Struct Reference

This describes shader code variable. More...

#include <ShaderByteCode.h>

Inheritance diagram for xiiGALShaderVariableDescription:
[legend]

Public Member Functions

 XII_DECLARE_MEM_RELOCATABLE_TYPE ()
 
- Public Member Functions inherited from xiiHashableStruct< xiiGALShaderVariableDescription >
 xiiHashableStruct (const xiiHashableStruct< xiiGALShaderVariableDescription > &other)
 
void operator= (const xiiHashableStruct< xiiGALShaderVariableDescription > &other)
 
XII_ALWAYS_INLINE constexpr bool operator== (const xiiHashableStruct< xiiGALShaderVariableDescription > &rhs) const=default
 
xiiUInt32 CalculateHash () const
 Calculates the 32 bit hash of the struct and returns it.
 

Static Public Member Functions

static void CopyDataFromVariant (xiiUInt8 *pDestination, const xiiVariant *pValue, const xiiGALShaderVariableDescription &description)
 This copies the data in a variant into into its destination, given its structure in the shader variable description.
 

Public Attributes

xiiHashedString m_sName
 The variable name.
 
xiiEnum< xiiGALShaderVariableClassTypem_Class = xiiGALShaderVariableClassType::Unknown
 The variable class.
 
xiiEnum< xiiGALShaderPrimitiveTypem_PrimitiveType = xiiGALShaderPrimitiveType::Unknown
 The variable primitive data type..
 
xiiUInt8 m_uiRowCount = 0U
 For a matrix type, the number of rows.
 
xiiUInt8 m_uiColumnCount = 0U
 For a matrix type, the number of columns. For a vector type, the number of components.
 
xiiUInt32 m_uiOffset = 0U
 The offset in bytes between the start of the parent structure and this variable.
 
xiiUInt32 m_uiArraySize = 0U
 The array size.
 
xiiDynamicArray< xiiGALShaderVariableDescriptionm_Members
 For a structure, an array of member variables.
 

Detailed Description

This describes shader code variable.

Member Function Documentation

◆ CopyDataFromVariant()

void xiiGALShaderVariableDescription::CopyDataFromVariant ( xiiUInt8 * pDestination,
const xiiVariant * pValue,
const xiiGALShaderVariableDescription & description )
static

This copies the data in a variant into into its destination, given its structure in the shader variable description.

Todo
Perform row-column major conversion on matrices.

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