BALL
1.5.0
include
BALL
VIEW
RENDERING
vertexBuffer.h
Go to the documentation of this file.
1
// -*- Mode: C++; tab-width: 2; -*-
2
// vi: set ts=2:
3
//
4
// $Id: vertexBuffer.h,v 1.6 2005/12/23 17:02:21 amoll Exp $
5
//
6
7
#ifndef BALL_VIEW_RENDERING_RENDERERS_VERTEXBUFFER_H
8
#define BALL_VIEW_RENDERING_RENDERERS_VERTEXBUFFER_H
9
10
#ifndef BALL_COMMON_H
11
# include <
BALL/common.h
>
12
#endif
13
14
#ifndef BALL_VIEW_KERNEL_COMMON_H
15
# include <
BALL/VIEW/KERNEL/common.h
>
16
#endif
17
18
#ifndef BALL_VIEW_DATATYPE_COLORRGBA_H
19
# include <
BALL/VIEW/DATATYPE/colorRGBA.h
>
20
#endif
21
22
//#include <QtGui/QOpenGLFunctions>
23
24
namespace
BALL
25
{
26
namespace
VIEW
27
{
28
class
Mesh;
29
class
GLRenderer;
30
42
class
BALL_VIEW_EXPORT
MeshBuffer
//: protected QOpenGLFunctions
43
{
44
public
:
45
46
BALL_CREATE
(
MeshBuffer
)
47
48
typedef GLuint Buffer[4];
49
51
MeshBuffer
();
52
54
MeshBuffer
(const
MeshBuffer
& mesh_buffer);
55
57
virtual ~
MeshBuffer
();
58
62
static
bool
initGL();
63
65
const
MeshBuffer
& operator = (const
MeshBuffer
& buffer);
66
68
const
Mesh
* getMesh() {
return
mesh_;}
69
71
void
setMesh
(
const
Mesh
& mesh) {mesh_ = & mesh;}
72
74
bool
initialize();
75
77
bool
draw();
78
80
void
clear();
81
83
void
clearBuffer();
84
86
bool
isBusy
()
const
{
return
busy_;}
87
93
static
void
setGLRenderer
(
GLRenderer
* renderer) { gl_renderer_ = renderer;}
94
95
protected
:
96
97
const
Mesh
*
mesh_
;
98
Buffer
buffer_
;
99
bool
filled_
;
100
static
GLRenderer
*
gl_renderer_
;
101
bool
busy_
;
102
bool
multiple_colors_
;
103
ColorRGBA
color_
;
104
Size
vertices_
;
105
Size
triangles_
;
106
};
107
108
}
// namespace VIEW
109
}
// namespace BALL
110
111
#endif // BALL_VIEW_RENDERING_VERTEXBUFFER_H
BALL::VIEW::MeshBuffer::setGLRenderer
static void setGLRenderer(GLRenderer *renderer)
Definition:
vertexBuffer.h:93
BALL::VIEW::MeshBuffer::setMesh
void setMesh(const Mesh &mesh)
Set the Mesh which shall be drawn with this buffer object.
Definition:
vertexBuffer.h:71
BALL::VIEW::MeshBuffer::busy_
bool busy_
Definition:
vertexBuffer.h:101
BALL::VIEW::MeshBuffer::filled_
bool filled_
Definition:
vertexBuffer.h:99
BALL
Definition:
constants.h:12
common.h
BALL::VIEW::MeshBuffer::gl_renderer_
static GLRenderer * gl_renderer_
Definition:
vertexBuffer.h:100
BALL::VIEW::ColorRGBA
Definition:
colorRGBA.h:31
BALL::VIEW::GLRenderer
Definition:
glRenderer.h:69
BALL::VIEW::MeshBuffer::triangles_
Size triangles_
Definition:
vertexBuffer.h:105
BALL_SIZE_TYPE
BALL::VIEW::MeshBuffer::buffer_
Buffer buffer_
Definition:
vertexBuffer.h:98
BALL::VIEW::Mesh
Definition:
mesh.h:38
colorRGBA.h
common.h
BALL::VIEW::MeshBuffer::color_
ColorRGBA color_
Definition:
vertexBuffer.h:103
BALL::VIEW::MeshBuffer::mesh_
const Mesh * mesh_
Definition:
vertexBuffer.h:97
BALL_VIEW_EXPORT
#define BALL_VIEW_EXPORT
Definition:
COMMON/global.h:52
BALL::VIEW::MeshBuffer
Definition:
vertexBuffer.h:42
BALL::VIEW::MeshBuffer::isBusy
bool isBusy() const
Return true, if currently updateing or drawing.
Definition:
vertexBuffer.h:86
BALL::VIEW::MeshBuffer::vertices_
Size vertices_
Definition:
vertexBuffer.h:104
BALL_CREATE
#define BALL_CREATE(name)
Definition:
create.h:62
BALL::VIEW::MeshBuffer::multiple_colors_
bool multiple_colors_
Definition:
vertexBuffer.h:102
Generated by
1.8.17