File indexing completed on 2024-04-06 12:29:59
0001 #ifndef SimG4CMSForwardZdcNumberingScheme_h
0002 #define SimG4CMSForwardZdcNumberingScheme_h
0003
0004
0005
0006
0007
0008
0009 #include <vector>
0010 #include "G4Step.hh"
0011
0012 class ZdcNumberingScheme {
0013 public:
0014 ZdcNumberingScheme(int);
0015 ~ZdcNumberingScheme() = default;
0016
0017 void setVerbosity(const int);
0018
0019 unsigned int getUnitID(const G4Step* aStep);
0020
0021
0022
0023
0024
0025 static unsigned int packZdcIndex(int subDet, int layer, int fiber, int channel, int z);
0026
0027
0028 static void unpackZdcIndex(const unsigned int& idx, int& subDet, int& layer, int& fiber, int& channel, int& z);
0029
0030 int detectorLevel(const G4Step*);
0031 void detectorLevel(const G4Step*, int&, std::vector<int>&, std::vector<G4String>&);
0032
0033 private:
0034 int verbosity;
0035 };
0036
0037 #endif