/usr/include/globjects/StateSetting.h is in libglobjects-dev 1.0.0-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | #pragma once
#include <functional>
#include <set>
#include <glbinding/gl/types.h>
#include <globjects/globjects_api.h>
namespace globjects
{
class AbstractFunctionCall;
class GLOBJECTS_API StateSettingType
{
public:
StateSettingType();
StateSettingType(void * functionIdentifier);
bool operator==(const StateSettingType & other) const;
std::size_t hash() const;
void specializeType(gl::GLenum subtype);
protected:
void * m_functionIdentifier;
std::set<gl::GLenum> m_subtypes;
};
class GLOBJECTS_API StateSetting
{
public:
StateSetting(AbstractFunctionCall * functionCall);
template <typename... Arguments>
StateSetting(void (*function)(Arguments...), Arguments... arguments);
virtual ~StateSetting();
void apply();
StateSettingType & type();
const StateSettingType & type() const;
protected:
AbstractFunctionCall * m_functionCall;
StateSettingType m_type;
};
} // namespace globjects
namespace std
{
template <>
struct GLOBJECTS_API hash<globjects::StateSettingType>
{
size_t operator()(const globjects::StateSettingType & type) const;
};
} // namespace globjects
#include <globjects/StateSetting.inl>
|