CMS 3D CMS Logo

GflashHadronShowerModel.h

Go to the documentation of this file.
00001 #ifndef GflashHadronShowerModel_H
00002 #define GflashHadronShowerModel_H
00003 
00004 #include "G4VFastSimulationModel.hh"
00005 #include "G4TouchableHandle.hh"
00006 #include "G4Navigator.hh"
00007 
00008 class GflashHadronShowerProfile;
00009 class GflashHistogram;
00010 class G4Step;
00011 
00012 class GflashHadronShowerModel : public G4VFastSimulationModel 
00013 {
00014 public:
00015   //-------------------------
00016   // Constructor, destructor
00017   //-------------------------
00018   GflashHadronShowerModel (G4String modelName, G4Region* envelope);
00019   ~GflashHadronShowerModel ();
00020 
00021   //------------------------------------------------------------------------
00022   // Virtual methods that should be implemented for this hadron shower model
00023   //------------------------------------------------------------------------
00024 
00025   G4bool IsApplicable(const G4ParticleDefinition&);
00026   G4bool ModelTrigger(const G4FastTrack &);
00027   void DoIt(const G4FastTrack&, G4FastStep&);
00028 
00029 private:
00030   G4bool isFirstInelasticInteraction(const G4FastTrack& fastTrack);
00031   G4bool excludeDetectorRegion(const G4FastTrack& fastTrack);
00032 
00033 private:  
00034 
00035   GflashHadronShowerProfile *theProfile;
00036   G4Step *theGflashStep; 
00037   G4Navigator *theGflashNavigator;
00038   G4TouchableHandle  theGflashTouchableHandle;
00039 
00040   //debugging histograms
00041   GflashHistogram* theHisto;
00042 };
00043 
00044 #endif

Generated on Tue Jun 9 17:47:04 2009 for CMSSW by  doxygen 1.5.4