2#include <QOpenGLVertexArrayObject>
62 Q_DECLARE_FLAGS(RenderOptions, ERenderOption)
73 virtual
void draw() = 0;
78 virtual
void paint() = 0;
84 virtual
bool hasColor() const = 0;
90 virtual
bool hasTexture() const = 0;
106 static const
Color& getDefaultColor();
111 static
void setDefaultColor(const QColor& color);
126 void triggerGenerate();
131 void setRenderOptions(RenderOptions options);
136 RenderOptions getRenderOptions() const;
142 virtual
bool setup() = 0;
147 virtual
void clearData() = 0;
157 virtual
void generate() = 0;
166 virtual
void modifyContext(
bool before,
bool draw,
size_t mode_index);
173 bool isTriggered() const;
179 bool _triggerGenerate;
184 RenderOptions _renderOptions;
Counted vector having additional methods and operators for ease of usage.
Definition TVector.h:25
Color class used in vertex arrays and has layout of 4 x GLfloat.
Definition Color.h:15
Base class for Vertex array derived classes.
Definition VertexArrayBase.h:14
EVertexMember
Possible member of a vertex structure. Where the position can not be omitted as part of the vertex.
Definition VertexArrayBase.h:28
ERenderOption
Render options.
Definition VertexArrayBase.h:54
EDrawMode
Drawing mode of by the template.
Definition VertexArrayBase.h:43
@ dmDrawArrays
Definition VertexArrayBase.h:45
unsigned VertexMember
Type used to describe vertex structure members.
Definition VertexArrayBase.h:21
Definition DemoRenderer.h:6
std::array< GLfloat, 3 > vector3f
Type which correspond with a GLSL type and used to implement Vertex structures.
Definition Types.h:21
#define _XGL_CLASS
Definition xgl/global.h:35