CMS 3D CMS Logo

MaterialBudgetHcal.h

Go to the documentation of this file.
00001 #ifndef Validation_Geometry_MaterialBudgetHcal_h
00002 #define Validation_Geometry_MaterialBudgetHcal_h
00003 
00004 #include "Validation/Geometry/interface/MaterialBudgetHcalHistos.h"
00005 
00006 #include "SimG4Core/Watcher/interface/SimWatcher.h"
00007 #include "SimG4Core/Notification/interface/Observer.h"
00008 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00009 
00010 #include <CLHEP/Vector/LorentzVector.h>
00011 
00012 class BeginOfJob;
00013 class BeginOfTrack;
00014 class G4Step;
00015 class EndOfTrack;
00016 
00017 class MaterialBudgetHcal : public SimWatcher, 
00018                            public Observer<const BeginOfJob*>,
00019                            public Observer<const BeginOfTrack*>,
00020                            public Observer<const G4Step*>,
00021                            public Observer<const EndOfTrack*> {
00022 
00023 public:
00024 
00025   MaterialBudgetHcal(const edm::ParameterSet&);
00026   virtual ~MaterialBudgetHcal();
00027   
00028 private:
00029 
00030   MaterialBudgetHcal(const MaterialBudgetHcal&); // stop default
00031   const MaterialBudgetHcal& operator=(const MaterialBudgetHcal&); // stop default
00032   
00033   void update(const BeginOfJob*);
00034   void update(const BeginOfTrack*);
00035   void update(const G4Step*);
00036   void update(const EndOfTrack*);
00037 
00038   bool stopAfter(const G4Step*);
00039   
00040   MaterialBudgetHcalHistos* theHistos;
00041   double                    rMax, zMax;
00042 };
00043 
00044 #endif

Generated on Tue Jun 9 17:49:14 2009 for CMSSW by  doxygen 1.5.4