CMS 3D CMS Logo

MaterialBudgetHcal.h
Go to the documentation of this file.
1 #ifndef Validation_Geometry_MaterialBudgetHcal_h
2 #define Validation_Geometry_MaterialBudgetHcal_h
3 
6 
10 
14 
15 #include <CLHEP/Vector/LorentzVector.h>
16 
17 class BeginOfTrack;
18 class G4Step;
19 class EndOfTrack;
20 
22  public Observer<const BeginOfTrack*>,
23  public Observer<const G4Step*>,
24  public Observer<const EndOfTrack*> {
25 public:
27  MaterialBudgetHcal(const MaterialBudgetHcal&) = delete; // stop default
28 
29  const MaterialBudgetHcal& operator=(const MaterialBudgetHcal&) = delete; // stop default
30 
32  void beginRun(edm::EventSetup const&) override;
33 
34 private:
35  void update(const BeginOfTrack*) override;
36  void update(const G4Step*) override;
37  void update(const EndOfTrack*) override;
38 
39  bool stopAfter(const G4Step*);
40 
41  std::unique_ptr<MaterialBudgetHcalHistos> theHistoHcal_;
42  std::unique_ptr<MaterialBudgetCastorHistos> theHistoCastor_;
45  double rMax_, zMax_;
47 };
48 
49 #endif
void update(const BeginOfTrack *) override
This routine will be called when the appropriate signal arrives.
std::unique_ptr< MaterialBudgetHcalHistos > theHistoHcal_
edm::ESGetToken< cms::DDCompactView, IdealGeometryRecord > cpvTokenDD4hep_
void beginRun(edm::EventSetup const &) override
void registerConsumes(edm::ConsumesCollector) override
bool stopAfter(const G4Step *)
edm::ESGetToken< DDCompactView, IdealGeometryRecord > cpvTokenDDD_
MaterialBudgetHcal(const edm::ParameterSet &)
const MaterialBudgetHcal & operator=(const MaterialBudgetHcal &)=delete
std::unique_ptr< MaterialBudgetCastorHistos > theHistoCastor_