Struct SPIRConstant

Nested Relationships

Nested Types

Inheritance Relationships

Base Type

Struct Documentation

struct SPIRConstant : public SPIRV_CROSS_NAMESPACE::IVariant

Public Types

enum [anonymous]

Values:

enumerator type

Public Functions

inline uint32_t specialization_constant_id(uint32_t col, uint32_t row) const
inline uint32_t specialization_constant_id(uint32_t col) const
inline uint32_t scalar(uint32_t col = 0, uint32_t row = 0) const
inline int16_t scalar_i16(uint32_t col = 0, uint32_t row = 0) const
inline uint16_t scalar_u16(uint32_t col = 0, uint32_t row = 0) const
inline int8_t scalar_i8(uint32_t col = 0, uint32_t row = 0) const
inline uint8_t scalar_u8(uint32_t col = 0, uint32_t row = 0) const
inline float scalar_f16(uint32_t col = 0, uint32_t row = 0) const
inline float scalar_f32(uint32_t col = 0, uint32_t row = 0) const
inline int32_t scalar_i32(uint32_t col = 0, uint32_t row = 0) const
inline double scalar_f64(uint32_t col = 0, uint32_t row = 0) const
inline int64_t scalar_i64(uint32_t col = 0, uint32_t row = 0) const
inline uint64_t scalar_u64(uint32_t col = 0, uint32_t row = 0) const
inline const ConstantVector &vector() const
inline uint32_t vector_size() const
inline uint32_t columns() const
inline void make_null(const SPIRType &constant_type_)
inline bool constant_is_null() const
inline explicit SPIRConstant(uint32_t constant_type_)
SPIRConstant() = default
inline SPIRConstant(TypeID constant_type_, const uint32_t *elements, uint32_t num_elements, bool specialized)
inline SPIRConstant(TypeID constant_type_, uint32_t v0, bool specialized)
inline SPIRConstant(TypeID constant_type_, uint64_t v0, bool specialized)
inline SPIRConstant(TypeID constant_type_, const SPIRConstant *const *vector_elements, uint32_t num_elements, bool specialized)

Public Members

TypeID constant_type = 0
ConstantMatrix m
bool specialization = false
bool is_used_as_array_length = false
bool is_used_as_lut = false
SmallVector<ConstantID> subconstants
std::string specialization_constant_macro_name

Public Static Functions

static inline float f16_to_f32(uint16_t u16_value)
union Constant

Public Members

uint32_t u32
int32_t i32
float f32
uint64_t u64
int64_t i64
double f64
struct ConstantMatrix

Public Members

ConstantVector c[4]
ID id[4]
uint32_t columns = 1
struct ConstantVector

Public Functions

inline ConstantVector()

Public Members

Constant r[4]
ID id[4]
uint32_t vecsize = 1