CMS 3D CMS Logo

TrackingGeometry.h
Go to the documentation of this file.
1 #ifndef TrackingGeometry_h
2 #define TrackingGeometry_h
3 
23 #include <vector>
24 #include <unordered_map>
25 
27 {
28 public:
29  typedef std::vector<GeomDetType const*> DetTypeContainer;
30  typedef std::vector<GeomDet const*> DetContainer;
31  typedef std::vector<GeomDetUnit const*> DetUnitContainer;
32  typedef std::vector<DetId> DetIdContainer;
33  typedef std::unordered_map< unsigned int, GeomDetUnit const*> mapIdToDetUnit;
34  typedef std::unordered_map< unsigned int, GeomDet const*> mapIdToDet;
35 
36  // Default constructor
37  // virtual TrackingGeometry() {}
38 
40  virtual ~TrackingGeometry() {}
41 
43  virtual const DetTypeContainer& detTypes() const = 0;
44 
46  virtual const DetUnitContainer& detUnits() const = 0;
47 
49  virtual const DetContainer& dets() const = 0;
50 
52  virtual const DetIdContainer& detUnitIds() const = 0;
53 
55  virtual const DetIdContainer& detIds() const = 0;
56 
58  virtual const GeomDetUnit* idToDetUnit(DetId) const = 0;
59 
62  virtual const GeomDet* idToDet(DetId) const = 0;
63 
64 };
65 
66 #endif
virtual const DetIdContainer & detIds() const =0
Returm a vector of all GeomDet DetIds (including those of GeomDetUnits)
std::vector< GeomDetType const * > DetTypeContainer
virtual const GeomDet * idToDet(DetId) const =0
virtual ~TrackingGeometry()
Destructor.
virtual const GeomDetUnit * idToDetUnit(DetId) const =0
Return the pointer to the GeomDetUnit corresponding to a given DetId.
virtual const DetUnitContainer & detUnits() const =0
Returm a vector of all GeomDetUnit.
virtual const DetContainer & dets() const =0
Returm a vector of all GeomDet (including all GeomDetUnits)
std::unordered_map< unsigned int, GeomDetUnit const * > mapIdToDetUnit
std::unordered_map< unsigned int, GeomDet const * > mapIdToDet
Definition: DetId.h:18
virtual const DetIdContainer & detUnitIds() const =0
Returm a vector of all GeomDetUnit DetIds.
std::vector< GeomDet const * > DetContainer
std::vector< GeomDetUnit const * > DetUnitContainer
virtual const DetTypeContainer & detTypes() const =0
Return a vector of all det types.
std::vector< DetId > DetIdContainer