CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/Validation/DTRecHits/plugins/DTSegment4DQuality.h

Go to the documentation of this file.
00001 #ifndef Validation_DTSegment4D_H
00002 #define Validation_DTSegment4D_H
00003 
00023 #include "FWCore/Framework/interface/EDAnalyzer.h"
00024 #include "Histograms.h"
00025 #include "DQMServices/Core/interface/DQMStore.h"
00026 #include "DQMServices/Core/interface/MonitorElement.h"
00027 #include "FWCore/ServiceRegistry/interface/Service.h"
00028 #include "FWCore/Utilities/interface/InputTag.h"
00029 
00030 #include <vector>
00031 #include <map>
00032 #include <string>
00033 
00034 namespace edm {
00035   class ParameterSet;
00036   class Event;
00037   class EventSetup;
00038 }
00039 
00040 class TFile;
00041 class MonitorElement;
00042 
00043 class DTSegment4DQuality : public edm::EDAnalyzer {
00044 public:
00046   DTSegment4DQuality(const edm::ParameterSet& pset);
00047 
00049   virtual ~DTSegment4DQuality();
00050 
00051   // Operations
00052 
00054   void analyze(const edm::Event & event, const edm::EventSetup& eventSetup);
00055   // Write the histos to file
00056   void endJob();
00057   void endLuminosityBlock(edm::LuminosityBlock const& lumiSeg,
00058                           edm::EventSetup const& c);
00059 
00060 protected:
00061 
00062 private: 
00063 
00064   // The file which will store the histos
00065   //TFile *theFile;
00066   // Switch for debug output
00067   bool debug;
00068   // Root file name
00069   std::string rootFileName;
00070   //Labels to read from event
00071   edm::InputTag simHitLabel;
00072   edm::InputTag segment4DLabel;
00073   //Sigma resolution on position
00074   double sigmaResX;
00075   double sigmaResY;
00076   //Sigma resolution on angle
00077   double sigmaResAlpha;
00078   double sigmaResBeta;
00079 
00080   HRes4DHit *h4DHit;
00081   HRes4DHit *h4DHit_W0;
00082   HRes4DHit *h4DHit_W1;
00083   HRes4DHit *h4DHit_W2;
00084   HRes4DHit *h4DHitWS[3][4];
00085 
00086   HEff4DHit *hEff_All;
00087   HEff4DHit *hEff_W0;
00088   HEff4DHit *hEff_W1;
00089   HEff4DHit *hEff_W2;
00090   HEff4DHit *hEffWS[3][4];
00091 
00092   MonitorElement* hHitMult[3][4];
00093   MonitorElement* ht0[3][4];
00094 
00095   DQMStore* dbe_;
00096   bool doall;
00097   bool local;
00098 };
00099 
00100 #endif