CMS 3D CMS Logo

BHMNumberingScheme.h
Go to the documentation of this file.
1 #ifndef SimG4CMSForwardBHMNumberingScheme_h
2 #define SimG4CMSForwardBHMNumberingScheme_h
3 
4 #include "G4Step.hh"
5 #include <boost/cstdint.hpp>
6 #include "G4ThreeVector.hh"
7 #include <map>
8 
9 
10 
11 
13 
14 public:
16  virtual ~BHMNumberingScheme();
17 
18  virtual unsigned int getUnitID(const G4Step* aStep) const;
19 
20  // Utilities to get detector levels during a step
21  virtual int detectorLevel(const G4Step*) const;
22  virtual void detectorLevel(const G4Step*, int&, int*, G4String*) const;
23 
24 
25  //protected:
26 
27  static unsigned int packIndex(int subdet, int zside, int station);
28  static void unpackIndex(const unsigned int& idx, int& subdet, int& zside,
29  int& station);
30 
31 };
32 
33 #endif
static unsigned int packIndex(int subdet, int zside, int station)
static void unpackIndex(const unsigned int &idx, int &subdet, int &zside, int &station)
int zside(DetId const &)
virtual unsigned int getUnitID(const G4Step *aStep) const
virtual int detectorLevel(const G4Step *) const