CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EcalSelectiveReadoutProducer.h
Go to the documentation of this file.
1 #ifndef ECALZEROSUPPRESSIONPRODUCER_H
2 #define ECALZEROSUPPRESSIONPRODUCER_H
3 
6 //#include "FWCore/Framework/interface/Event.h"
7 //#include "DataFormats/Common/interface/Handle.h"
8 //#include "FWCore/ParameterSet/interface/ParameterSet.h"
9 //#include "FWCore/Framework/interface/EventSetup.h"
14 
15 #include <memory>
16 #include <vector>
17 
19 {
20 public:
21 
25  explicit
27 
30  virtual
32 
37  virtual void
38  produce(edm::Event& event, const edm::EventSetup& eventSetup);
39 
46  static void
47  printSrFlags(std::ostream& os,
48  const EBSrFlagCollection& ebSrFlags,
49  const EESrFlagCollection& eeSrFlags,
50  int iEvent = -1,
51  bool withHeader = true);
52 
53 
54 private:
55 
61  void
62  checkWeights(const edm::Event& evt, const edm::ProductID& noZSDigiId) const;
63 
69  bool
70  getBinOfMax(const edm::Event& evt, const edm::ProductID& noZsDigiId,
71  int& binOfMax) const;
72 
73  const EBDigiCollection*
74  getEBDigis(edm::Event& event) const;
75 
76  const EEDigiCollection*
77  getEEDigis(edm::Event& event) const;
78 
80  getTrigPrims(edm::Event& event) const;
81 
85  void
86  checkGeometry(const edm::EventSetup & eventSetup);
87  void
88  checkTriggerMap(const edm::EventSetup & eventSetup);
89  void
90  checkElecMap(const edm::EventSetup & eventSetup);
91 
93 
99  static void checkValidity(const EcalSRSettings& settings);
100 
101  void
102  printTTFlags(const EcalTrigPrimDigiCollection& tp, std::ostream& os) const;
103 
104 private:
105  std::auto_ptr<EcalSelectiveReadoutSuppressor> suppressor_;
106  std::string digiProducer_; // name of module/plugin/producer making digis
107  std::string ebdigiCollection_; // secondary name given to collection of input digis
108  std::string eedigiCollection_; // secondary name given to collection of input digis
109  std::string ebSRPdigiCollection_; // secondary name given to collection of suppressed digis
110  std::string eeSRPdigiCollection_; // secondary name given to collection of suppressed digis
111  std::string ebSrFlagCollection_; // secondary name given to collection of SR flag digis
112  std::string eeSrFlagCollection_; // secondary name given to collection of SR flag digis
113  std::string trigPrimProducer_; // name of module/plugin/producer making triggere primitives
114  std::string trigPrimCollection_; // name of module/plugin/producer making triggere primitives
115 
116  // store the pointer, so we don't have to update it every event
121 
123 
125 
129 
133 
138 
142 
147 
148 
153 
157  std::auto_ptr<EcalSRSettings> settingsFromFile_;
158 
159  // Tokens for consumes collection:
160 
164 
165 };
166 
167 #endif
const EEDigiCollection * getEEDigis(edm::Event &event) const
void checkTriggerMap(const edm::EventSetup &eventSetup)
void checkGeometry(const edm::EventSetup &eventSetup)
bool getBinOfMax(const edm::Event &evt, const edm::ProductID &noZsDigiId, int &binOfMax) const
void printTTFlags(const EcalTrigPrimDigiCollection &tp, std::ostream &os) const
edm::EDGetTokenT< EBDigiCollection > EB_token
virtual void produce(edm::Event &event, const edm::EventSetup &eventSetup)
void checkElecMap(const edm::EventSetup &eventSetup)
int iEvent
Definition: GenABIO.cc:230
const EcalTrigTowerConstituentsMap * theTriggerTowerMap
const EcalElectronicsMapping * theElecMap
std::auto_ptr< EcalSelectiveReadoutSuppressor > suppressor_
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger but the state exists so we define the behavior If all triggers are the negative crieriion will lead to accepting the event(this again matches the behavior of"!*"before the partial wildcard feature was incorporated).The per-event"cost"of each negative criterion with multiple relevant triggers is about the same as!*was in the past
void checkWeights(const edm::Event &evt, const edm::ProductID &noZSDigiId) const
const EBDigiCollection * getEBDigis(edm::Event &event) const
const EcalTrigPrimDigiCollection * getTrigPrims(edm::Event &event) const
edm::EDGetTokenT< EcalTrigPrimDigiCollection > EcTP_token
edm::EDGetTokenT< EEDigiCollection > EE_token
static void printSrFlags(std::ostream &os, const EBSrFlagCollection &ebSrFlags, const EESrFlagCollection &eeSrFlags, int iEvent=-1, bool withHeader=true)
EcalSelectiveReadoutProducer(const edm::ParameterSet &params)
static void checkValidity(const EcalSRSettings &settings)
std::auto_ptr< EcalSRSettings > settingsFromFile_