00001 #ifndef SiStripBadChannelBuilder_H 00002 #define SiStripBadChannelBuilder_H 00003 00004 #include "FWCore/MessageLogger/interface/MessageLogger.h" 00005 #include "FWCore/Utilities/interface/Exception.h" 00006 #include "FWCore/Framework/interface/ESHandle.h" 00007 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00008 #include "CommonTools/ConditionDBWriter/interface/ConditionDBWriter.h" 00009 #include "FWCore/ParameterSet/interface/FileInPath.h" 00010 00011 #include "CondFormats/SiStripObjects/interface/SiStripBadStrip.h" 00012 00013 #include "CLHEP/Random/RandFlat.h" 00014 #include "CLHEP/Random/RandGauss.h" 00015 00016 #include <vector> 00017 #include <ext/hash_map> 00018 00019 class SiStripBadChannelBuilder : public ConditionDBWriter<SiStripBadStrip> { 00020 00021 public: 00022 00023 explicit SiStripBadChannelBuilder(const edm::ParameterSet&); 00024 ~SiStripBadChannelBuilder(); 00025 00026 void algoAnalyze(const edm::Event & event, const edm::EventSetup& iSetup); 00027 00028 private: 00029 00030 SiStripBadStrip* getNewObject(){return obj;} 00031 00032 private: 00033 edm::FileInPath fp_; 00034 bool printdebug_; 00035 SiStripBadStrip* obj ; 00036 00037 typedef std::vector< edm::ParameterSet > Parameters; 00038 Parameters BadComponentList_; 00039 00040 }; 00041 #endif