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

#include <G4ToolsSGOffscreen.hh>

+ Inheritance diagram for G4ToolsSGOffscreen:

Public Member Functions

 G4ToolsSGOffscreen ()
 
virtual ~G4ToolsSGOffscreen ()
 
G4VSceneHandlerCreateSceneHandler (const G4String &name="")
 
G4VViewerCreateViewer (G4VSceneHandler &, const G4String &name="")
 
- Public Member Functions inherited from G4VGraphicsSystem
 G4VGraphicsSystem (const G4String &name, Functionality f)
 
 G4VGraphicsSystem (const G4String &name, const G4String &nickname, Functionality f)
 
 G4VGraphicsSystem (const G4String &name, const G4String &nickname, const G4String &description, Functionality f)
 
virtual ~G4VGraphicsSystem ()
 
const G4StringGetName () const
 
const G4StringGetNickname () const
 
const std::vector< G4String > & GetNicknames () const
 
const G4StringGetDescription () const
 
Functionality GetFunctionality () const
 
virtual G4bool IsUISessionCompatible () const
 
void AddNickname (const G4String &nickname)
 

Protected Member Functions

 G4ToolsSGOffscreen (const G4ToolsSGOffscreen &a_from)
 
G4ToolsSGOffscreenoperator= (const G4ToolsSGOffscreen &)
 
void Initialise ()
 

Protected Attributes

tools::offscreen::session * fSGSession
 
- Protected Attributes inherited from G4VGraphicsSystem
G4String fName
 
std::vector< G4StringfNicknames
 
G4String fDescription
 
Functionality fFunctionality
 

Additional Inherited Members

- Public Types inherited from G4VGraphicsSystem
enum  Functionality {
  noFunctionality , nonEuclidian , twoD , twoDStore ,
  threeD , threeDInteractive , virtualReality , fileWriter
}
 

Detailed Description

Definition at line 35 of file G4ToolsSGOffscreen.hh.

Constructor & Destructor Documentation

◆ G4ToolsSGOffscreen() [1/2]

G4ToolsSGOffscreen::G4ToolsSGOffscreen ( )

Definition at line 34 of file G4ToolsSGOffscreen.cc.

34 :
35parent
36("TOOLSSG_OFFSCREEN",
37 "TSG_OFFSCREEN",
38 "TOOLSSG_OFFSCREEN is a graphics driver based on the g4tools tools/sg scene graph logic where\n\
39 the rendering is done by using various offscreen library as tools/sg/zb, gl2ps, png, jpeg.",
41,fSGSession(nullptr)
42{}
tools::offscreen::session * fSGSession

◆ ~G4ToolsSGOffscreen()

G4ToolsSGOffscreen::~G4ToolsSGOffscreen ( )
virtual

Definition at line 44 of file G4ToolsSGOffscreen.cc.

44 {
45 delete fSGSession;
46}

◆ G4ToolsSGOffscreen() [2/2]

G4ToolsSGOffscreen::G4ToolsSGOffscreen ( const G4ToolsSGOffscreen & a_from)
inlineprotected

Definition at line 41 of file G4ToolsSGOffscreen.hh.

41:parent(a_from){}

Member Function Documentation

◆ CreateSceneHandler()

G4VSceneHandler * G4ToolsSGOffscreen::CreateSceneHandler ( const G4String & name = "")
virtual

Implements G4VGraphicsSystem.

Definition at line 59 of file G4ToolsSGOffscreen.cc.

59 {
60 G4VSceneHandler* pScene = new G4ToolsSGSceneHandler(*this,a_name);
61 return pScene;
62}

◆ CreateViewer()

G4VViewer * G4ToolsSGOffscreen::CreateViewer ( G4VSceneHandler & a_scene,
const G4String & name = "" )
virtual

Implements G4VGraphicsSystem.

Definition at line 64 of file G4ToolsSGOffscreen.cc.

64 {
66 if(!fSGSession) return nullptr;
68 if (pView) {
69 if (pView->GetViewId() < 0) {
70 G4cerr <<
71 "G4ToolsSGOffscreen::CreateViewer: ERROR flagged by negative"
72 " view id in G4ToolsSGViewer creation."
73 "\n Destroying view and returning null pointer."
74 << G4endl;
75 delete pView;
76 pView = nullptr;
77 }
78 }
79 if (!pView) {
80 G4cerr <<
81 "G4ToolsSGOffscreen::CreateViewer: ERROR: null pointer on new G4ToolsSGViewer."
82 << G4endl;
83 }
84 return pView;
85}
G4GLOB_DLL std::ostream G4cerr
#define G4endl
Definition G4ios.hh:67
G4int GetViewId() const

◆ Initialise()

void G4ToolsSGOffscreen::Initialise ( )
protected

Definition at line 48 of file G4ToolsSGOffscreen.cc.

48 {
49 if(fSGSession) return; //done.
50 fSGSession = new tools::offscreen::session(G4cout);
51 if(!fSGSession->is_valid()) {
52 G4cerr << "G4ToolsSGOffscreen::Initialise : session::is_valid() failed." << G4endl;
53 delete fSGSession;
54 fSGSession = nullptr;
55 return;
56 }
57}
G4GLOB_DLL std::ostream G4cout

Referenced by CreateViewer().

◆ operator=()

G4ToolsSGOffscreen & G4ToolsSGOffscreen::operator= ( const G4ToolsSGOffscreen & )
inlineprotected

Definition at line 42 of file G4ToolsSGOffscreen.hh.

42{return *this;}

Member Data Documentation

◆ fSGSession

tools::offscreen::session* G4ToolsSGOffscreen::fSGSession
protected

Definition at line 49 of file G4ToolsSGOffscreen.hh.

Referenced by CreateViewer(), Initialise(), and ~G4ToolsSGOffscreen().


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