CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_3/src/Validation/RecoTau/plugins/DQMFileLoader.h

Go to the documentation of this file.
00001 #ifndef TauDQMFileLoader_h
00002 #define TauDQMFileLoader_h
00003 
00013 // framework & common header files
00014 #include "FWCore/Framework/interface/EDAnalyzer.h"
00015 #include "FWCore/Framework/interface/Event.h"
00016 #include "FWCore/Framework/interface/EventSetup.h"
00017 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00018 
00019 #include "DQMServices/Core/interface/DQMDefinitions.h"
00020 
00021 #include <TH1.h>
00022 
00023 #include <vector>
00024 #include <string>
00025 
00026 class TauDQMFileLoader : public edm::EDAnalyzer
00027 {
00028   typedef std::vector<std::string> vstring;
00029   typedef std::set<std::string> sstring;
00030 
00031   struct cfgEntryFileSet
00032   {
00033     cfgEntryFileSet(const std::string&, const edm::ParameterSet&);
00034     void print() const;
00035     std::string name_;
00036     vstring inputFileNames_;
00037     double scaleFactor_;
00038     std::string dqmDirectory_store_;
00039   };
00040 
00041  public:
00042   explicit TauDQMFileLoader(const edm::ParameterSet&);
00043   virtual ~TauDQMFileLoader();
00044   virtual void analyze(const edm::Event&, const edm::EventSetup&);
00045   virtual void endJob(){}
00046   virtual void endRun(const edm::Run& r, const edm::EventSetup& c);  
00047 
00048 private:
00049   std::map<std::string, cfgEntryFileSet> fileSets_;
00050   std::map<std::string, sstring> subDirectoryMap_;
00051   int cfgError_;
00052 };
00053 
00054 #endif
00055 
00056