File indexing completed on 2024-04-06 12:29:47
0001 #ifndef SimG4CMS_Calo_HFNoseNumberingScheme_h
0002 #define SimG4CMS_Calo_HFNoseNumberingScheme_h
0003
0004
0005
0006
0007
0008 #include "DataFormats/ForwardDetId/interface/HFNoseDetId.h"
0009 #include "Geometry/HGCalCommonData/interface/HGCalDDDConstants.h"
0010 #include "Geometry/HGCalCommonData/interface/HGCalGeometryMode.h"
0011
0012 #include "G4ThreeVector.hh"
0013
0014 class HFNoseNumberingScheme {
0015 public:
0016 HFNoseNumberingScheme(const HGCalDDDConstants& hgc);
0017 HFNoseNumberingScheme() = delete;
0018 ~HFNoseNumberingScheme() {}
0019
0020
0021
0022
0023 uint32_t getUnitID(int layer, int module, int cell, int iz, const G4ThreeVector& pos, double& wt);
0024
0025 private:
0026 void checkPosition(uint32_t index, const G4ThreeVector& pos) const;
0027
0028 const HGCalDDDConstants& hgcons_;
0029 const HGCalGeometryMode::GeometryMode mode_;
0030 };
0031
0032 #endif