9template <
typename... Arguments>
15 inline static void add(std::vector<std::unique_ptr<glbinding::AbstractValue>> &)
20template <
typename Argument,
typename... Arguments>
21struct ValueAdder<Argument, Arguments...>
23 inline static void add(std::vector<std::unique_ptr<glbinding::AbstractValue>> & values, Argument value, Arguments&&... rest)
26 ValueAdder<Arguments...>::add(values, std::forward<Arguments>(rest)...);
30template <
typename... Arguments>
31inline void addValuesTo(std::vector<std::unique_ptr<glbinding::AbstractValue>> & values, Arguments&&... arguments)
33 ValueAdder<Arguments...>::add(values, std::forward<Arguments>(arguments)...);
57template <
typename Argument>
58std::unique_ptr<AbstractValue>
createValue(
const Argument & argument)
63template <
typename... Arguments>
64std::vector<std::unique_ptr<AbstractValue>>
createValues(Arguments&&... arguments)
66 auto values = std::vector<std::unique_ptr<AbstractValue>>{};
67 addValuesTo(values, std::forward<Arguments>(arguments)...);
The Value class represents a printable wrapper around an OpenGL data type.
Definition Value.h:30
GLBINDING_CONSTEXPR Value(const T &value)
Constructor.
Definition Value.inl:45
GLBINDING_CONSTEXPR T value() const
Get the value.
Definition Value.inl:51
Contains all the classes of glbinding.
std::vector< std::unique_ptr< AbstractValue > > createValues(Arguments &&... arguments)
A wrapper around the creation of a vector of arguments.
Definition Value.inl:64
std::unique_ptr< AbstractValue > createValue(const Argument &argument)
A wrapper around the type deduction and memory allocation of a specific argument.
Definition Value.inl:58