CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
AlignableCSCRing.h
Go to the documentation of this file.
1 #ifndef Alignment_MuonAlignment_AlignableCSCRing_H
2 #define Alignment_MuonAlignment_AlignableCSCRing_H
3 
15 
17 
18 #include <vector>
19 
20 class GeomDet;
22 
27 
29 public:
30  AlignableCSCRing(const std::vector<AlignableCSCChamber*>& cscChambers);
31 
32  // gets the global position as the average over all positions of the layers
34  // get the global orientation
35  RotationType computeOrientation(); //see explanation for "theOrientation"
36  // get the Surface
38 
40 
41  //virtual void twist(float);
42 
44  friend std::ostream& operator<<(std::ostream&, const AlignableCSCRing&);
45 
47  void dump(void) const override;
48 
49 private:
50  std::vector<AlignableCSCChamber*> theCSCChambers;
51 };
52 
53 #endif
friend std::ostream & operator<<(std::ostream &, const AlignableCSCRing &)
Printout muon CSC Ring information (not recursive)
AlignableCSCRing(const std::vector< AlignableCSCChamber * > &cscChambers)
The constructor simply copies the vector of CSC Chambers and computes the surface from them...
void dump(void) const override
Recursive printout of the muon CSC Ring structure.
PositionType computePosition()
Compute average z position from all components (x and y forced to 0)
std::vector< AlignableCSCChamber * > theCSCChambers
RotationType computeOrientation()
Just initialize to default given by default constructor of a RotationType.
AlignableSurface computeSurface()
AlignableCSCChamber & chamber(int i)
Return Alignable CSC Chamber at given index.
A muon CSC Chamber( an AlignableDet )