00001
00002
00003
00004
00005
00007 #undef debug
00008 #ifndef ZdcNumberingScheme_h
00009 #define ZdcNumberingScheme_h
00010
00011 #include "G4Step.hh"
00012
00013 class ZdcNumberingScheme {
00014
00015 public:
00016 ZdcNumberingScheme(int);
00017 virtual ~ZdcNumberingScheme();
00018
00019 void setVerbosity(const int);
00020
00021 virtual unsigned int getUnitID(const G4Step* aStep) const ;
00022
00027 static unsigned int packZdcIndex(int subDet, int layer, int fiber, int channel, int z);
00028
00029
00030 static void unpackZdcIndex(const unsigned int& idx, int& subDet, int& layer, int& fiber,
00031 int& channel, int& z);
00032
00033 int detectorLevel(const G4Step*) const;
00034 void detectorLevel(const G4Step*, int&, int*, G4String*) const;
00035
00036 private:
00037
00038 int verbosity;
00039
00040 };
00041
00042 #endif