CMS 3D CMS Logo

GFlashEMShowerModel.h
Go to the documentation of this file.
1 //
2 //---------------------------------------------------------------
3 //
4 // GFlashEMShowerModel
5 //
6 // Class description:
7 //
8 // GFlash parameterisation shower model.
9 
10 // Authors: E.Barberio & Joanna Weng - 9.11.04
11 // other authors : Soon Yung Jun & Dongwook Jang - 2007/12/07
12 // V.Ivanchenko rename the class and move
13 // to SimG4Core/Application - 2012/08/14
14 //---------------------------------------------------------------
15 
16 #ifndef GFlashEMShowerModel_h
17 #define GFlashEMShowerModel_h
18 
20 
21 #include "G4VFastSimulationModel.hh"
22 #include "G4TouchableHandle.hh"
23 #include "G4Navigator.hh"
24 #include "G4Step.hh"
25 
27 class G4Region;
28 
29 class GFlashEMShowerModel : public G4VFastSimulationModel {
30 public:
31  GFlashEMShowerModel(const G4String& name, G4Envelope* env, const edm::ParameterSet& parSet);
32  ~GFlashEMShowerModel() override;
33 
34  G4bool ModelTrigger(const G4FastTrack&) override;
35  G4bool IsApplicable(const G4ParticleDefinition&) override;
36  void DoIt(const G4FastTrack&, G4FastStep&) override;
37 
38 private:
39  G4bool excludeDetectorRegion(const G4FastTrack& fastTrack);
40  void makeHits(const G4FastTrack& fastTrack);
41  void updateGflashStep(const G4ThreeVector& position, G4double time);
42 
43  //
46 
48 
49  const G4Region* theRegion;
50 
51  G4Step* theGflashStep;
52  G4Navigator* theGflashNavigator;
53  G4TouchableHandle theGflashTouchableHandle;
54 };
55 #endif
GFlashEMShowerModel::DoIt
void DoIt(const G4FastTrack &, G4FastStep &) override
Definition: GFlashEMShowerModel.cc:88
protons_cff.time
time
Definition: protons_cff.py:39
GFlashEMShowerModel
Definition: GFlashEMShowerModel.h:29
GFlashEMShowerModel::theParSet
edm::ParameterSet theParSet
Definition: GFlashEMShowerModel.h:44
GFlashEMShowerModel::theProfile
GflashEMShowerProfile * theProfile
Definition: GFlashEMShowerModel.h:47
GFlashEMShowerModel::updateGflashStep
void updateGflashStep(const G4ThreeVector &position, G4double time)
Definition: GFlashEMShowerModel.cc:164
GflashEMShowerProfile
Definition: GflashEMShowerProfile.h:15
GFlashEMShowerModel::IsApplicable
G4bool IsApplicable(const G4ParticleDefinition &) override
Definition: GFlashEMShowerModel.cc:46
web.browse_db.env
env
Definition: browse_db.py:18
edm::ParameterSet
Definition: ParameterSet.h:47
GFlashEMShowerModel::theRegion
const G4Region * theRegion
Definition: GFlashEMShowerModel.h:49
position
static int position[264][3]
Definition: ReadPGInfo.cc:289
GFlashEMShowerModel::theGflashStep
G4Step * theGflashStep
Definition: GFlashEMShowerModel.h:51
GFlashEMShowerModel::makeHits
void makeHits(const G4FastTrack &fastTrack)
Definition: GFlashEMShowerModel.cc:112
GFlashEMShowerModel::theGflashNavigator
G4Navigator * theGflashNavigator
Definition: GFlashEMShowerModel.h:52
GFlashEMShowerModel::excludeDetectorRegion
G4bool excludeDetectorRegion(const G4FastTrack &fastTrack)
Definition: GFlashEMShowerModel.cc:172
GFlashEMShowerModel::ModelTrigger
G4bool ModelTrigger(const G4FastTrack &) override
Definition: GFlashEMShowerModel.cc:51
GFlashEMShowerModel::theGflashTouchableHandle
G4TouchableHandle theGflashTouchableHandle
Definition: GFlashEMShowerModel.h:53
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
ParameterSet.h
GFlashEMShowerModel::GFlashEMShowerModel
GFlashEMShowerModel(const G4String &name, G4Envelope *env, const edm::ParameterSet &parSet)
Definition: GFlashEMShowerModel.cc:25
GFlashEMShowerModel::~GFlashEMShowerModel
~GFlashEMShowerModel() override
Definition: GFlashEMShowerModel.cc:41
GFlashEMShowerModel::theWatcherOn
bool theWatcherOn
Definition: GFlashEMShowerModel.h:45