Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:57:22

0001 /** \class DTSurvey
0002  *
0003  *  Implements a set of measurements given by survey, tipically a wheel.  
0004  *  Contains DTSurveyChambers and the displacements and rotations for each are 
0005  *  calculated.
0006  *
0007  *  $Date: 2007/12/06 01:53:28 $
0008  *  $Revision: 1.3 $
0009  *  \author Pablo Martinez Ruiz del Arbol
0010  */
0011 
0012 #ifndef Alignment_SurveyAnalysis_DTSurvey_H
0013 #define Alignment_SurveyAnalysis_DTSurvey_H
0014 
0015 #include "TMatrixD.h"
0016 
0017 class DTGeometry;
0018 class DTSurveyChamber;
0019 
0020 namespace edm {
0021   template <class>
0022   class ESHandle;
0023 }
0024 
0025 class DTSurvey {
0026 public:
0027   DTSurvey(const std::string &, const std::string &, int);
0028   ~DTSurvey();
0029 
0030   void ReadChambers(edm::ESHandle<DTGeometry>);
0031   void CalculateChambers();
0032 
0033   const DTSurveyChamber *getChamber(int, int) const;
0034 
0035   int getId() const { return id; }
0036 
0037   //void ToDB(MuonAlignment *);
0038 
0039 private:
0040   void FillWheelInfo();
0041 
0042   std::string nameOfWheelInfoFile, nameOfChamberInfoFile;
0043   int id;
0044 
0045   //This is the displacement (vector) and rotation (matrix) for the wheel
0046   float OffsetZ;
0047   TMatrixD delta;
0048   TMatrixD Rot;
0049 
0050   DTSurveyChamber ***chambers;
0051 };
0052 
0053 std::ostream &operator<<(std::ostream &, const DTSurvey &);
0054 
0055 #endif