9#include <glbinding/gl/types.h>
11#include <globjects/globjects_api.h>
20class AbstractFunctionCall;
44 template <
typename... Arguments>
45 StateSetting(
void (*function)(Arguments...), Arguments... arguments);
61 StateSetting(std::unique_ptr<AbstractFunctionCall> && functionCall);
72struct GLOBJECTS_API hash<
globjects::StateSettingType>
81#include <globjects/StateSetting.inl>
CRTP for creating objects similar to std::make_unique.
Definition: Instantiator.h:22
Definition: StateSetting.h:42
std::unique_ptr< AbstractFunctionCall > m_functionCall
Definition: StateSetting.h:56
StateSettingType m_type
Definition: StateSetting.h:57
StateSettingType & type()
StateSetting(void(*function)(Arguments...), Arguments... arguments)
StateSetting(std::unique_ptr< AbstractFunctionCall > &&functionCall)
const StateSettingType & type() const
Definition: StateSetting.h:24
std::set< gl::GLenum > m_subtypes
Definition: StateSetting.h:37
void * m_functionIdentifier
Definition: StateSetting.h:36
StateSettingType(void *functionIdentifier)
bool operator==(const StateSettingType &other) const
void specializeType(gl::GLenum subtype)
Contains all the classes that wrap OpenGL functionality.
Definition: LocationIdentity.h:52
size_t operator()(const globjects::StateSettingType &type) const