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 public:
28  using DetTypeContainer = std::vector<const GeomDetType*>;
29  using DetContainer = std::vector<const GeomDet*>;
30  using DetIdContainer = std::vector<DetId>;
31  using mapIdToDetUnit = std::unordered_map<unsigned int, const GeomDet*>;
32  using mapIdToDet = std::unordered_map<unsigned int, const GeomDet*>;
33 
35  virtual ~TrackingGeometry() {}
36 
38  virtual const DetTypeContainer& detTypes() const = 0;
39 
41  virtual const DetContainer& detUnits() const = 0;
42 
44  virtual const DetContainer& dets() const = 0;
45 
47  virtual const DetIdContainer& detUnitIds() const = 0;
48 
50  virtual const DetIdContainer& detIds() const = 0;
51 
53  virtual const GeomDet* idToDetUnit(DetId) const = 0;
54 
57  virtual const GeomDet* idToDet(DetId) const = 0;
58 };
59 
60 #endif
TrackingGeometry
Definition: TrackingGeometry.h:26
GeomDet
Definition: GeomDet.h:27
TrackingGeometry::dets
virtual const DetContainer & dets() const =0
Returm a vector of all GeomDet (including all GeomDetUnits)
DetId
Definition: DetId.h:17
TrackingGeometry::idToDet
virtual const GeomDet * idToDet(DetId) const =0
TrackingGeometry::DetTypeContainer
std::vector< const GeomDetType * > DetTypeContainer
Definition: TrackingGeometry.h:28
TrackingGeometry::DetIdContainer
std::vector< DetId > DetIdContainer
Definition: TrackingGeometry.h:30
TrackingGeometry::detUnits
virtual const DetContainer & detUnits() const =0
Returm a vector of all GeomDet.
TrackingGeometry::DetContainer
std::vector< const GeomDet * > DetContainer
Definition: TrackingGeometry.h:29
TrackingGeometry::mapIdToDet
std::unordered_map< unsigned int, const GeomDet * > mapIdToDet
Definition: TrackingGeometry.h:32
TrackingGeometry::detTypes
virtual const DetTypeContainer & detTypes() const =0
Return a vector of all det types.
DetId.h
TrackingGeometry::mapIdToDetUnit
std::unordered_map< unsigned int, const GeomDet * > mapIdToDetUnit
Definition: TrackingGeometry.h:31
TrackingGeometry::detIds
virtual const DetIdContainer & detIds() const =0
Returm a vector of all GeomDet DetIds (including those of GeomDetUnits)
TrackingGeometry::idToDetUnit
virtual const GeomDet * idToDetUnit(DetId) const =0
Return the pointer to the GeomDetUnit corresponding to a given DetId.
TrackingGeometry::detUnitIds
virtual const DetIdContainer & detUnitIds() const =0
Returm a vector of all GeomDetUnit DetIds.
GeomDet.h
TrackingGeometry::~TrackingGeometry
virtual ~TrackingGeometry()
Destructor.
Definition: TrackingGeometry.h:35