Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:32:12

0001 #ifndef Validation_Geometry_MaterialBudgetCastorHistos_h
0002 #define Validation_Geometry_MaterialBudgetCastorHistos_h 1
0003 
0004 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0005 
0006 #include "G4Step.hh"
0007 #include "G4Track.hh"
0008 
0009 #include <TH1F.h>
0010 #include <TH2F.h>
0011 #include <TProfile.h>
0012 #include <TProfile2D.h>
0013 
0014 #include <string>
0015 #include <vector>
0016 
0017 class MaterialBudgetCastorHistos {
0018 public:
0019   MaterialBudgetCastorHistos(const edm::ParameterSet &p);
0020   virtual ~MaterialBudgetCastorHistos();
0021 
0022   void fillStartTrack(const G4Track *);
0023   void fillPerStep(const G4Step *);
0024   void fillEndTrack();
0025 
0026 private:
0027   void book();
0028   void fillHisto(int id, int ix);
0029 
0030 private:
0031   static const int maxSet = 20;
0032   bool fillHistos, printSum;
0033   int binEta, binPhi;
0034   double etaLow, etaHigh;
0035   std::vector<std::string> matList;
0036   std::vector<double> stepLength, radLength, intLength;
0037   TH1F *me400[maxSet], *me800[maxSet];
0038   TH2F *me1200[maxSet];
0039   TProfile *me100[maxSet], *me200[maxSet], *me300[maxSet];
0040   TProfile *me500[maxSet], *me600[maxSet], *me700[maxSet];
0041   TProfile2D *me900[maxSet], *me1000[maxSet], *me1100[maxSet];
0042   int id1, id2, steps;
0043   double radLen, intLen, stepLen;
0044   double eta_, phi_;
0045 };
0046 
0047 #endif