qtopengl_prototype.h
Go to the documentation of this file.
1 
7 #ifndef QTOPENGL_PROTOTYPE_H
8 #define QTOPENGL_PROTOTYPE_H
9 
10 namespace argos {
11  class CPrototypeEntity;
12 }
13 
14 #ifdef __APPLE__
15 #include <gl.h>
16 #else
17 #include <GL/gl.h>
18 #endif
19 
20 namespace argos {
21 
23 
24  public:
25 
27 
28  virtual ~CQTOpenGLPrototype();
29 
30  virtual void DrawEntity(CPrototypeEntity& c_entity);
31 
32  virtual void DrawDevices(CPrototypeEntity& c_entity);
33 
34  private:
35 
36  void MakeBox();
37  void MakeCylinder();
38  void MakeSphere();
39  void MakeLED();
40  void MakePoles();
41  void MakeTag();
42  void MakeTagTexture();
43 
44  private:
45 
46  GLuint m_unBaseList;
47  GLuint m_unBoxList;
48  GLuint m_unCylinderList;
49  GLuint m_unSphereList;
50  GLuint m_unLEDList;
51  GLuint m_unPoleList;
52  GLuint m_unTagList;
53  GLuint m_unVertices;
54  GLuint m_unTagTex;
55 
56  const GLfloat m_fTagTexture[48] = {
57  1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f,
58  0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f,
59  1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f,
60  0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f,
61  /* shade the bottom corner in debug mode */
62 #ifndef NDEBUG
63  0.5f, 0.5f, 0.5f
64 #else
65  1.0f, 1.0f, 1.0f
66 #endif
67  };
68  };
69 }
70 
71 #endif
virtual void DrawEntity(CPrototypeEntity &c_entity)
virtual void DrawDevices(CPrototypeEntity &c_entity)
The namespace containing all the ARGoS related code.
Definition: ci_actuator.h:12