CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
GflashHadronShowerModel.h
Go to the documentation of this file.
1 #ifndef GflashHadronShowerModel_H
2 #define GflashHadronShowerModel_H
3 
5 #include "G4VFastSimulationModel.hh"
6 
7 #include "G4TouchableHandle.hh"
8 #include "G4Navigator.hh"
9 #include "G4Step.hh"
10 
17 class GflashHistogram;
18 
19 class GflashHadronShowerModel : public G4VFastSimulationModel
20 {
21 public:
22  //-------------------------
23  // Constructor, destructor
24  //-------------------------
25  GflashHadronShowerModel (G4String modelName, G4Region* envelope, const edm::ParameterSet& parSet);
27 
28  //------------------------------------------------------------------------
29  // Virtual methods that should be implemented for this hadron shower model
30  //------------------------------------------------------------------------
31 
32  G4bool IsApplicable(const G4ParticleDefinition&);
33  G4bool ModelTrigger(const G4FastTrack &);
34  void DoIt(const G4FastTrack&, G4FastStep&);
35 
36 private:
37  G4bool isFirstInelasticInteraction(const G4FastTrack& fastTrack);
38  G4bool excludeDetectorRegion(const G4FastTrack& fastTrack);
39  void makeHits(const G4FastTrack& fastTrack);
40  void updateGflashStep(const G4ThreeVector& position, G4double time);
41 
42 private:
43 
44  G4bool theWatcherOn;
52 
53  G4Step *theGflashStep;
54  G4Navigator *theGflashNavigator;
55  G4TouchableHandle theGflashTouchableHandle;
56 
57  //debugging histograms
59 
60 };
61 
62 #endif
G4bool ModelTrigger(const G4FastTrack &)
GflashKaonMinusShowerProfile * theKaonMinusProfile
GflashAntiProtonShowerProfile * theAntiProtonProfile
void updateGflashStep(const G4ThreeVector &position, G4double time)
void makeHits(const G4FastTrack &fastTrack)
static int position[TOTALCHAMBERS][3]
Definition: ReadPGInfo.cc:509
void DoIt(const G4FastTrack &, G4FastStep &)
GflashHadronShowerProfile * theProfile
G4TouchableHandle theGflashTouchableHandle
G4bool isFirstInelasticInteraction(const G4FastTrack &fastTrack)
G4bool excludeDetectorRegion(const G4FastTrack &fastTrack)
GflashKaonPlusShowerProfile * theKaonPlusProfile
GflashPiKShowerProfile * thePiKProfile
GflashProtonShowerProfile * theProtonProfile
G4bool IsApplicable(const G4ParticleDefinition &)
GflashHadronShowerModel(G4String modelName, G4Region *envelope, const edm::ParameterSet &parSet)