File indexing completed on 2024-04-06 12:29:47
0001 #ifndef SimG4CMS_HFShowerPMT_h
0002 #define SimG4CMS_HFShowerPMT_h
0003
0004
0005
0006
0007
0008 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0009 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0010 #include "Geometry/HcalCommonData/interface/HcalDDDSimConstants.h"
0011 #include "CondFormats/GeometryObjects/interface/HcalSimulationParameters.h"
0012 #include "SimG4CMS/Calo/interface/HFCherenkov.h"
0013
0014 class G4Step;
0015
0016 #include <string>
0017 #include <vector>
0018
0019 class HFShowerPMT {
0020 public:
0021 HFShowerPMT(const std::string& name,
0022 const HcalDDDSimConstants* hcons,
0023 const HcalSimulationParameters* hps,
0024 edm::ParameterSet const& p);
0025 virtual ~HFShowerPMT();
0026 double getHits(const G4Step* aStep);
0027 double getRadius();
0028
0029 private:
0030 const HcalDDDSimConstants* hcalConstant_;
0031 const HcalSimulationParameters* hcalsimpar_;
0032 std::unique_ptr<HFCherenkov> cherenkov_;
0033 double pePerGeV;
0034 int indexR, indexF;
0035 std::vector<double> rTable;
0036 std::vector<int> pmtR1, pmtFib1;
0037 std::vector<int> pmtR2, pmtFib2;
0038 };
0039
0040 #endif