Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:29:59

0001 #ifndef SimG4CMSForwardTotemT2ScintSD_h
0002 #define SimG4CMSForwardTotemT2ScintSD_h
0003 
0004 #include "SimG4CMS/Calo/interface/CaloSD.h"
0005 #include "SimG4CMS/Forward/interface/TotemT2ScintNumberingScheme.h"
0006 #include "FWCore/Framework/interface/Frameworkfwd.h"
0007 #include "FWCore/ParameterSet/interface/ParameterSetfwd.h"
0008 
0009 class TotemT2ScintSD : public CaloSD {
0010 public:
0011   TotemT2ScintSD(const std::string &,
0012                  const SensitiveDetectorCatalog &,
0013                  edm::ParameterSet const &,
0014                  const SimTrackManager *);
0015   ~TotemT2ScintSD() override = default;
0016   uint32_t setDetUnitId(const G4Step *step) override;
0017   void setNumberingScheme(TotemT2ScintNumberingScheme *scheme);
0018 
0019 protected:
0020   double getEnergyDeposit(const G4Step *) override;
0021 
0022 private:
0023   uint32_t setDetUnitId(const int &zside, const int &lay, const int &phi);
0024 
0025   bool useBirk_;
0026   double birk1_, birk2_, birk3_;
0027 
0028   std::unique_ptr<TotemT2ScintNumberingScheme> numberingScheme;
0029 };
0030 
0031 #endif  // TotemT2ScintSD_h