CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HcalSimpleAmplitudeZS.cc
Go to the documentation of this file.
14 using namespace std;
15 
16 #include <iostream>
17 
19  inputLabel_(conf.getParameter<edm::InputTag>("digiLabel"))
20 {
21  const edm::ParameterSet& psHBHE=conf.getParameter<edm::ParameterSet>("hbhe");
22  bool markAndPass=psHBHE.getParameter<bool>("markAndPass");
23  hbhe_=std::auto_ptr<HcalZSAlgoEnergy>(new HcalZSAlgoEnergy(markAndPass,
24  psHBHE.getParameter<int>("level"),
25  psHBHE.getParameter<int>("firstSample"),
26  psHBHE.getParameter<int>("samplesToAdd"),
27  psHBHE.getParameter<bool>("twoSided")));
28  produces<HBHEDigiCollection>();
29 
30  const edm::ParameterSet& psHO=conf.getParameter<edm::ParameterSet>("ho");
31  markAndPass=psHO.getParameter<bool>("markAndPass");
32  ho_=std::auto_ptr<HcalZSAlgoEnergy>(new HcalZSAlgoEnergy(markAndPass,
33  psHO.getParameter<int>("level"),
34  psHO.getParameter<int>("firstSample"),
35  psHO.getParameter<int>("samplesToAdd"),
36  psHO.getParameter<bool>("twoSided")));
37  produces<HODigiCollection>();
38 
39  const edm::ParameterSet& psHF=conf.getParameter<edm::ParameterSet>("hf");
40  markAndPass=psHO.getParameter<bool>("markAndPass");
41  hf_=std::auto_ptr<HcalZSAlgoEnergy>(new HcalZSAlgoEnergy(markAndPass,
42  psHF.getParameter<int>("level"),
43  psHF.getParameter<int>("firstSample"),
44  psHF.getParameter<int>("samplesToAdd"),
45  psHF.getParameter<bool>("twoSided")));
46  produces<HFDigiCollection>();
47 
48 }
49 
51 }
52 
54 {
55  // get conditions
57  eventSetup.get<HcalDbRecord>().get(conditions);
58 
59 
60  {
61  hbhe_->prepare(&(*conditions));
63  e.getByLabel(inputLabel_,digi);
64 
65  // create empty output
66  std::auto_ptr<HBHEDigiCollection> zs(new HBHEDigiCollection);
67  // run the algorithm
68  hbhe_->suppress(*(digi.product()),*zs);
69 
70  edm::LogInfo("HcalZeroSuppression") << "Suppression (HBHE) input " << digi->size() << " digis, output " << zs->size() << " digis";
71 
72  // return result
73  e.put(zs);
74  hbhe_->done();
75  }
76  {
77  ho_->prepare(&(*conditions));
79  e.getByLabel(inputLabel_,digi);
80 
81  // create empty output
82  std::auto_ptr<HODigiCollection> zs(new HODigiCollection);
83  // run the algorithm
84  ho_->suppress(*(digi.product()),*zs);
85 
86  edm::LogInfo("HcalZeroSuppression") << "Suppression (HO) input " << digi->size() << " digis, output " << zs->size() << " digis";
87 
88  // return result
89  e.put(zs);
90  ho_->done();
91  }
92  {
93  hf_->prepare(&(*conditions));
95  e.getByLabel(inputLabel_,digi);
96 
97  // create empty output
98  std::auto_ptr<HFDigiCollection> zs(new HFDigiCollection);
99  // run the algorithm
100  hf_->suppress(*(digi.product()),*zs);
101 
102  edm::LogInfo("HcalZeroSuppression") << "Suppression (HF) input " << digi->size() << " digis, output " << zs->size() << " digis";
103 
104  // return result
105  e.put(zs);
106  hf_->done();
107  }
108 
109 }
T getParameter(std::string const &) const
virtual void produce(edm::Event &e, const edm::EventSetup &c)
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
Definition: Event.h:85
std::auto_ptr< HcalZSAlgoEnergy > hbhe_
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:356
tuple conf
Definition: dbtoconf.py:185
const T & get() const
Definition: EventSetup.h:55
T const * product() const
Definition: Handle.h:74
std::auto_ptr< HcalZSAlgoEnergy > ho_
HcalSimpleAmplitudeZS(const edm::ParameterSet &ps)
std::auto_ptr< HcalZSAlgoEnergy > hf_