33#ifndef G4OPENGLSCENEHANDLER_HH
34#define G4OPENGLSCENEHANDLER_HH
106#ifdef G4OPENGL_VERSION_2
109 std::vector<double> fOglVertex;
111 std::vector<unsigned short> fOglIndices;
114 GLenum fDrawArrayType;
116 bool fEmulate_GL_QUADS;
118 void OptimizeVBOForTrd();
119 void OptimizeVBOForCons(
G4int aNoFacet);
122 void glBeginVBO(GLenum type);
123 void drawVBOArray(std::vector<double> vertices);
126 GLuint fVertexBufferObject;
127 GLuint fIndicesBufferObject;
144#ifdef G4OPENGL_VERSION_2
151 inline void setVboDrawer(G4OpenGLVboDrawer* drawer) {
154 G4OpenGLVboDrawer* fVboDrawer;
180#include "G4OpenGLSceneHandler.icc"
G4DisplacedSolid * CreateCutawaySolid()
virtual void EndPrimitives()
void AddSolid(const G4Trd &)
G4bool fThirdPassForNonHiddenMarkersRequested
void AddSolid(const G4Torus &)
void AddPrimitivesSquare(const std::vector< G4VMarker > &)
void ClearAndDestroyAtts()
void AddSolid(const G4Ellipsoid &)
static void SetFlushAction(FlushAction action)
void AddSolid(const G4Polycone &)
virtual void BeginPrimitives2D(const G4Transform3D &objectTransformation)
G4bool fThirdPassForNonHiddenMarkers
static G4int GetEntitiesFlushInterval()
static FlushAction fFlushAction
void AddSolid(const G4Orb &)
void AddSolid(const G4TessellatedSolid &)
static G4int fEntitiesFlushInterval
void PreAddSolid(const G4Transform3D &objectTransformation, const G4VisAttributes &)
void AddSolid(const G4VSolid &)
static void SetEntitiesFlushInterval(G4int interval)
void AddSolid(const G4Sphere &)
void AddPrimitive(const G4Polyline &)
void AddCompound(const G4VTrajectory &)
void AddSolid(const G4Para &)
void AddPrimitivesCircle(const std::vector< G4VMarker > &)
virtual void EndPrimitives2D()
void AddSolid(const G4Polyhedra &)
virtual void BeginPrimitives(const G4Transform3D &objectTransformation)
void AddSolid(const G4Trap &)
static const GLubyte fStippleMaskHashed[128]
void AddSolid(const G4Tubs &)
G4bool fSecondPassForTransparency
virtual ~G4OpenGLSceneHandler()
void AddSolid(const G4Box &)
G4DisplacedSolid * CreateSectionSolid()
void AddSolid(const G4Cons &)
static FlushAction GetFlushAction()
std::map< GLuint, G4AttHolder * > fPickMap
G4bool fSecondPassForTransparencyRequested
virtual void AddPrimitive(const G4Polyline &)=0