Scanframe Modular Application 0.1.0
Loading...
Searching...
No Matches
Types.h
Go to the documentation of this file.
1#pragma once
2#include <GL/gl.h>
3#include <QOpenGLFunctions>
4#include <array>
5#include <xgl/global.h>
6
7namespace sf::xgl
8{
9
13typedef std::array<GLfloat, 16> matrix4x4f;
17typedef std::array<GLfloat, 2> vector2f;
21typedef std::array<GLfloat, 3> vector3f;
25typedef std::array<GLfloat, 4> vector4f;
29typedef std::array<GLdouble, 16> matrix4x4d;
33typedef std::array<GLdouble, 3> vector3d;
37typedef std::array<GLdouble, 4> vector4d;
38
42enum ECullingFlag : int
43{
49 cfEnabled = 1 << 0,
51 cfCCW = 0,
53 cfCW = 1 << 1,
57 cfFrontside = 1 << 2,
58};
59
63typedef QFlags<ECullingFlag> CullingState;
64Q_DECLARE_OPERATORS_FOR_FLAGS(CullingState)
65
66
69_XGL_FUNC void setCullingState(QOpenGLFunctions* funcs, CullingState state, CullingState current = {cfIgnore});
70
71}// namespace sf::xgl
Definition DemoRenderer.h:6
_XGL_FUNC void setCullingState(QOpenGLFunctions *funcs, CullingState state, CullingState current={cfIgnore})
std::array< GLdouble, 3 > vector3d
Type which correspond with a GLSL type and used to implement Vertex structures.
Definition Types.h:33
QFlags< ECullingFlag > CullingState
Type to contain bitmapped culling settings.
Definition Types.h:63
std::array< GLfloat, 16 > matrix4x4f
Type which correspond with a GLSL type and used to implement Vertex structures.
Definition Types.h:13
std::array< GLdouble, 16 > matrix4x4d
Type which correspond with a GLSL type and used to implement Vertex structures.
Definition Types.h:29
ECullingFlag
Type to determine the culling settings where CCW en Backside are the defaults.
Definition Types.h:43
@ cfIgnore
Definition Types.h:45
@ cfBackside
Definition Types.h:55
@ cfDisabled
Definition Types.h:47
@ cfCW
Definition Types.h:53
@ cfCCW
Definition Types.h:51
@ cfEnabled
Definition Types.h:49
@ cfFrontside
Definition Types.h:57
std::array< GLfloat, 2 > vector2f
Type which correspond with a GLSL type and used to implement Vertex structures.
Definition Types.h:17
std::array< GLdouble, 4 > vector4d
Type which correspond with a GLSL type and used to implement Vertex structures.
Definition Types.h:37
std::array< GLfloat, 4 > vector4f
Type which correspond with a GLSL type and used to implement Vertex structures.
Definition Types.h:25
std::array< GLfloat, 3 > vector3f
Type which correspond with a GLSL type and used to implement Vertex structures.
Definition Types.h:21
#define _XGL_FUNC
Definition xgl/global.h:34