GEMC  1.8
Geant4 Monte-Carlo Framework
gemc_MainGui.h
Go to the documentation of this file.
1 #ifndef gemc_MAINGUI_H
2 #define gemc_MAINGUI_H
3 
4 // %%%%%%%%%%
5 // Qt headers
6 // %%%%%%%%%%
7 #include <QComboBox>
8 #include <QGroupBox>
9 #include <QLCDNumber>
10 #include <QLineEdit>
11 #include <QObject>
12 #include <QPushButton>
13 #include <QSlider>
14 #include <QVBoxLayout>
15 #include <QWidget>
16 
17 #include <QListWidgetItem>
18 #include <QStackedWidget>
19 
20 // %%%%%%%%%%
21 // G4 headers
22 // %%%%%%%%%%
23 #include "G4Material.hh"
24 #include "G4RunManager.hh"
25 #include "G4VisManager.hh"
26 #include "G4UImanager.hh"
27 
28 // %%%%%%%%%%%%%
29 // gemc headers
30 // %%%%%%%%%%%%%
31 #include "MSensitiveDetector.h"
32 #include "usage.h"
33 #include "run_control.h"
34 #include "camera_control.h"
35 #include "detector_tree.h"
36 #include "infos.h"
37 #include "g4dialog.h"
38 #include "gsignal.h"
39 
40 // %%%%%%%%%%%%%%%%
41 // Class definition
42 // %%%%%%%%%%%%%%%%
43 class gemcMainWidget : public QWidget
44 {
45  // metaobject required for non-qt slots
46  Q_OBJECT
47 
48  public:
49  gemcMainWidget(G4RunManager*, G4VisManager*, gemc_opts*, map<string, MSensitiveDetector*>);
51 
52  map<string, detector> *Hall_Map;
53  map<string, G4Material*> *mats;
54  map<string, MSensitiveDetector*> SeDe_Map;
55 
57 
58  private:
59 
60  // passing G4 managers to QT so we can delete them when QT quits
61  // and can access directly the UImanager
62  G4RunManager *runManager;
63  G4VisManager *visManager;
64  G4UImanager *UImanager;
65 
66  detector_tree *DTree;
67  gsignal *gsig;
68 
69  private slots:
70  void Build_DTree();
71  // qApp->quit() also calls an exit from main - so need to these
72  void gemc_quit(){delete visManager ; delete runManager; qApp->quit();}
73 
74  private:
75  void createIcons();
76 
77  QListWidget *contentsWidget;
78  QStackedWidget *pagesWidget;
79  QColor i_default;
80  QColor i_hovered;
81 
82  public slots:
83  void changePage(QListWidgetItem *current, QListWidgetItem *previous);
84  void change_background(QListWidgetItem*);
85 
86 };
87 
88 #endif
89 
90 
91 
gemc_opts * gemcOpt
Definition: gemc_MainGui.h:56
map< string, MSensitiveDetector * > SeDe_Map
Sensitive detector Map.
Definition: gemc_MainGui.h:54
map< string, G4Material * > * mats
Materials Map.
Definition: gemc_MainGui.h:53
gemcMainWidget(G4RunManager *, G4VisManager *, gemc_opts *, map< string, MSensitiveDetector * >)
Definition: gemc_MainGui.cc:27
void change_background(QListWidgetItem *)
map< string, detector > * Hall_Map
Detectors Map.
Definition: gemc_MainGui.h:52
void changePage(QListWidgetItem *current, QListWidgetItem *previous)