GLSL Struct 1.4.0
glslstruct
Loading...
Searching...
No Matches
glslstruct::utils::array_value< T, Num > Struct Template Reference

container for array values More...

#include <glsl_value.hpp>

Inheritance diagram for glslstruct::utils::array_value< T, Num >:
[legend]
Collaboration diagram for glslstruct::utils::array_value< T, Num >:
[legend]

Public Member Functions

 array_value () _GLSL_STRUCT_REQUIRES(std
 default constructor
 array_value (const std::vector< T > &values)
 constructor with std::vector values
 array_value (const std::array< T, Num > &values)
 constructor with std::array values
 array_value (const T *values, const size_t size)
 constructor with pointer to values and size
 array_value (const T(&values)[Num])
 constructor with c-style array values
 array_value (const std::span< const T > values)
 constructor with std::span values

Static Public Member Functions

static std::array< T, Num > init_value (const std::vector< T > &values)
 static conversion from std::vector to std::array
static std::array< T, Num > init_value (const T *values, const size_t size)
 static conversion from pointer and size to std::array
static std::array< T, Num > init_value (const T(&values)[Num])
 static conversion from c-style array to std::array
static std::array< T, Num > init_value (const std::span< const T > values)
 static conversion from std::span to std::array

Public Attributes

const std::array< T, Num > value = {}
 array value

Detailed Description

template<class T, size_t Num>
struct glslstruct::utils::array_value< T, Num >

container for array values

Template Parameters
Tvalue type
numarray size

Constructor & Destructor Documentation

◆ array_value() [1/6]

template<class T, size_t Num>
glslstruct::utils::array_value< T, Num >::array_value ( )
inline

default constructor

◆ array_value() [2/6]

template<class T, size_t Num>
glslstruct::utils::array_value< T, Num >::array_value ( const std::vector< T > & values)
inlineexplicit

constructor with std::vector values

◆ array_value() [3/6]

template<class T, size_t Num>
glslstruct::utils::array_value< T, Num >::array_value ( const std::array< T, Num > & values)
inlineexplicit

constructor with std::array values

◆ array_value() [4/6]

template<class T, size_t Num>
glslstruct::utils::array_value< T, Num >::array_value ( const T * values,
const size_t size )
inlineexplicit

constructor with pointer to values and size

◆ array_value() [5/6]

template<class T, size_t Num>
glslstruct::utils::array_value< T, Num >::array_value ( const T(&) values[Num])
inlineexplicit

constructor with c-style array values

◆ array_value() [6/6]

template<class T, size_t Num>
glslstruct::utils::array_value< T, Num >::array_value ( const std::span< const T > values)
inlineexplicit

constructor with std::span values

Member Function Documentation

◆ init_value() [1/4]

template<class T, size_t Num>
std::array< T, Num > glslstruct::utils::array_value< T, Num >::init_value ( const std::span< const T > values)
inlinestatic

static conversion from std::span to std::array

◆ init_value() [2/4]

template<class T, size_t Num>
std::array< T, Num > glslstruct::utils::array_value< T, Num >::init_value ( const std::vector< T > & values)
inlinestatic

static conversion from std::vector to std::array

◆ init_value() [3/4]

template<class T, size_t Num>
std::array< T, Num > glslstruct::utils::array_value< T, Num >::init_value ( const T * values,
const size_t size )
inlinestatic

static conversion from pointer and size to std::array

◆ init_value() [4/4]

template<class T, size_t Num>
std::array< T, Num > glslstruct::utils::array_value< T, Num >::init_value ( const T(&) values[Num])
inlinestatic

static conversion from c-style array to std::array

Member Data Documentation

◆ value

template<class T, size_t Num>
const std::array<T, Num> glslstruct::utils::array_value< T, Num >::value = {}

array value