00001 // Last commit: $Id: SiStripCommissioningOfflineClient.h,v 1.15 2010/01/04 16:47:05 lowette Exp $ 00002 00003 #ifndef DQM_SiStripCommissioningClients_SiStripCommissioningOfflineClient_H 00004 #define DQM_SiStripCommissioningClients_SiStripCommissioningOfflineClient_H 00005 00006 #include "DataFormats/SiStripCommon/interface/SiStripConstants.h" 00007 #include "DQM/SiStripCommissioningClients/interface/SiStripTFile.h" 00008 #include "DQM/SiStripCommissioningClients/interface/SummaryPlotXmlParser.h" 00009 #include "DQM/SiStripCommissioningSummary/interface/SummaryPlot.h" 00010 #include "FWCore/Framework/interface/EDAnalyzer.h" 00011 #include "FWCore/Framework/interface/EventSetup.h" 00012 #include "FWCore/Framework/interface/Event.h" 00013 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00014 #include <string> 00015 #include <vector> 00016 #include <map> 00017 00018 class CommissioningHistograms; 00019 class DQMStore; 00020 class TH1; 00021 00030 class SiStripCommissioningOfflineClient : public edm::EDAnalyzer { 00031 00032 public: 00033 00034 SiStripCommissioningOfflineClient( const edm::ParameterSet& ); 00035 virtual ~SiStripCommissioningOfflineClient(); 00036 00037 virtual void beginRun( const edm::Run&, const edm::EventSetup& ); 00038 virtual void analyze( const edm::Event&, const edm::EventSetup& ); 00039 virtual void endJob(); 00040 00041 protected: 00042 00043 virtual void createHistos( const edm::ParameterSet&, const edm::EventSetup& ); 00044 virtual void uploadToConfigDb() {;} 00045 virtual void setInputFiles( std::vector<std::string>&, const std::string, uint32_t, bool ); 00046 00047 protected: 00048 00050 DQMStore* bei_; 00051 00053 CommissioningHistograms* histos_; 00054 00056 std::vector<std::string> inputFiles_; 00057 00059 std::string outputFileName_; 00060 00062 bool collateHistos_; 00063 00065 bool analyzeHistos_; 00066 00068 std::string xmlFile_; 00069 00071 bool createSummaryPlots_; 00072 00074 bool clientHistos_; 00075 00077 bool uploadToDb_; 00078 00080 sistrip::RunType runType_; 00081 00083 uint32_t runNumber_; 00084 00086 typedef std::vector<TH1*> Histos; 00087 00089 typedef std::map<uint32_t,Histos> HistosMap; 00090 00092 HistosMap map_; 00093 00095 std::vector<SummaryPlot> plots_; 00096 00098 edm::ParameterSet parameters_; 00099 00100 }; 00101 00102 #endif // DQM_SiStripCommissioningClients_SiStripCommissioningOfflineClient_H 00103