Go to the documentation of this file.00001 #ifndef CalibTracker_SiStripESProducers_SiStripBadModuleGenerator_H
00002 #define CalibTracker_SiStripESProducers_SiStripBadModuleGenerator_H
00003
00004 #include "FWCore/Framework/interface/Frameworkfwd.h"
00005 #include "FWCore/ServiceRegistry/interface/Service.h"
00006 #include "CondTools/SiStrip/interface/SiStripCondObjBuilderBase.h"
00007 #include "CondFormats/SiStripObjects/interface/SiStripBadStrip.h"
00008 #include <string>
00009
00010 class SiStripBadModuleGenerator : public SiStripCondObjBuilderBase<SiStripBadStrip> {
00011 public:
00012
00013 explicit SiStripBadModuleGenerator(const edm::ParameterSet&,const edm::ActivityRegistry&);
00014 ~SiStripBadModuleGenerator();
00015
00016 void getObj(SiStripBadStrip* & obj){createObject(); obj=obj_;}
00017
00018 private:
00019
00020 void createObject();
00021
00022 void selectDetectors(const std::vector<uint32_t>& , std::vector<uint32_t>& );
00023
00024 bool isTIBDetector(const uint32_t & therawid,
00025 uint32_t requested_layer,
00026 uint32_t requested_bkw_frw,
00027 uint32_t requested_int_ext,
00028 uint32_t requested_string,
00029 uint32_t requested_ster,
00030 uint32_t requested_detid) const;
00031
00032 bool isTOBDetector(const uint32_t & therawid,
00033 uint32_t requested_layer,
00034 uint32_t requested_bkw_frw,
00035 uint32_t requested_rod,
00036 uint32_t requested_ster,
00037 uint32_t requested_detid) const;
00038
00039 bool isTIDDetector(const uint32_t & therawid,
00040 uint32_t requested_side,
00041 uint32_t requested_wheel,
00042 uint32_t requested_ring,
00043 uint32_t requested_ster,
00044 uint32_t requested_detid) const;
00045
00046 bool isTECDetector(const uint32_t & therawid,
00047 uint32_t requested_side,
00048 uint32_t requested_wheel,
00049 uint32_t requested_petal_bkw_frw,
00050 uint32_t requested_petal,
00051 uint32_t requested_ring,
00052 uint32_t requested_ster,
00053 uint32_t requested_detid) const;
00054
00055 bool printdebug_;
00056 typedef std::vector< edm::ParameterSet > Parameters;
00057 Parameters BadComponentList_;
00058
00059 };
00060
00061 #endif