CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_2_SLHC2_patch1/src/DQM/EcalBarrelMonitorTasks/interface/PresampleTask.h

Go to the documentation of this file.
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