CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CastorNumberingScheme.h
Go to the documentation of this file.
1 #ifndef Forward_CastorNumberingScheme_h
2 #define Forward_CastorNumberingScheme_h
3 // -*- C++ -*-
4 //
5 // Package: Forward
6 // Class : CastorNumberingScheme
7 //
16 //
17 // Original Author:
18 // Created: Tue May 16 10:14:34 CEST 2006
19 //
20 
21 // system include files
22 
23 // user include files
24 
25 
26 #include "G4Step.hh"
27 #include "G4LogicalVolume.hh"
28 #include <boost/cstdint.hpp>
29 
31 
32 public:
33 
35  virtual ~CastorNumberingScheme();
36 
37  virtual uint32_t getUnitID(const G4Step* aStep) const;
38 
48  // static uint32_t packIndex(int det, int z, int sector, int zmodule);
49  // static void unpackIndex(const uint32_t& idx, int& det, int& z, int& sector, int& zmodule);
50 
51 
52  static uint32_t packIndex(int z, int sector, int zmodule);
53  static void unpackIndex(const uint32_t& idx, int& z, int& sector, int& zmodule);
54 
55 private:
56 
57  typedef G4LogicalVolume* lvp;
58 
59  // Utilities to get detector levels during a step
60  void detectorLevel(const G4Step*, int&, int*, lvp*) const;
61 
64 
65 };
66 
67 #endif
static void unpackIndex(const uint32_t &idx, int &z, int &sector, int &zmodule)
float float float z
tuple idx
DEBUGGING if hasattr(process,&quot;trackMonIterativeTracking2012&quot;): print &quot;trackMonIterativeTracking2012 D...
void detectorLevel(const G4Step *, int &, int *, lvp *) const
virtual uint32_t getUnitID(const G4Step *aStep) const
static uint32_t packIndex(int z, int sector, int zmodule)