CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/DQMOffline/Alignment/interface/MuonAlignmentSummary.h

Go to the documentation of this file.
00001 #ifndef MuonAlignmentSummary_H
00002 #define MuonAlignmentSummary_H
00003 
00004 
00014 #include <math.h>
00015 
00016 #include "FWCore/Framework/interface/Frameworkfwd.h"
00017 #include "FWCore/Framework/interface/EDAnalyzer.h"
00018 #include "FWCore/Framework/interface/ESHandle.h"
00019 #include "FWCore/Framework/interface/Event.h"
00020 #include "DataFormats/Common/interface/Handle.h"
00021 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00022 #include "FWCore/Framework/interface/EventSetup.h"
00023 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00024 #include "FWCore/ServiceRegistry/interface/Service.h"
00025 
00026 #include "DQMServices/Core/interface/DQMStore.h"
00027 #include "DQMServices/Core/interface/MonitorElement.h"
00028 
00029 namespace edm {
00030     class ParameterSet;
00031     class EventSetup;
00032     class InputTag;
00033 }
00034 
00035 class TH1F;
00036 
00037 class MuonAlignmentSummary : public edm::EDAnalyzer {
00038 public:
00039 
00041     MuonAlignmentSummary(const edm::ParameterSet&);
00042   
00044     virtual ~MuonAlignmentSummary();
00045   
00047     void beginRun(edm::Run const& run,edm::EventSetup const& iSetup);
00048 
00050     void analyze(const edm::Event& event, const edm::EventSetup& iSetup){}
00051 
00053     void endRun(edm::Run const& run, edm::EventSetup const& iSetup);
00054 
00055 private:
00056     // ----------member data ---------------------------
00057   
00058     DQMStore* dbe;
00059 
00060     MonitorElement *hLocalPositionDT;
00061     MonitorElement *hLocalPositionRmsDT;
00062     MonitorElement *hLocalAngleDT;
00063     MonitorElement *hLocalAngleRmsDT;
00064 
00065     MonitorElement *hLocalXMeanDT;
00066     MonitorElement *hLocalXRmsDT;
00067     MonitorElement *hLocalYMeanDT;
00068     MonitorElement *hLocalYRmsDT;
00069     MonitorElement *hLocalPhiMeanDT;
00070     MonitorElement *hLocalPhiRmsDT;
00071     MonitorElement *hLocalThetaMeanDT;
00072     MonitorElement *hLocalThetaRmsDT;
00073 
00074     MonitorElement *hLocalPositionCSC;
00075     MonitorElement *hLocalPositionRmsCSC;
00076     MonitorElement *hLocalAngleCSC;
00077     MonitorElement *hLocalAngleRmsCSC;
00078 
00079     MonitorElement *hLocalXMeanCSC;
00080     MonitorElement *hLocalXRmsCSC;
00081     MonitorElement *hLocalYMeanCSC;
00082     MonitorElement *hLocalYRmsCSC;
00083     MonitorElement *hLocalPhiMeanCSC;
00084     MonitorElement *hLocalPhiRmsCSC;
00085     MonitorElement *hLocalThetaMeanCSC;
00086     MonitorElement *hLocalThetaRmsCSC;
00087 
00088     edm::ParameterSet parameters;
00089 
00090     // Switch for verbosity
00091     std::string metname;
00092 
00093     // mean and rms histos ranges
00094     double meanPositionRange,rmsPositionRange,meanAngleRange,rmsAngleRange;
00095     
00096     // flags to decide on subdetector and summary histograms
00097     bool doDT, doCSC;
00098 
00099     // Top folder in root file
00100     std::string MEFolderName;
00101     std::stringstream topFolder;
00102 
00103 };
00104 #endif