00001 #ifndef PresampleTask_H 00002 #define PresampleTask_H 00003 00004 #include "DQM/EcalCommon/interface/DQWorkerTask.h" 00005 00006 #include "DataFormats/EcalDigi/interface/EcalDigiCollections.h" 00007 00008 namespace ecaldqm { 00009 00010 class PresampleTask : public DQWorkerTask { 00011 public: 00012 PresampleTask(const edm::ParameterSet &, const edm::ParameterSet&); 00013 ~PresampleTask(); 00014 00015 bool filterRunType(const std::vector<short>&); 00016 00017 void analyze(const void*, Collections); 00018 00019 void runOnDigis(const EcalDigiCollection &); 00020 00021 enum MESets { 00022 kPedestal, // profile2d 00023 nMESets 00024 }; 00025 00026 static void setMEData(std::vector<MEData>&); 00027 }; 00028 00029 inline void PresampleTask::analyze(const void* _p, Collections _collection){ 00030 switch(_collection){ 00031 case kEBDigi: 00032 case kEEDigi: 00033 runOnDigis(*static_cast<const EcalDigiCollection*>(_p)); 00034 break; 00035 default: 00036 break; 00037 } 00038 } 00039 00040 } 00041 00042 #endif 00043