Kanzi 4.1.0
reflection.hpp File Reference

Classes

struct  kanzi::gfx::reflection::AccelerationStructure
 Acceleration structure reflection information. More...
 
struct  kanzi::gfx::reflection::Attribute
 Reflection entry for a stage input or output attribute. More...
 
struct  kanzi::gfx::reflection::BindingBlock
 Describes a binding block which corresponds to a resource set. More...
 
struct  kanzi::gfx::reflection::Buffer
 Buffer reflection information. More...
 
struct  kanzi::gfx::reflection::Image
 Image reflection information. More...
 
struct  kanzi::gfx::reflection::InterfaceBlock
 Describes an interface block that can be a uniform buffer object or push constant object. More...
 
struct  kanzi::gfx::reflection::InterfaceBlockHasher
 Hasher for InterfaceBlock, combines the name, byte offset, and type information of each member to produce a hash that reflects the full layout of the block. More...
 
struct  kanzi::gfx::reflection::Member
 Describes a uniform member. More...
 
struct  kanzi::gfx::reflection::ReflectionInfo
 Top-level structure that contains the reflection information for a shader stage or program. More...
 
struct  kanzi::gfx::reflection::Sampler
 Sampler reflection information. More...
 
struct  kanzi::gfx::reflection::TypeInfo
 Contains a description of a shader value. More...
 
class  kanzi::gfx::reflection::UniformBlockBuilder
 A helper class to build uniform blocks based on reflection information. More...
 

Namespaces

namespace  kanzi
 
namespace  kanzi::gfx
 
namespace  kanzi::gfx::reflection
 

Enumerations

enum class  kanzi::gfx::reflection::AccessStage : uint8_t { kanzi::gfx::reflection::AccessStage::VertexStage , kanzi::gfx::reflection::AccessStage::FragmentStage , kanzi::gfx::reflection::AccessStage::ComputeStage , kanzi::gfx::reflection::AccessStage::All }
 Specifies the stages that use the resource. More...
 
enum class  kanzi::gfx::reflection::PrimitiveType : uint8_t {
  kanzi::gfx::reflection::PrimitiveType::Invalid , kanzi::gfx::reflection::PrimitiveType::Boolean , kanzi::gfx::reflection::PrimitiveType::Integer , kanzi::gfx::reflection::PrimitiveType::UnsignedInteger ,
  kanzi::gfx::reflection::PrimitiveType::FloatingPoint
}
 Specifies the primitive types. More...
 

Functions

bool kanzi::gfx::reflection::isReservedGPUSceneDescriptorSetIndex (uint32_t index)
 Checks if given descriptor set is reserved by reserved gpu scene.
 
bool kanzi::gfx::reflection::isReservedGPUSceneUniform (uint32_t setIndex, uint32_t bindingIndex)
 Checks if given descriptor set and binding index is reserved by reserved gpu scene uniform.
 
 kanzi::KZ_ENABLE_BITMASK_OPERATORS (gfx::reflection::AccessStage)
 
ReflectionInfo kanzi::gfx::reflection::mergeReflectionInfos (span< ReflectionInfo > infos)
 Merges reflection information into a unified structure.
 
constexpr bool kanzi::gfx::reflection::operator!= (const TypeInfo &lhs, const TypeInfo &rhs)
 Not equality operator for the TypeInfo.
 
constexpr bool kanzi::gfx::reflection::operator== (const TypeInfo &lhs, const TypeInfo &rhs)
 Equality operator for the TypeInfo.
 
gfx::Format kanzi::gfx::reflection::to_format (const TypeInfo &info)
 Converts a TypeInfo structure into a graphics format.
 
KANZI_GFX_API string kanzi::to_string (const gfx::reflection::Attribute &attr, size_t initialIndent, size_t incrementIndent)
 Converts reflection::Attribute to string.
 
KANZI_GFX_API string kanzi::to_string (const gfx::reflection::BindingBlock &block, size_t initialIndent, size_t incrementIndent)
 Converts reflection::BindingBlock to string.
 
KANZI_GFX_API string kanzi::to_string (const gfx::reflection::Buffer &buffer, size_t initialIndent)
 Converts reflection::Buffer to string.
 
KANZI_GFX_API string kanzi::to_string (const gfx::reflection::Image &image, size_t initialIndent)
 Converts reflection::Image to string.
 
KANZI_GFX_API string kanzi::to_string (const gfx::reflection::InterfaceBlock &block, size_t initialIndent, size_t incrementIndent)
 Converts reflection::InterfaceBlock block to string.
 
KANZI_GFX_API string kanzi::to_string (const gfx::reflection::Member &member, size_t initialIndent, size_t incrementIndent)
 Converts reflection::Member to string.
 
KANZI_GFX_API string kanzi::to_string (const gfx::reflection::ReflectionInfo &info, size_t initialIndent=4u, size_t incrementIndent=4u)
 Converts reflection::ReflectionInfo to string.
 
KANZI_GFX_API string kanzi::to_string (const gfx::reflection::TypeInfo &info, size_t initialIndent)
 Converts reflection::TypeInfo to string.
 
KANZI_GFX_API string kanzi::to_string (gfx::reflection::AccessStage stage)
 Converts access stage to string.
 
KANZI_GFX_API string kanzi::to_string (gfx::reflection::PrimitiveType type)
 Converts primitive type to string.
 

Variables

static string kanzi::gfx::reflection::GPUSceneMaterialInfoName
 Specifies the reserved gpu scene material info uniform name.
 
static string kanzi::gfx::reflection::GPUSceneName
 Specifies the reserved gpu scene uniform name.
 
static string kanzi::gfx::reflection::GPUSceneTexturesNamePrefix
 Specifies the reserved gpu scene textures name prefix.
 
static uint32_t kanzi::gfx::reflection::ReservedGPUSceneBindlessTextures2DBindingIndex
 Specifies the reserved gpu scene bindless textures binding index.
 
static uint32_t kanzi::gfx::reflection::ReservedGPUSceneDescriptorSetIndex
 Specifies the reserved gpu scene descriptor set index.
 
static uint32_t kanzi::gfx::reflection::ReservedGPUSceneUniformBindingIndex
 Specifies the reserved gpu scene uniform binding index.