CMS 3D CMS Logo

AlignableTrackerBuilder.h
Go to the documentation of this file.
1 #ifndef ALIGNMENT_TRACKERALIGNMENT_INTERFACE_ALIGNABLETRACKERBUILDER_H_
2 #define ALIGNMENT_TRACKERALIGNMENT_INTERFACE_ALIGNABLETRACKERBUILDER_H_
3 
4 // Original Author: Max Stark
5 // Created: Thu, 13 Jan 2016 10:22:57 CET
6 
7 // topology and geometry
11 
12 // alignment
15 
16 
17 
19 
20  //========================== PUBLIC METHODS =================================
21  public: //===================================================================
22 
24  virtual ~AlignableTrackerBuilder() = default;
25 
28  void buildAlignables(AlignableTracker*, bool update = false);
29 
33 
34 
37 
38  //========================= PRIVATE METHODS =================================
39  private: //==================================================================
40 
42  void buildAlignableDetUnits(bool update = false);
46  const std::string& moduleName,
47  bool update = false);
49  void buildPixelDetectorAlignable(const GeomDet*, int subdetId,
50  Alignables& aliDets, Alignables& aliDetUnits,
51  bool update = false);
54  void buildStripDetectorAlignable(const GeomDet*, int subdetId,
55  Alignables& aliDets, Alignables& aliDetUnits,
56  bool update = false);
57 
60  void buildAlignableComposites(bool update = false);
65 
66  //========================== PRIVATE DATA ===================================
67  //===========================================================================
68 
72 
74 
76 
77  int numDetUnits = 0;
78 
79 };
80 
81 #endif /* ALIGNMENT_TRACKERALIGNMENT_INTERFACE_ALIGNABLETRACKERBUILDER_H_ */
void buildPixelDetectorAlignable(const GeomDet *, int subdetId, Alignables &aliDets, Alignables &aliDetUnits, bool update=false)
Converts GeomDetUnits of PXB and PXE to AlignableDetUnits.
std::vector< Alignable * > Alignables
Definition: Alignable.h:274
void buildPixelDetector(AlignableTracker *)
Builds the PixelDetector by hand.
const TrackerTopology * trackerTopology_
const AlignableObjectId & objectIdProvider() const
Return tracker alignable object ID provider derived from the tracker&#39;s geometry.
virtual ~AlignableTrackerBuilder()=default
std::string moduleName(Provenance const &provenance)
Definition: Provenance.cc:27
const align::TrackerNameSpace & trackerNameSpace() const
Allows conversion between type and name, and vice-versa.
const AlignableObjectId alignableObjectId_
TrackerAlignmentLevelBuilder trackerAlignmentLevelBuilder_
void buildAlignableDetUnits(bool update=false)
Builds Alignables on module-level for each part of the tracker.
void buildStripDetector(AlignableTracker *)
Builds the StripDetector by hand.
AlignableTrackerBuilder(const TrackerGeometry *, const TrackerTopology *)
const align::TrackerNameSpace & trackerNameSpace() const
Return tracker name space derived from the tracker&#39;s topology.
#define update(a, b)
void buildStripDetectorAlignable(const GeomDet *, int subdetId, Alignables &aliDets, Alignables &aliDetUnits, bool update=false)
void buildAlignables(AlignableTracker *, bool update=false)
void convertGeomDetsToAlignables(const TrackingGeometry::DetContainer &, const std::string &moduleName, bool update=false)
const TrackerGeometry * trackerGeometry_
std::vector< GeomDet const * > DetContainer
void buildAlignableComposites(bool update=false)