CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/Alignment/TrackerAlignment/plugins/TrackerSystematicMisalignments.h

Go to the documentation of this file.
00001 #ifndef Alignment_TrackerAlignment_TrackerSystematicMisalignments_h
00002 #define Alignment_TrackerAlignment_TrackerSystematicMisalignments_h
00003 
00012 // user include files
00013 
00014 #include "FWCore/Framework/interface/ESHandle.h"
00015 #include "FWCore/Framework/interface/EDAnalyzer.h"
00016 
00017 
00018 class AlignableSurface;
00019 class Alignments;
00020 
00021 
00022 class TrackerSystematicMisalignments:
00023 public edm::EDAnalyzer
00024 {
00025 public:
00026         
00027         TrackerSystematicMisalignments(
00028                                                                    const edm::ParameterSet&
00029                                                                    );
00030         
00032         virtual void beginJob();
00033         
00034         virtual void analyze(const edm::Event&, const edm::EventSetup&);
00035         
00036 private:
00037         
00038         void applySystematicMisalignment( Alignable* ); 
00039         //align::GlobalVector findSystematicMis( align::PositionType );
00040         align::GlobalVector findSystematicMis( align::PositionType, const bool blindToZ, const bool blindToR );
00041         
00042         AlignableTracker* theAlignableTracker;
00043         
00044         
00045         
00046         // configurables needed for the systematic misalignment
00047         bool m_fromDBGeom;
00048         
00049         double m_radialEpsilon;
00050         double m_telescopeEpsilon;
00051         double m_layerRotEpsilon;
00052         double m_bowingEpsilon;
00053         double m_zExpEpsilon;
00054         double m_twistEpsilon;
00055         double m_ellipticalEpsilon;
00056         double m_skewEpsilon;
00057         double m_saggitaEpsilon;
00058 
00059         // flag to steer suppression of blind movements
00060         bool suppressBlindMvmts;
00061 
00062         // flag for old z behaviour, version <= 1.5
00063         bool oldMinusZconvention;
00064         
00065 };
00066 
00067 #endif