CMS 3D CMS Logo

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 G4Region;
18 //class GflashHistogram;
19 
20 class GFlashHadronShowerModel : public G4VFastSimulationModel
21 {
22 public:
23  //-------------------------
24  // Constructor, destructor
25  //-------------------------
26  GFlashHadronShowerModel (G4String modelName, G4Region* envelope,
27  const edm::ParameterSet& parSet);
29 
30  //------------------------------------------------------------------------
31  // Virtual methods that should be implemented for this hadron shower model
32  //------------------------------------------------------------------------
33 
34  G4bool IsApplicable(const G4ParticleDefinition&);
35  G4bool ModelTrigger(const G4FastTrack &);
36  void DoIt(const G4FastTrack&, G4FastStep&);
37 
38 private:
39  G4bool isFirstInelasticInteraction(const G4FastTrack& fastTrack);
40  G4bool excludeDetectorRegion(const G4FastTrack& fastTrack);
41  void makeHits(const G4FastTrack& fastTrack);
42  void updateGflashStep(const G4ThreeVector& position, G4double time);
43 
44 private:
45 
46  G4bool theWatcherOn;
54 
55  const G4Region* theRegion;
56 
57  G4Step *theGflashStep;
58  G4Navigator *theGflashNavigator;
59  G4TouchableHandle theGflashTouchableHandle;
60 
61  //debugging histograms
62  //GflashHistogram* theHisto;
63 };
64 
65 #endif
GFlashHadronShowerModel(G4String modelName, G4Region *envelope, const edm::ParameterSet &parSet)
GflashPiKShowerProfile * thePiKProfile
GflashKaonMinusShowerProfile * theKaonMinusProfile
G4TouchableHandle theGflashTouchableHandle
GflashKaonPlusShowerProfile * theKaonPlusProfile
G4bool IsApplicable(const G4ParticleDefinition &)
GflashAntiProtonShowerProfile * theAntiProtonProfile
G4bool excludeDetectorRegion(const G4FastTrack &fastTrack)
GflashHadronShowerProfile * theProfile
void makeHits(const G4FastTrack &fastTrack)
void DoIt(const G4FastTrack &, G4FastStep &)
GflashProtonShowerProfile * theProtonProfile
void updateGflashStep(const G4ThreeVector &position, G4double time)
G4bool isFirstInelasticInteraction(const G4FastTrack &fastTrack)
G4bool ModelTrigger(const G4FastTrack &)
static int position[264][3]
Definition: ReadPGInfo.cc:509