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.
13 using namespace std;
14 
15 #include <iostream>
16 
18  inputLabel_(conf.getParameter<edm::InputTag>("digiLabel"))
19 {
20  const edm::ParameterSet& psHBHE=conf.getParameter<edm::ParameterSet>("hbhe");
21  bool markAndPass=psHBHE.getParameter<bool>("markAndPass");
22  hbhe_=std::auto_ptr<HcalZSAlgoEnergy>(new HcalZSAlgoEnergy(markAndPass,
23  psHBHE.getParameter<int>("level"),
24  psHBHE.getParameter<int>("firstSample"),
25  psHBHE.getParameter<int>("samplesToAdd"),
26  psHBHE.getParameter<bool>("twoSided")));
27  produces<HBHEDigiCollection>();
28 
29  const edm::ParameterSet& psHO=conf.getParameter<edm::ParameterSet>("ho");
30  markAndPass=psHO.getParameter<bool>("markAndPass");
31  ho_=std::auto_ptr<HcalZSAlgoEnergy>(new HcalZSAlgoEnergy(markAndPass,
32  psHO.getParameter<int>("level"),
33  psHO.getParameter<int>("firstSample"),
34  psHO.getParameter<int>("samplesToAdd"),
35  psHO.getParameter<bool>("twoSided")));
36  produces<HODigiCollection>();
37 
38  const edm::ParameterSet& psHF=conf.getParameter<edm::ParameterSet>("hf");
39  markAndPass=psHO.getParameter<bool>("markAndPass");
40  hf_=std::auto_ptr<HcalZSAlgoEnergy>(new HcalZSAlgoEnergy(markAndPass,
41  psHF.getParameter<int>("level"),
42  psHF.getParameter<int>("firstSample"),
43  psHF.getParameter<int>("samplesToAdd"),
44  psHF.getParameter<bool>("twoSided")));
45  produces<HFDigiCollection>();
46 
47 }
48 
50 }
51 
53 {
54  // get conditions
56  eventSetup.get<HcalDbRecord>().get(conditions);
57 
58 
59  {
60  hbhe_->prepare(&(*conditions));
62  e.getByLabel(inputLabel_,digi);
63 
64  // create empty output
65  std::auto_ptr<HBHEDigiCollection> zs(new HBHEDigiCollection);
66  // run the algorithm
67  hbhe_->suppress(*(digi.product()),*zs);
68 
69  edm::LogInfo("HcalZeroSuppression") << "Suppression (HBHE) input " << digi->size() << " digis, output " << zs->size() << " digis";
70 
71  // return result
72  e.put(zs);
73  hbhe_->done();
74  }
75  {
76  ho_->prepare(&(*conditions));
78  e.getByLabel(inputLabel_,digi);
79 
80  // create empty output
81  std::auto_ptr<HODigiCollection> zs(new HODigiCollection);
82  // run the algorithm
83  ho_->suppress(*(digi.product()),*zs);
84 
85  edm::LogInfo("HcalZeroSuppression") << "Suppression (HO) input " << digi->size() << " digis, output " << zs->size() << " digis";
86 
87  // return result
88  e.put(zs);
89  ho_->done();
90  }
91  {
92  hf_->prepare(&(*conditions));
94  e.getByLabel(inputLabel_,digi);
95 
96  // create empty output
97  std::auto_ptr<HFDigiCollection> zs(new HFDigiCollection);
98  // run the algorithm
99  hf_->suppress(*(digi.product()),*zs);
100 
101  edm::LogInfo("HcalZeroSuppression") << "Suppression (HF) input " << digi->size() << " digis, output " << zs->size() << " digis";
102 
103  // return result
104  e.put(zs);
105  hf_->done();
106  }
107 
108 }
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:94
std::auto_ptr< HcalZSAlgoEnergy > hbhe_
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:361
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_