34 #ifdef G4VIS_BUILD_OPENGLX_DRIVER
42 G4OpenGLStoredXViewer::
43 G4OpenGLStoredXViewer (G4OpenGLStoredSceneHandler& sceneHandler,
45 :
G4VViewer (sceneHandler, sceneHandler.IncrementViewCount (), name),
46 G4OpenGLViewer (sceneHandler),
47 G4OpenGLXViewer (sceneHandler),
48 G4OpenGLStoredViewer (sceneHandler)
50 if (fViewId < 0)
return;
54 G4cerr <<
"G4OpenGLStoredXViewer::G4OpenGLStoredXViewer -"
55 " G4OpenGLXViewer couldn't get a visual." <<
G4endl;
60 G4OpenGLStoredXViewer::~G4OpenGLStoredXViewer () {}
62 void G4OpenGLStoredXViewer::Initialise () {
64 #ifdef G4DEBUG_VIS_OGL
65 printf(
"G4OpenGLStoredXViewer::Initialise\n");
67 CreateGLXContext (vi_stored);
73 glDrawBuffer (GL_BACK);
76 void G4OpenGLStoredXViewer::DrawView () {
78 #ifdef G4DEBUG_VIS_OGL
79 printf(
"G4OpenGLStoredXViewer::DrawView\n");
100 if (!fNeedKernelVisit) KernelVisitDecision ();
101 G4bool kernelVisitWasNeeded = fNeedKernelVisit;
108 #ifdef G4DEBUG_VIS_OGL
109 printf(
"G4OpenGLStoredXViewer::DrawView flush \n");
113 HaloingSecondPass ();
119 if (!kernelVisitWasNeeded) {
120 #ifdef G4DEBUG_VIS_OGL
121 printf(
"G4OpenGLStoredXViewer::DrawView NO need kernel visit\n");
127 #ifdef G4DEBUG_VIS_OGL
128 printf(
"G4OpenGLStoredXViewer::DrawView NEED kernel visit\n");
132 if (fVP.IsCutaway() &&
146 void G4OpenGLStoredXViewer::FinishView () {
147 #ifdef G4DEBUG_VIS_OGL
148 printf(
"G4OpenGLStoredXViewer::FinishView\n");
153 #ifdef G4DEBUG_VIS_OGL
154 printf(
"G4OpenGLStoredXViewer::FinishView flush \n");
159 glGetIntegerv(GL_RENDER_MODE, &renderMode);
160 if (renderMode == GL_RENDER) glXSwapBuffers (dpy, win);
G4GLOB_DLL std::ostream G4cerr