source: trunk/examples/novice/gemc/src/MDetectorConstruction.h@ 1326

Last change on this file since 1326 was 807, checked in by garnier, 17 years ago

update

File size: 1.2 KB
Line 
1
2
3
4
5
6
7
8
9
10
11
12
13#ifndef MDetectorConstruction_h
14#define MDetectorConstruction_h 1
15
16// %%%%%%%%%%
17// G4 headers
18// %%%%%%%%%%
19#include "G4VUserDetectorConstruction.hh"
20#include "globals.hh"
21#include "G4Material.hh"
22#include "G4Region.hh"
23
24// %%%%%%%%%%%%%
25// gemc headers
26// %%%%%%%%%%%%%
27#include "usage.h"
28#include "detector.h"
29#include "MagneticField.h"
30#include "MPHBaseClass.h"
31#include "MSensitiveDetector.h"
32class MDetectorMessenger;
33
34// %%%%%%%%%%%%%%%%
35// Class definition
36// %%%%%%%%%%%%%%%%
37class MDetectorConstruction : public G4VUserDetectorConstruction
38{
39 public:
40 MDetectorConstruction(gemc_opts Opts);
41 ~MDetectorConstruction();
42
43 public:
44 gemc_opts gemcOpt;
45 map<string, G4Material*> *MMats;
46 map<string, MSensitiveDetector*> SeDe_Map;
47 map<string, detector> *Hall_Map;
48 map<string, MagneticField> *FieldMap;
49 map<string, G4Region*> SeRe_Map;
50 map<string, G4ProductionCuts*> SePC_Map;
51
52 private:
53// MDetectorMessenger *mdetectorMessenger; ///< pointer to the Messenger
54
55 public:
56 void IsSensitive(detector, gemc_opts);
57 void HasMagfield(detector, gemc_opts);
58 G4VPhysicalVolume* Construct();
59 void UpdateGeometry();
60
61 private:
62 void DefineMaterials();
63
64};
65
66#endif
Note: See TracBrowser for help on using the repository browser.