CMS 3D CMS Logo

AlignableTracker.h
Go to the documentation of this file.
1 #ifndef Alignment_TrackerAlignment_AlignableTracker_H
2 #define Alignment_TrackerAlignment_AlignableTracker_H
3 
4 // Original Author: ?
5 // Last Update: Max Stark
6 // Date: Mon, 15 Feb 2016 09:32:12 CET
7 
8 // alignment
13 
14 class TrackerGeometry;
15 class TrackerTopology;
16 
20 
21 public:
23  ~AlignableTracker() override { /* TODO: delete all tracker-alignables? */ }
24 
27  Alignables& subStructures(const std::string& subStructName) { return alignableMap_.find(subStructName); }
28 
31  void update(const TrackerGeometry*, const TrackerTopology*);
32 
48  }
49 
53  Alignables TIBTIDGeomDets() { return this->merge(this->innerBarrelGeomDets(), this->TIDGeomDets()); }
66 
68  Alignables barrelRods() { return this->merge(this->innerBarrelRods(), this->outerBarrelRods()); }
81 
83  Alignables barrelLayers() { return this->merge(this->innerBarrelLayers(), this->outerBarrelLayers()); }
96 
98  Alignments* alignments() const override;
99 
101  AlignmentErrorsExtended* alignmentErrors() const override;
102 
104  const TrackerTopology* trackerTopology() const { return tTopo_; }
105 
108 
111 
112 private:
113  Alignables merge(const Alignables& list1, const Alignables& list2) const;
114 
119 };
120 
121 #endif //AlignableTracker_H
Alignables & pixelHalfBarrelGeomDets()
Return pixel barrel GeomDets.
Alignments * alignments() const override
Return alignments, sorted by DetId.
AlignableMap alignableMap_
void update(const TrackerGeometry *, const TrackerTopology *)
std::string typeToName(align::StructureType type) const
Convert type to name.
Alignables & pixelHalfBarrelLayers()
Return pixel half barrel layers.
Alignables barrelGeomDets()
Return inner and outer barrel GeomDets together.
Alignables TIBTIDGeomDets()
Return inner barrel and TID GeomDets together.
~AlignableTracker() override
const TrackerTopology * tTopo_
const align::TrackerNameSpace & trackerNameSpace() const
Return tracker name space derived from the tracker's topology.
AlignableTracker(const TrackerGeometry *, const TrackerTopology *)
align::Alignables & find(const std::string &name="")
Definition: AlignableMap.cc:10
AlignableObjectId alignableObjectId_
Alignables & innerBarrelGeomDets()
Return inner barrel GeomDets.
Alignables & endCaps()
Return TECs.
Alignables & TIDGeomDets()
Return TID GeomDets.
Allows conversion between type and name, and vice-versa.
align::TrackerNameSpace trackerNameSpace_
Alignables & outerBarrelRods()
Return outer barrel rods.
Alignables barrelRods()
Return inner and outer barrel rods.
Alignables & pixelEndcapPetals()
Return pixel endcap petals.
Alignables barrelLayers()
Return inner and outer barrel layers.
Alignables & endcapGeomDets()
Return endcap GeomDets.
Alignables & pixelEndcapGeomDets()
Return pixel endcap GeomDets.
Alignables & TIDs()
Return TIDs.
Alignables & outerBarrelLayers()
Return outer barrel layers.
Alignables & outerBarrelGeomDets()
Return outer barrel GeomDets.
Alignables & TIDLayers()
Return TID layers.
Alignables & TIDRings()
Return TID rings.
Alignables & pixelHalfBarrels()
Return Pixel half barrels.
Alignables & pixelEndCaps()
Return TPEs.
Alignables & subStructures(const std::string &subStructName)
AlignmentErrorsExtended * alignmentErrors() const override
Return alignment errors, sorted by DetId.
Alignables & innerBarrelLayers()
Return inner barrel layers.
const TrackerTopology * trackerTopology() const
Return tracker topology used to build AlignableTracker.
Alignables & pixelHalfBarrelLadders()
Return pixel half barrel ladders (implemented as AlignableRods)
const AlignableObjectId & objectIdProvider() const
Return tracker alignable object ID provider derived from the tracker's geometry.
Alignables & endcapPetals()
Return encap petals.
Alignables & innerHalfBarrels()
Return TIB half barrels.
Alignables merge(const Alignables &list1, const Alignables &list2) const
Alignables & endcapLayers()
Return endcap layers.
Alignables & pixelEndcapHalfCylinders()
Return pixel endcap half cylinders.
align::Alignables Alignables
Definition: Alignable.h:34
Alignables & pixelEndcapLayers()
Return pixel endcap layers.
Alignables & outerHalfBarrels()
Return TOB half barrels.
Alignables & innerBarrelRods()
Return inner barrel rods.