Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef Alignment_SurveyAnalysis_SurveyMisalignmentInput_h
0002 #define Alignment_SurveyAnalysis_SurveyMisalignmentInput_h
0003 
0004 /** \class SurveyMisalignmentInput
0005  *
0006  *  Class to misaligned tracker from DB.
0007  *
0008  *  $Date: 2012/06/13 09:22:26 $
0009  *  $Revision: 1.5 $
0010  *  \author Chung Khim Lae
0011  */
0012 // user include files
0013 
0014 #include "Alignment/SurveyAnalysis/interface/SurveyInputBase.h"
0015 #include "Alignment/SurveyAnalysis/interface/SurveyInputTextReader.h"
0016 #include "FWCore/Framework/interface/ESHandle.h"
0017 
0018 class AlignableSurface;
0019 class Alignments;
0020 
0021 class SurveyMisalignmentInput : public SurveyInputBase {
0022 public:
0023   SurveyMisalignmentInput(const edm::ParameterSet&);
0024 
0025   /// Read ideal tracker geometry from DB
0026   void analyze(const edm::Event&, const edm::EventSetup&) override;
0027 
0028 private:
0029   const edm::ESGetToken<TrackerTopology, TrackerTopologyRcd> tTopoToken_;
0030   const edm::ESGetToken<GeometricDet, IdealGeometryRecord> geomDetToken_;
0031   const edm::ESGetToken<PTrackerParameters, PTrackerParametersRcd> ptpToken_;
0032   const edm::ESGetToken<Alignments, TrackerAlignmentRcd> aliToken_;
0033 
0034   SurveyInputTextReader::MapType uIdMap;
0035 
0036   std::string textFileName;
0037 
0038   edm::ESHandle<Alignments> alignments;
0039 
0040   /// Add survey info to an alignable
0041   void addSurveyInfo(Alignable*);
0042 
0043   /// Get alignable surface from misalignments.db
0044   AlignableSurface getAlignableSurface(align::ID);
0045 };
0046 
0047 #endif