FastUIDraw
Public Types | Public Member Functions | List of all members
fastuidraw::glsl::shareable_value_list Class Reference

A shareable_value_list is a list of values and their types that a shader will have computed after running. These can be used is shader-chaining to get some of the values made from a dependee shader. More...

#include <shareable_value_list.hpp>

Public Types

enum  type_t { type_float, type_uint, type_int, type_number_types }
 Enumeration to define the types of the a shareable value can be. More...
 

Public Member Functions

shareable_value_listadd_float (c_string pname)
 
shareable_value_listadd_int (c_string pname)
 
shareable_value_listadd_shareable_value (c_string pname, enum type_t q)
 
shareable_value_listadd_uint (c_string pname)
 
vecN< unsigned int, type_number_types > number_shareable_values (void) const
 
c_array< const c_stringshareable_values (enum type_t q) const
 
void swap (shareable_value_list &obj)
 

Detailed Description

A shareable_value_list is a list of values and their types that a shader will have computed after running. These can be used is shader-chaining to get some of the values made from a dependee shader.

Definition at line 41 of file shareable_value_list.hpp.

Member Enumeration Documentation

◆ type_t

Enumeration to define the types of the a shareable value can be.

Enumerator
type_float 

corresponds to float in GLSL

type_uint 

corresponds to uint in GLSL

type_int 

corresponds to int in GLSL

Definition at line 49 of file shareable_value_list.hpp.

Member Function Documentation

◆ add_float()

shareable_value_list& fastuidraw::glsl::shareable_value_list::add_float ( c_string  pname)
inline

Add an uint shareable value, equivalent to

add_shareable_value(pname, type_smooth);

Definition at line 138 of file shareable_value_list.hpp.

◆ add_int()

shareable_value_list& fastuidraw::glsl::shareable_value_list::add_int ( c_string  pname)
inline

Add an uint shareable value, equivalent to

Definition at line 126 of file shareable_value_list.hpp.

◆ add_shareable_value()

shareable_value_list& fastuidraw::glsl::shareable_value_list::add_shareable_value ( c_string  pname,
enum type_t  q 
)
inline

Add a shareable value

Parameters
pnamename by which to reference the shareable value
qtype of the shareable value

Definition at line 101 of file shareable_value_list.hpp.

◆ add_uint()

shareable_value_list& fastuidraw::glsl::shareable_value_list::add_uint ( c_string  pname)
inline

Add an uint shareable value, equivalent to

Definition at line 114 of file shareable_value_list.hpp.

◆ number_shareable_values()

vecN<unsigned int, type_number_types> fastuidraw::glsl::shareable_value_list::number_shareable_values ( void  ) const
inline

Returns an array indexed by type_t that holds the number of shareable variables for each type.

Definition at line 74 of file shareable_value_list.hpp.

◆ shareable_values()

c_array<const c_string> fastuidraw::glsl::shareable_value_list::shareable_values ( enum type_t  q) const
inline

Returns the names of the shareable values of the specified type.

Parameters
qtype

Definition at line 90 of file shareable_value_list.hpp.

◆ swap()

void fastuidraw::glsl::shareable_value_list::swap ( shareable_value_list obj)
inline

Swap operation

Parameters
objobject with which to swap

Definition at line 63 of file shareable_value_list.hpp.


The documentation for this class was generated from the following file: