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

container for array of structs More...

#include <glsl_value.hpp>

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

Public Member Functions

 struct_array_value (const layout_type &layout)
 constructor with layout
 struct_array_value (const layout_type &layout, const std::vector< value_type > &values)
 constructor with layout and std::vector values
 struct_array_value (const layout_type &layout, const std::array< value_type, Num > &values)
 constructor with layout and std::array values
 struct_array_value (const layout_type &layout, const value_type *values, size_t size)
 constructor with layout and pointer to values and size
 struct_array_value (const layout_type &layout, const value_type(&values)[Num])
 constructor with layout and c-style array values
 struct_array_value (const layout_type &layout, const std::span< const value_type > values)
 constructor with layout and std::span values
Public Member Functions inherited from glslstruct::utils::array_value< std::vector< std::byte >, Num >
 array_value () _GLSL_STRUCT_REQUIRES(std
 default constructor

Public Attributes

const layout_type layout
 layout value
Public Attributes inherited from glslstruct::utils::array_value< std::vector< std::byte >, Num >
const std::array< std::vector< std::byte >, Num > value
 array value

Private Types

using value_type = std::vector<std::byte>
 value type
using array_type = array_value<value_type, Num>
 type of array
using layout_type = _GLSL_STRUCT_TYPENAME17 T::layout_type
 layout type

Additional Inherited Members

Static Public Member Functions inherited from glslstruct::utils::array_value< std::vector< std::byte >, Num >
static std::array< std::vector< std::byte >, Num > init_value (const std::vector< T > &values)
 static conversion from std::vector to std::array

Detailed Description

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

container for array of structs

Template Parameters
Tstruct type
numnumber of arrays

Member Typedef Documentation

◆ array_type

template<class T, size_t Num>
using glslstruct::utils::struct_array_value< T, Num >::array_type = array_value<value_type, Num>
private

type of array

◆ layout_type

template<class T, size_t Num>
using glslstruct::utils::struct_array_value< T, Num >::layout_type = _GLSL_STRUCT_TYPENAME17 T::layout_type
private

layout type

◆ value_type

template<class T, size_t Num>
using glslstruct::utils::struct_array_value< T, Num >::value_type = std::vector<std::byte>
private

value type

Constructor & Destructor Documentation

◆ struct_array_value() [1/6]

template<class T, size_t Num>
glslstruct::utils::struct_array_value< T, Num >::struct_array_value ( const layout_type & layout)
inlineexplicit

constructor with layout

◆ struct_array_value() [2/6]

template<class T, size_t Num>
glslstruct::utils::struct_array_value< T, Num >::struct_array_value ( const layout_type & layout,
const std::vector< value_type > & values )
inline

constructor with layout and std::vector values

◆ struct_array_value() [3/6]

template<class T, size_t Num>
glslstruct::utils::struct_array_value< T, Num >::struct_array_value ( const layout_type & layout,
const std::array< value_type, Num > & values )
inline

constructor with layout and std::array values

◆ struct_array_value() [4/6]

template<class T, size_t Num>
glslstruct::utils::struct_array_value< T, Num >::struct_array_value ( const layout_type & layout,
const value_type * values,
size_t size )
inline

constructor with layout and pointer to values and size

◆ struct_array_value() [5/6]

template<class T, size_t Num>
glslstruct::utils::struct_array_value< T, Num >::struct_array_value ( const layout_type & layout,
const value_type(&) values[Num] )
inline

constructor with layout and c-style array values

◆ struct_array_value() [6/6]

template<class T, size_t Num>
glslstruct::utils::struct_array_value< T, Num >::struct_array_value ( const layout_type & layout,
const std::span< const value_type > values )
inline

constructor with layout and std::span values

Member Data Documentation

◆ layout

template<class T, size_t Num>
const layout_type glslstruct::utils::struct_array_value< T, Num >::layout

layout value