Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4OpenGLImmediateXViewer Class Reference

#include <G4OpenGLImmediateXViewer.hh>

Inheritance diagram for G4OpenGLImmediateXViewer:

Public Member Functions

 G4OpenGLImmediateXViewer (G4OpenGLImmediateSceneHandler &scene, const G4String &name="")
virtual ~G4OpenGLImmediateXViewer ()
void Initialise ()
void DrawView ()
void FinishView ()
Public Member Functions inherited from G4OpenGLXViewer
 G4OpenGLXViewer (G4OpenGLSceneHandler &scene)
virtual ~G4OpenGLXViewer ()
void SetView ()
void ShowView ()
void SwitchToVisSubThread ()
void SwitchToMasterThread ()
void DrawText (const G4Text &)
Public Member Functions inherited from G4OpenGLViewer
virtual void ClearView ()
void ClearViewWithoutFlush ()
virtual bool exportImage (std::string name="", int width=-1, int height=-1)
bool setExportImageFormat (std::string format, bool quiet=false)
Public Member Functions inherited from G4VViewer
 G4VViewer (G4VSceneHandler &, G4int id, const G4String &name="")
virtual ~G4VViewer ()
void RefreshView ()
virtual G4bool ReadyToDraw ()
std::vector< G4ThreeVectorComputeFlyThrough (G4Vector3D *)
virtual void DoneWithMasterThread ()
virtual void MovingToVisSubThread ()
virtual void DoneWithVisSubThread ()
virtual void MovingToMasterThread ()
void InsertModelInSceneTree (G4VModel *)
const G4SceneTreeItemGetSceneTree ()
G4SceneTreeItemAccessSceneTree ()
void UpdateGUISceneTree ()
void UpdateGUIControlWidgets ()
void UpdateGUIDrawingStyle ()
void UpdateGUIProjectionStyle ()
void UpdateGUITransparencySlider ()
const G4StringGetName () const
const G4StringGetShortName () const
void SetName (const G4String &)
G4int GetViewId () const
G4VSceneHandlerGetSceneHandler () const
const G4ViewParametersGetViewParameters () const
const G4ViewParametersGetDefaultViewParameters () const
G4double GetKernelVisitElapsedTimeSeconds () const
virtual const std::vector< G4ModelingParameters::VisAttributesModifier > * GetPrivateVisAttributesModifiers () const
void SetViewParameters (const G4ViewParameters &vp)
void SetDefaultViewParameters (const G4ViewParameters &vp)
const G4VisAttributesGetApplicableVisAttributes (const G4VisAttributes *) const
void SetNeedKernelVisit (G4bool need)
void NeedKernelVisit ()
void ProcessView ()
void ProcessTransients ()
void ZoomFromMouseWheel (G4double delta, G4bool shift=false, G4double xPos=0, G4double yPos=0)
virtual G4bool GetWindowSize (unsigned int &a_w, unsigned int &a_h)
Public Member Functions inherited from G4OpenGLImmediateViewer
 G4OpenGLImmediateViewer (G4OpenGLImmediateSceneHandler &scene)
void ProcessView ()

Additional Inherited Members

Public Attributes inherited from G4VViewer
const G4int fMaxAllTouchables = 10000
G4bool fCurtailDescent = false
Protected Member Functions inherited from G4OpenGLXViewer
void GetXConnection ()
void CreateGLXContext (XVisualInfo *vi)
virtual void CreateMainWindow ()
virtual void CreateFontLists ()
Protected Member Functions inherited from G4OpenGLViewer
 G4OpenGLViewer (G4OpenGLSceneHandler &scene)
virtual ~G4OpenGLViewer ()
virtual void ResetView ()
void ChangePointSize (G4double size)
void ChangeLineWidth (G4double width)
void HaloingFirstPass ()
void HaloingSecondPass ()
void HLRFirstPass ()
void HLRSecondPass ()
void HLRThirdPass ()
void InitializeGLView ()
void ResizeGLView ()
void ResizeWindow (unsigned int, unsigned int)
virtual G4String Pick (GLdouble x, GLdouble y)
const std::vector< G4OpenGLViewerPickMap * > & GetPickDetails (GLdouble x, GLdouble y)
void rotateScene (G4double dx, G4double dy)
void rotateSceneToggle (G4double dx, G4double dy)
void setExportSize (G4int, G4int)
bool setExportFilename (G4String name, G4bool inc=true)
std::string getRealPrintFilename ()
unsigned int getWinWidth () const
unsigned int getWinHeight () const
G4bool sizeHasChanged ()
G4double GetSceneNearWidth ()
GLdouble getSceneFarWidth ()
GLdouble getSceneDepth ()
void addExportImageFormat (std::string format)
G4bool isGl2psWriting ()
G4bool isFramebufferReady ()
void g4GluPickMatrix (GLdouble x, GLdouble y, GLdouble width, GLdouble height, GLint viewport[4])
void g4GluLookAt (GLdouble eyex, GLdouble eyey, GLdouble eyez, GLdouble centerx, GLdouble centery, GLdouble centerz, GLdouble upx, GLdouble upy, GLdouble upz)
void g4GlOrtho (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near, GLdouble far)
void g4GlFrustum (GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near, GLdouble far)
bool IsGettingPickInfos () const
Protected Member Functions inherited from G4VViewer
void SetTouchable (const std::vector< G4PhysicalVolumeModel::G4PhysicalVolumeNodeID > &fullPath)
void TouchableSetVisibility (const std::vector< G4PhysicalVolumeModel::G4PhysicalVolumeNodeID > &fullPath, G4bool visibility)
void TouchableSetColour (const std::vector< G4PhysicalVolumeModel::G4PhysicalVolumeNodeID > &fullPath, const G4Colour &)
Protected Attributes inherited from G4OpenGLXViewer
XWindowAttributes xwa
Display * dpy
XVisualInfo * vi_immediate
XVisualInfo * vi_stored
XVisualInfo * vi
Colormap cmap
XSetWindowAttributes swa
GLXDrawable win
GLXContext cxMaster
GLXContext cxVisSubThread
XEvent event
G4intattributeList
G4int errorBase
G4int eventBase
G4int major
G4int minor
XSizeHints * norm_hints
XWMHints * wm_hints
XClassHint * class_hints
Pixmap icon_pixmap
XSizeHints * size_hints
Atom Xatom
XTextProperty windowName
XTextProperty iconName
char charViewName [100]
Protected Attributes inherited from G4OpenGLViewer
G4bool fPrintColour
G4bool fVectoredPs
G4OpenGLSceneHandlerfOpenGLSceneHandler
G4Colour background
G4bool transparency_enabled
G4bool antialiasing_enabled
G4bool haloing_enabled
G4gl2psfGL2PSAction
G4double fRot_sens
G4double fPan_sens
unsigned int fWinSize_x
unsigned int fWinSize_y
std::vector< std::string > fExportImageFormatVector
std::string fDefaultExportImageFormat
std::string fExportImageFormat
int fExportFilenameIndex
G4int fPrintSizeX
G4int fPrintSizeY
Protected Attributes inherited from G4VViewer
G4VSceneHandlerfSceneHandler
G4int fViewId
G4String fName
G4String fShortName
G4ViewParameters fVP
G4ViewParameters fDefaultVP
G4double fKernelVisitElapsedTimeSeconds = 999.
G4SceneTreeItem fSceneTree
G4bool fNeedKernelVisit
G4bool fTransientsNeedRedrawing
Static Protected Attributes inherited from G4OpenGLXViewer
static int snglBuf_RGBA [12]
static int dblBuf_RGBA [13]
static XVisualInfo * vi_single_buffer = 0
static XVisualInfo * vi_double_buffer = 0

Detailed Description

Definition at line 43 of file G4OpenGLImmediateXViewer.hh.

Constructor & Destructor Documentation

◆ G4OpenGLImmediateXViewer()

G4OpenGLImmediateXViewer::G4OpenGLImmediateXViewer ( G4OpenGLImmediateSceneHandler & scene,
const G4String & name = "" )

Definition at line 39 of file G4OpenGLImmediateXViewer.cc.

42 : G4VViewer (sceneHandler, sceneHandler.IncrementViewCount (), name),
43 G4OpenGLViewer (sceneHandler),
44 G4OpenGLXViewer (sceneHandler),
45 G4OpenGLImmediateViewer (sceneHandler)
46{
47 if (fViewId < 0) return; // In case error in base class instantiation.
48
49// ensure a suitable window was found
50 if (!vi_immediate) {
51 G4cerr << "G4OpenGLImmediateXViewer::G4OpenGLImmediateXViewer -"
52 " G4OpenGLXViewer couldn't get a visual." << G4endl;
53 fViewId = -1; // This flags an error.
54 return;
55 }
56}
G4GLOB_DLL std::ostream G4cerr
#define G4endl
Definition G4ios.hh:67
G4OpenGLImmediateViewer(G4OpenGLImmediateSceneHandler &scene)
G4OpenGLViewer(G4OpenGLSceneHandler &scene)
XVisualInfo * vi_immediate
G4OpenGLXViewer(G4OpenGLSceneHandler &scene)
G4int fViewId
Definition G4VViewer.hh:269
G4VViewer(G4VSceneHandler &, G4int id, const G4String &name="")
Definition G4VViewer.cc:49

◆ ~G4OpenGLImmediateXViewer()

G4OpenGLImmediateXViewer::~G4OpenGLImmediateXViewer ( )
virtual

Definition at line 58 of file G4OpenGLImmediateXViewer.cc.

58{}

Member Function Documentation

◆ DrawView()

void G4OpenGLImmediateXViewer::DrawView ( )
virtual

Implements G4VViewer.

Definition at line 76 of file G4OpenGLImmediateXViewer.cc.

76 {
77
79
80 if(style!=G4ViewParameters::hlr &&
82
85 ProcessView ();
86 glFlush ();
87
89
90 }
91
92 NeedKernelVisit (); // Always need to visit G4 kernel.
93 ProcessView ();
94 FinishView ();
95
96}
const G4ViewParameters & GetViewParameters() const
void NeedKernelVisit()
Definition G4VViewer.cc:85
DrawingStyle GetDrawingStyle() const

◆ FinishView()

void G4OpenGLImmediateXViewer::FinishView ( void )
virtual

Reimplemented from G4VViewer.

Definition at line 98 of file G4OpenGLImmediateXViewer.cc.

98 {
99// glXWaitGL (); //Wait for effects of all previous OpenGL commands to
100 //be propagated before progressing.
101// JA: Commented out July 2021 - slows rendering down in some cases and I
102// don't see any adverse effects.
103 glFlush ();
104}

Referenced by DrawView().

◆ Initialise()

void G4OpenGLImmediateXViewer::Initialise ( )
virtual

Reimplemented from G4VViewer.

Definition at line 60 of file G4OpenGLImmediateXViewer.cc.

60 {
61
65
67
68 // If a double buffer context has been forced upon us, ignore the
69 // back buffer for this OpenGLImmediate view.
70 glDrawBuffer (GL_FRONT);
71
72 glDepthFunc (GL_LEQUAL);
73 glDepthMask (GL_TRUE);
74}
void CreateGLXContext(XVisualInfo *vi)
virtual void CreateFontLists()
virtual void CreateMainWindow()

The documentation for this class was generated from the following files: