CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
BHMNumberingScheme.h
Go to the documentation of this file.
1 #ifndef SimG4CMSForwardBHMNumberingScheme_h
2 #define SimG4CMSForwardBHMNumberingScheme_h
3 
4 #include "G4Step.hh"
5 #include <cstdint>
6 
8 public:
10  ~BHMNumberingScheme() = default;
11 
12  unsigned int getUnitID(const G4Step* aStep) const;
13 
14  // Utilities to get detector levels during a step
15  int detectorLevel(const G4Step*) const;
16  void detectorLevel(const G4Step*, int&, int*, G4String*) const;
17 
18  static unsigned int packIndex(int subdet, int zside, int station);
19  static void unpackIndex(const unsigned int& idx, int& subdet, int& zside, int& station);
20 };
21 
22 #endif
static void unpackIndex(const unsigned int &idx, int &subdet, int &zside, int &station)
~BHMNumberingScheme()=default
static unsigned int packIndex(int subdet, int zside, int station)
int zside(DetId const &)
int detectorLevel(const G4Step *) const
unsigned int getUnitID(const G4Step *aStep) const