Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4OpenInventorQtViewer.hh
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25
26// Frederick Jones TRIUMF 07 November 2017
27// Open Inventor viewer using SoQt.
28
29#ifndef G4OPENINVENTORQTVIEWER_HH
30#define G4OPENINVENTORQTVIEWER_HH
31
32#if defined (G4VIS_BUILD_OIQT_DRIVER) || defined (G4VIS_USE_OIQT)
33
34// Inheritance :
36
37#include <Inventor/nodes/SoEventCallback.h>
38
39//class SoQtExaminerViewer;
40class G4OpenInventorQtExaminerViewer;
41
42#include <qobject.h>
43
44class QMenuBar;
45class QFont;
46class QAction;
47
48
49//class G4OpenInventorQtViewer: public G4OpenInventorViewer {
50class G4OpenInventorQtViewer: public QObject,
51 public G4OpenInventorViewer {
52
53 Q_OBJECT
54
55private Q_SLOTS :
56
57 // File menu
58 void FileWritePSCB();
59 void FileWritePDFCB();
60 void FileWriteIVCB();
61 void FileEscapeCB();
62
63 // Etc menu
64 void EtcEraseDetectorCB();
65 void EtcEraseEventCB();
66 void EtcSetSolidCB();
67 void EtcSetReducedWireframeCB();
68 void EtcSetFullWireframeCB();
69 void EtcVisibMInvisibDCB();
70 void EtcVisibMVisibDCB();
71 void EtcUpdateSceneCB();
72 void EtcSceneGraphStatsCB();
73
74private:
75
76 // File menu
77 QAction* FileWritePS;
78 QAction* FileWritePDF;
79 QAction* FileWriteIV;
80 QAction* FileEscape;
81
82 // Etc menu
83 QAction* EtcEraseDetector;
84 QAction* EtcEraseEvent;
85 QAction* EtcSetSolid;
86 QAction* EtcSetReducedWireframe;
87 QAction* EtcSetFullWireframe;
88 QAction* EtcVisibMInvisibD;
89 QAction* EtcVisibMVisibD;
90 QAction* EtcUpdateScene;
91 QAction* EtcSceneGraphStats;
92
93public:
94
95 G4OpenInventorQtViewer(G4OpenInventorSceneHandler& scene,
96 const G4String& name = "");
97 virtual ~G4OpenInventorQtViewer();
98 void Initialise();
99
100public: //G4VViewer
101
102 virtual void FinishView();
103 virtual void SetView();
104
105protected:
106
107 virtual void ViewerRender();
108 virtual SoCamera* GetCamera();
109
110protected:
111
112 //SoQtExaminerViewer* fViewer;
113 G4OpenInventorQtExaminerViewer* fViewer;
114
115};
116
117#endif
118
119#endif