CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch13/src/Alignment/MuonAlignment/interface/MuonScenarioBuilder.h

Go to the documentation of this file.
00001 #ifndef Alignment_MuonAlignment_MuonScenarioBuilder_h
00002 #define Alignment_MuonAlignment_MuonScenarioBuilder_h
00003 
00013 #include <vector>
00014 
00015 
00016 #include "Alignment/CommonAlignment/interface/AlignableModifier.h"
00017 #include "Alignment/CommonAlignment/interface/MisalignmentScenarioBuilder.h"
00018 #include "Alignment/MuonAlignment/interface/AlignableMuon.h"
00020 
00021 class MuonScenarioBuilder : public MisalignmentScenarioBuilder
00022 {
00023 
00024 public:
00025 
00027   explicit MuonScenarioBuilder( Alignable* alignable );
00028 
00030   ~MuonScenarioBuilder() {};
00031 
00033   void applyScenario( const edm::ParameterSet& scenario );
00034 
00036   void moveDTSectors( const edm::ParameterSet& scenario );
00037 
00039   void moveCSCSectors( const edm::ParameterSet& scenario );
00040   
00042   void moveMuon( const edm::ParameterSet& scenario );
00043   
00044   std::vector<float> extractParameters( const edm::ParameterSet& , const char* );
00045 
00046   void moveChamberInSector( Alignable *, std::vector<float>, std::vector<float>, std::vector<float> , std::vector<float> );
00047 private: // Members
00048 
00049   AlignableMuon* theAlignableMuon;   
00050   
00051   AlignableModifier theMuonModifier; 
00052 };
00053 
00054 
00055 
00056 #endif