CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
SelectiveReadoutTask.h
Go to the documentation of this file.
1 #ifndef SelectiveReadoutTask_H
2 #define SelectiveReadoutTask_H
3 
5 
7 
11 
13 
14 namespace ecaldqm {
15 
17  public:
20 
21  void beginRun(const edm::Run &, const edm::EventSetup &);
22  void beginEvent(const edm::Event &, const edm::EventSetup &);
23 
24  void analyze(const void*, Collections);
25 
26  void runOnSource(const FEDRawDataCollection &);
27  void runOnRawData(const EcalRawDataCollection &);
28  void runOnEBSrFlags(const EBSrFlagCollection &);
29  void runOnEESrFlags(const EESrFlagCollection &);
31 
32  enum MESets {
33  kTowerSize, // profile2d
34  kDCCSize, // h2f
35  kEventSize, // h1f
36  kFlagCounterMap, // h2f counter
37  kRUForcedMap, // h2f counter
38  kFullReadout, // h1f
39  kFullReadoutMap, // h2f counter
40  kZS1Map, // h2f counter
41  kZSMap, // h2f counter
43  kZSFullReadoutMap, // h2f counter
44  kFRDropped, // h1f
45  kFRDroppedMap, // h2f counter
49  kLowIntOutput, // h1f
51  };
52 
53  static void setMEData(std::vector<MEData>&);
54 
55  enum Constants {
56  nFIRTaps = 6,
58  };
59 
60  private:
61  void setFIRWeights_(const std::vector<double> &);
62  void runOnSrFlag_(const DetId &, int, float&);
63 
64  bool useCondDb_;
66  std::vector<int> ZSFIRWeights_;
67 
72 
73  std::vector<short> feStatus_[54];
74  std::set<uint32_t> frFlaggedTowers_;
75  std::set<uint32_t> zsFlaggedTowers_;
76  std::map<uint32_t, int> ttCrystals_;
77 
78  };
79 
80  inline void SelectiveReadoutTask::analyze(const void* _p, Collections _collection){
81  switch(_collection){
82  case kSource:
83  runOnSource(*static_cast<const FEDRawDataCollection*>(_p));
84  break;
85  case kEcalRawData:
86  runOnRawData(*static_cast<const EcalRawDataCollection*>(_p));
87  break;
88  case kEBSrFlag:
89  runOnEBSrFlags(*static_cast<const EBSrFlagCollection*>(_p));
90  break;
91  case kEESrFlag:
92  runOnEESrFlags(*static_cast<const EESrFlagCollection*>(_p));
93  break;
94  case kEBDigi:
95  case kEEDigi:
96  runOnDigis(*static_cast<const EcalDigiCollection*>(_p), _collection);
97  break;
98  default:
99  break;
100  }
101  }
102 
103 }
104 
105 #endif
106 
void beginEvent(const edm::Event &, const edm::EventSetup &)
std::map< uint32_t, int > ttCrystals_
void beginRun(const edm::Run &, const edm::EventSetup &)
const EBSrFlagCollection * ebSRFs_
const EcalChannelStatus * channelStatus_
const EESrFlagCollection * eeSRFs_
void runOnDigis(const EcalDigiCollection &, Collections)
void analyze(const void *, Collections)
std::set< uint32_t > zsFlaggedTowers_
SelectiveReadoutTask(const edm::ParameterSet &, const edm::ParameterSet &)
const EcalTrigTowerConstituentsMap * ttMap_
void runOnEESrFlags(const EESrFlagCollection &)
std::set< uint32_t > frFlaggedTowers_
void runOnSource(const FEDRawDataCollection &)
static void setMEData(std::vector< MEData > &)
void setFIRWeights_(const std::vector< double > &)
Definition: DetId.h:20
void runOnRawData(const EcalRawDataCollection &)
std::vector< short > feStatus_[54]
void runOnEBSrFlags(const EBSrFlagCollection &)
void runOnSrFlag_(const DetId &, int, float &)
Definition: Run.h:33