00001 #ifndef ApvAnalysis_ApvFactoryService_H 00002 #define ApvAnalysis_ApvFactoryService_H 00003 00004 #define DATABASE //@@ necessary? 00005 00006 #include "FWCore/Utilities/interface/Exception.h" 00007 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00008 #include "FWCore/MessageLogger/interface/MessageLogger.h" 00009 #include "FWCore/ServiceRegistry/interface/ActivityRegistry.h" 00010 00011 #include "CondFormats/SiStripObjects/interface/SiStripPedestals.h" 00012 #include "CalibTracker/SiStripAPVAnalysis/interface/ApvAnalysisFactory.h" 00013 00014 00015 #include "FWCore/Framework/interface/Event.h" 00016 #include "FWCore/Framework/interface/EventSetup.h" 00017 #include "FWCore/Framework/interface/ESHandle.h" 00018 #include "FWCore/Framework/interface/Frameworkfwd.h" 00019 00020 #include "boost/cstdint.hpp" 00021 #include <iostream> 00022 #include <fstream> 00023 #include <sstream> 00024 #include <ostream> 00025 #include <vector> 00026 #include <string> 00027 #include <map> 00028 00034 class ApvFactoryService { 00035 00036 public: 00037 00038 // -------------------- Constructors, destructors -------------------- 00039 00043 ApvFactoryService( const edm::ParameterSet&, 00044 edm::ActivityRegistry& ); 00045 00047 ~ApvFactoryService(); 00048 00049 int getEventInitNumber(); 00050 00051 ApvAnalysisFactory* const getApvFactory() const ; 00052 00053 // -------------------- Structs and enums -------------------- 00054 00055 void postProcessEvent(const edm::Event& ie, const edm::EventSetup& ies); 00056 00060 private: 00061 00062 00063 // -------------------- Miscellaneous private methods -------------------- 00064 00066 ApvAnalysisFactory* apvFactory_; 00067 00068 bool gotPed; 00069 00070 }; 00071 00072 00073 #endif // ApvFactoryService_H 00074