CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
RecAnalyzerHF Class Reference
Inheritance diagram for RecAnalyzerHF:
edm::one::EDAnalyzer< edm::one::SharedResources > edm::one::EDAnalyzerBase edm::EDConsumerBase

Classes

struct  myInfo
 

Public Member Functions

 RecAnalyzerHF (const edm::ParameterSet &)
 
 ~RecAnalyzerHF () override
 
- Public Member Functions inherited from edm::one::EDAnalyzer< edm::one::SharedResources >
 EDAnalyzer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
- Public Member Functions inherited from edm::one::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDAnalyzerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from edm::one::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Member Functions

void analyze (edm::Event const &, edm::EventSetup const &) override
 
void analyzeHcal (const HFPreRecHitCollection &, int, bool)
 
void beginJob () override
 
void endJob () override
 

Private Attributes

int cells
 
int depth
 
double eHighHF_
 
double eLowHF_
 
bool fillTree_
 
edm::Service< TFileServicefs_
 
std::vector< unsigned int > hcalID_
 
TH1D * hist_ [2]
 
std::vector< std::pair< TH1D *, TH1D * > > histo_
 
int ieta
 
bool ignoreL1_
 
int iphi
 
float mom0_F1
 
float mom0_F2
 
float mom1_F1
 
float mom1_F2
 
float mom2_F1
 
float mom2_F2
 
float mom3_F1
 
float mom3_F2
 
float mom4_F1
 
float mom4_F2
 
std::map< std::pair< int, HcalDetId >, myInfomyMap_
 
int mysubd
 
TTree * myTree_
 
bool noise_
 
bool nzs_
 
bool ratio_
 
double rnnum_
 
double rnnumber
 
edm::EDGetTokenT< HFPreRecHitCollectiontok_hfreco_
 
edm::EDGetTokenT< L1GlobalTriggerObjectMapRecordtok_hltL1GtMap_
 
int trigbit
 
std::vector< int > trigbit_
 

Additional Inherited Members

- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

Definition at line 41 of file RecAnalyzerHF.cc.

Constructor & Destructor Documentation

RecAnalyzerHF::RecAnalyzerHF ( const edm::ParameterSet iConfig)
explicit

Definition at line 84 of file RecAnalyzerHF.cc.

References funct::abs(), depth, eHighHF_, eLowHF_, fillTree_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), HcalForward, hcalID_, ieta, ignoreL1_, iphi, gen::k, noise_, nzs_, ratio_, tok_hfreco_, tok_hltL1GtMap_, and trigbit_.

84  {
85 
86  usesResource("TFileService");
87  // get name of output file with histogramms
88  nzs_ = iConfig.getParameter<bool>("RunNZS");
89  noise_ = iConfig.getParameter<bool>("Noise");
90  ratio_ = iConfig.getParameter<bool>("Ratio");
91  eLowHF_ = iConfig.getParameter<double>("ELowHF");
92  eHighHF_ = iConfig.getParameter<double>("EHighHF");
93  trigbit_ = iConfig.getUntrackedParameter<std::vector<int>>("TriggerBits");
94  ignoreL1_ = iConfig.getUntrackedParameter<bool>("IgnoreL1",false);
95  fillTree_ = iConfig.getUntrackedParameter<bool>("FillTree",true);
96  std::vector<int> ieta = iConfig.getUntrackedParameter<std::vector<int>>("HcalIeta");
97  std::vector<int> iphi = iConfig.getUntrackedParameter<std::vector<int>>("HcalIphi");
98  std::vector<int> depth= iConfig.getUntrackedParameter<std::vector<int>>("HcalDepth");
99 
100  // get token names of modules, producing object collections
101  tok_hfreco_ = consumes<HFPreRecHitCollection>(iConfig.getParameter<edm::InputTag>("hfInput"));
102  tok_hltL1GtMap_ = consumes<L1GlobalTriggerObjectMapRecord>(edm::InputTag("hltL1GtObjectMap"));
103 
104  edm::LogVerbatim("RecAnalyzer") << " Flags (IgnoreL1): " << ignoreL1_
105  << " (NZS) " << nzs_ << " (Noise) " << noise_
106  << " (Ratio) " << ratio_;
107  edm::LogVerbatim("RecAnalyzer") << "Thresholds for HF " << eLowHF_ << ":"
108  << eHighHF_;
109  for (unsigned int k=0; k<ieta.size(); ++k) {
110  if (std::abs(ieta[k]) >= 29) {
111  unsigned int id = (HcalDetId(HcalForward,ieta[k],iphi[k],depth[k])).rawId();
112  hcalID_.push_back(id);
113  edm::LogVerbatim("RecAnalyzer") << "DetId[" << k << "] " << HcalDetId(id);
114  }
115  }
116  edm::LogVerbatim("RecAnalyzer") << "Select on " << trigbit_.size()
117  << " L1 Trigger selection";
118  unsigned int k(0);
119  for (auto trig : trigbit_) {
120  edm::LogVerbatim("RecAnalyzer") << "Bit[" << k << "] " << trig; ++k;}
121 }
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
std::vector< unsigned int > hcalID_
std::vector< int > trigbit_
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
edm::EDGetTokenT< HFPreRecHitCollection > tok_hfreco_
int k[5][pyjets_maxn]
edm::EDGetTokenT< L1GlobalTriggerObjectMapRecord > tok_hltL1GtMap_
RecAnalyzerHF::~RecAnalyzerHF ( )
override

Definition at line 123 of file RecAnalyzerHF.cc.

123 {}

Member Function Documentation

void RecAnalyzerHF::analyze ( edm::Event const &  ,
edm::EventSetup const &   
)
overrideprivatevirtual

Implements edm::one::EDAnalyzerBase.

Definition at line 243 of file RecAnalyzerHF.cc.

References analyzeHcal(), spr::find(), edm::Event::getByToken(), L1GlobalTriggerObjectMapRecord::gtObjectMap(), photonIsolationHIProducer_cfi::hf, ignoreL1_, edm::HandleBase::isValid(), nzs_, convertSQLiteXML::ok, edm::Handle< T >::product(), rnnum_, edm::Event::run(), TauGenJetsDecayModeSelectorAllHadrons_cfi::select, edm::SortedCollection< T, SORT >::size(), tok_hfreco_, tok_hltL1GtMap_, and trigbit_.

243  {
244 
245  rnnum_ = (double)iEvent.run();
246 
248  iEvent.getByToken(tok_hfreco_, hf);
249  if (!hf.isValid()) {
250  edm::LogWarning("RecAnalyzer") << "HcalCalibAlgos: Error! can't get hf product!";
251  return;
252  }
253  const HFPreRecHitCollection Hithf = *(hf.product());
254  edm::LogVerbatim("RecAnalyzer") << "HF MB size of collection "
255  << Hithf.size();
256  if (Hithf.size() < 1700 && nzs_) {
257  edm::LogWarning("RecAnalyzer") << "HF problem " << rnnum_ << " size "
258  << Hithf.size();
259  }
260 
261  bool select(false);
262  if (!trigbit_.empty()) {
264  iEvent.getByToken(tok_hltL1GtMap_, gtObjectMapRecord);
265  if (gtObjectMapRecord.isValid()) {
266  const std::vector<L1GlobalTriggerObjectMap>& objMapVec = gtObjectMapRecord->gtObjectMap();
267  for (std::vector<L1GlobalTriggerObjectMap>::const_iterator itMap = objMapVec.begin();
268  itMap != objMapVec.end(); ++itMap) {
269  bool resultGt = (*itMap).algoGtlResult();
270  if (resultGt) {
271  int algoBit = (*itMap).algoBitNumber();
272  if (std::find(trigbit_.begin(),trigbit_.end(),algoBit) !=
273  trigbit_.end()) {
274  select = true;
275  break;
276  }
277  }
278  }
279  }
280  }
281 
282  //event weight for FLAT sample and PU information
283 
284  if (ignoreL1_ || (!trigbit_.empty() && select)) {
285  analyzeHcal(Hithf, 1, true);
286  } else if ((!ignoreL1_) && (trigbit_.empty())) {
288  iEvent.getByToken(tok_hltL1GtMap_, gtObjectMapRecord);
289  if (gtObjectMapRecord.isValid()) {
290  const std::vector<L1GlobalTriggerObjectMap>& objMapVec = gtObjectMapRecord->gtObjectMap();
291  bool ok(false);
292  for (std::vector<L1GlobalTriggerObjectMap>::const_iterator itMap = objMapVec.begin();
293  itMap != objMapVec.end(); ++itMap) {
294  bool resultGt = (*itMap).algoGtlResult();
295  if (resultGt) {
296  int algoBit = (*itMap).algoBitNumber();
297  analyzeHcal(Hithf, algoBit, (!ok));
298  ok = true;
299  }
300  }
301  if (!ok) {
302  edm::LogVerbatim("RecAnalyzer") << "No passed L1 Trigger found";
303  }
304  }
305  }
306 }
std::vector< int > trigbit_
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:20
const std::vector< L1GlobalTriggerObjectMap > & gtObjectMap() const
get / set the vector of object maps
int iEvent
Definition: GenABIO.cc:230
edm::EDGetTokenT< HFPreRecHitCollection > tok_hfreco_
bool isValid() const
Definition: HandleBase.h:74
T const * product() const
Definition: Handle.h:81
size_type size() const
edm::EDGetTokenT< L1GlobalTriggerObjectMapRecord > tok_hltL1GtMap_
void analyzeHcal(const HFPreRecHitCollection &, int, bool)
void RecAnalyzerHF::analyzeHcal ( const HFPreRecHitCollection Hithf,
int  algoBit,
bool  fill 
)
private

Definition at line 308 of file RecAnalyzerHF.cc.

References funct::abs(), DEFINE_FWK_MODULE, MillePedeFileConverter_cfg::e, eHighHF_, eLowHF_, connectstrParser::f1, connectstrParser::f2, hcalID_, hist_, histo_, mps_fire::i, info(), myMap_, noise_, nzs_, ratio_, DetId::rawId(), rnnum_, and edm::SortedCollection< T, SORT >::size().

Referenced by analyze().

309  {
310 #ifdef EDM_ML_DEBUG
311  edm::LogVerbatim("RecAnalyzer") << "Enter analyzeHcal for bit " << algoBit
312  << " Fill " << fill << " Collection size "
313  << Hithf.size();
314 #endif
315  // Signal part for HF
316  for (const auto & hfItr : Hithf) {
317  HcalDetId hid = hfItr.id();
318  double e0 = (hfItr.getHFQIE10Info(0)==nullptr) ? 0 : hfItr.getHFQIE10Info(0)->energy();
319  double e1 = (hfItr.getHFQIE10Info(1)==nullptr) ? 0 : hfItr.getHFQIE10Info(1)->energy();
320  double energy = e0+e1;
321  if (std::abs(energy) < 1e-6) energy = (energy > 0) ? 1e-6 : -1e-6;
322  double f1(e0), f2(e1);
323  if (ratio_) {
324  f1 /= energy;
325  f2 /= energy;
326  }
327 #ifdef EDM_ML_DEBUG
328  edm::LogVerbatim("RecAnalyzer") << hid << " E " << e0 << ":" << e1
329  << " F " << f1 << ":" << f2;
330 #endif
331  if (fill) {
332  for (unsigned int i = 0; i < hcalID_.size(); i++) {
333  if (hcalID_[i] == hid.rawId()) {
334  histo_[i].first->Fill(f1);
335  histo_[i].second->Fill(f2);
336  break;
337  }
338  }
339  hist_[0]->Fill(f1);
340  hist_[1]->Fill(f2);
341  }
342 
343  //
344  // Remove PMT hits
345  //
346  if (((noise_ || nzs_) && fabs(energy) <= 40.) ||
347  (energy >= eLowHF_ && energy <= eHighHF_)) {
348  std::map<std::pair<int,HcalDetId>,myInfo>::iterator itr1 = myMap_.find(std::pair<int,HcalDetId>(algoBit,hid));
349  if (itr1 == myMap_.end()) {
350  myInfo info;
351  myMap_[std::pair<int,HcalDetId>(algoBit,hid)] = info;
352  itr1 = myMap_.find(std::pair<int,HcalDetId>(algoBit,hid));
353  }
354  itr1->second.kount += 1.0;
355  itr1->second.f11 += (f1);
356  itr1->second.f12 += (f1*f1);
357  itr1->second.f13 += (f1*f1*f1);
358  itr1->second.f14 += (f1*f1*f1*f1);
359  itr1->second.f21 += (f2);
360  itr1->second.f22 += (f2*f2);
361  itr1->second.f23 += (f2*f2*f2);
362  itr1->second.f24 += (f2*f2*f2*f2);
363  itr1->second.runcheck = rnnum_;
364  }
365  }
366 }
TH1D * hist_[2]
static const TGPicture * info(bool iBackgroundIsBlack)
std::vector< unsigned int > hcalID_
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:47
std::vector< std::pair< TH1D *, TH1D * > > histo_
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
size_type size() const
std::map< std::pair< int, HcalDetId >, myInfo > myMap_
void RecAnalyzerHF::beginJob ( void  )
overrideprivatevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 145 of file RecAnalyzerHF.cc.

References cells, depth, HcalDetId::depth(), fillTree_, fs_, hcalID_, hist_, histo_, mps_fire::i, ieta, HcalDetId::ieta(), iphi, HcalDetId::iphi(), TFileService::make(), mom0_F1, mom0_F2, mom1_F1, mom1_F2, mom2_F1, mom2_F2, mom3_F1, mom3_F2, mom4_F1, mom4_F2, myMap_, mysubd, myTree_, dataset::name, ratio_, rnnumber, fftjetcommon_cfi::title, trigbit, TrackerOfflineValidation_Dqm_cff::xmax, and TrackerOfflineValidation_Dqm_cff::xmin.

145  {
146 
147  char name[700], title[700];
148  double xmin(-10.0), xmax(90.0);
149  if (ratio_) { xmin = -5.0; xmax = 5.0;}
150  for (int i=0; i<2; ++i) {
151  sprintf(name, "HF%d", i);
152  sprintf (title, "The metric F%d for HF", i+1);
153  hist_[i] = fs_->make<TH1D>(name,title,50,xmin,xmax);
154  }
155 
156  for (const auto & id : hcalID_) {
157  HcalDetId hid = HcalDetId(id);
158  TH1D *h1(nullptr), *h2(nullptr);
159  for (int i=0; i<2; ++i) {
160  sprintf (name, "HF%d%d_%d_%d", i, hid.ieta(), hid.iphi(), hid.depth());
161  sprintf (title, "The metric F%d for HF i#eta %d i#phi %d depth %d",
162  i+1, hid.ieta(), hid.iphi(), hid.depth());
163  if (i == 0) h1 = fs_->make<TH1D>(name, title, 50, xmin, xmax);
164  else h2 = fs_->make<TH1D>(name, title, 50, xmin, xmax);
165  }
166  histo_.push_back(std::pair<TH1D*,TH1D*>(h1,h2));
167  };
168 
169  if (fillTree_) {
170  myTree_ = fs_->make<TTree>("RecJet","RecJet Tree");
171  myTree_->Branch("cells", &cells, "cells/I");
172  myTree_->Branch("mysubd", &mysubd, "mysubd/I");
173  myTree_->Branch("depth", &depth, "depth/I");
174  myTree_->Branch("ieta", &ieta, "ieta/I");
175  myTree_->Branch("iphi", &iphi, "iphi/I");
176  myTree_->Branch("mom0_F1", &mom0_F1, "mom0_F1/F");
177  myTree_->Branch("mom1_F1", &mom1_F1, "mom1_F1/F");
178  myTree_->Branch("mom2_F1", &mom2_F1, "mom2_F1/F");
179  myTree_->Branch("mom3_F1", &mom3_F1, "mom3_F1/F");
180  myTree_->Branch("mom4_F1", &mom4_F1, "mom4_F1/F");
181  myTree_->Branch("mom0_F2", &mom0_F2, "mom0_F2/F");
182  myTree_->Branch("mom1_F2", &mom1_F2, "mom1_F2/F");
183  myTree_->Branch("mom2_F2", &mom2_F2, "mom2_F2/F");
184  myTree_->Branch("mom3_F2", &mom3_F2, "mom3_F2/F");
185  myTree_->Branch("mom4_F2", &mom4_F2, "mom4_F2/F");
186  myTree_->Branch("trigbit", &trigbit, "trigbit/I");
187  myTree_->Branch("rnnumber", &rnnumber, "rnnumber/D");
188  }
189 
190  myMap_.clear();
191 }
TH1D * hist_[2]
std::vector< unsigned int > hcalID_
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
int depth() const
get the tower depth
Definition: HcalDetId.h:162
std::vector< std::pair< TH1D *, TH1D * > > histo_
int ieta() const
get the cell ieta
Definition: HcalDetId.h:155
int iphi() const
get the cell iphi
Definition: HcalDetId.h:157
edm::Service< TFileService > fs_
std::map< std::pair< int, HcalDetId >, myInfo > myMap_
void RecAnalyzerHF::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 193 of file RecAnalyzerHF.cc.

References cells, depth, RecAnalyzerHF::myInfo::f11, RecAnalyzerHF::myInfo::f12, RecAnalyzerHF::myInfo::f13, RecAnalyzerHF::myInfo::f14, RecAnalyzerHF::myInfo::f21, RecAnalyzerHF::myInfo::f22, RecAnalyzerHF::myInfo::f23, RecAnalyzerHF::myInfo::f24, fillTree_, ieta, info(), iphi, RecAnalyzerHF::myInfo::kount, mom0_F1, mom0_F2, mom1_F1, mom1_F2, mom2_F1, mom2_F2, mom3_F1, mom3_F2, mom4_F1, mom4_F2, myMap_, mysubd, myTree_, rnnumber, RecAnalyzerHF::myInfo::runcheck, and trigbit.

Referenced by o2olib.O2ORunMgr::executeJob().

193  {
194 
195  if (fillTree_) {
196  cells = 0;
197  for (const auto & itr : myMap_) {
198  edm::LogVerbatim("RecAnalyzer") << "Fired trigger bit number "
199  << itr.first.first;
200  myInfo info = itr.second;
201  if (info.kount > 0) {
202  mom0_F1 = info.kount;
203  mom1_F1 = info.f11;
204  mom2_F1 = info.f12;
205  mom3_F1 = info.f13;
206  mom4_F1 = info.f14;
207  mom0_F2 = info.kount;
208  mom1_F2 = info.f21;
209  mom2_F2 = info.f22;
210  mom3_F2 = info.f23;
211  mom4_F2 = info.f24;
212  rnnumber = info.runcheck;
213  trigbit = itr.first.first;
214  mysubd = itr.first.second.subdet();
215  depth = itr.first.second.depth();
216  iphi = itr.first.second.iphi();
217  ieta = itr.first.second.ieta();
218  edm::LogVerbatim("RecAnalyzer") << " Result= " << trigbit << " "
219  << mysubd << " " << ieta << " " << iphi
220  << " F1:mom0 " << mom0_F1 << " mom1 "
221  << mom1_F1 << " mom2 " << mom2_F1
222  << " mom3 " << mom3_F1 << " mom4 "
223  << mom4_F1 << " F2:mom0 " << mom0_F2
224  << " mom1 " << mom1_F2 << " mom2 "
225  << mom2_F2 << " mom3 " << mom3_F2
226  << " mom4 " << mom4_F2;
227  myTree_->Fill();
228  cells++;
229  }
230  }
231  edm::LogVerbatim("RecAnalyzer") << "cells" << " " << cells;
232  }
233 #ifdef EDM_ML_DEBUG
234  edm::LogVerbatim("RecAnalyzer") << "Exiting from RecAnalyzerHF::endjob";
235 #endif
236 }
static const TGPicture * info(bool iBackgroundIsBlack)
std::map< std::pair< int, HcalDetId >, myInfo > myMap_
void RecAnalyzerHF::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 126 of file RecAnalyzerHF.cc.

References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), and edm::ParameterSetDescription::addUntracked().

126  {
127 
129  desc.add<bool>("RunNZS",true);
130  desc.add<bool>("Noise",false);
131  desc.add<bool>("Ratio",false);
132  desc.add<double>("ELowHF",10);
133  desc.add<double>("EHighHF",150);
134  std::vector<int> idummy;
135  desc.addUntracked<std::vector<int> >("TriggerBits",idummy);
136  desc.addUntracked<bool>("IgnoreL1",false);
137  desc.addUntracked<bool>("FillHisto",false);
138  desc.addUntracked<std::vector<int> >("HcalIeta",idummy);
139  desc.addUntracked<std::vector<int> >("HcalIphi",idummy);
140  desc.addUntracked<std::vector<int> >("HcalDepth",idummy);
141  desc.add<edm::InputTag>("hfInput",edm::InputTag("hfprereco"));
142  descriptions.add("recAnalyzerHF",desc);
143 }
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
ParameterDescriptionBase * add(U const &iLabel, T const &value)
void add(std::string const &label, ParameterSetDescription const &psetDescription)

Member Data Documentation

int RecAnalyzerHF::cells
private

Definition at line 75 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

int RecAnalyzerHF::depth
private
double RecAnalyzerHF::eHighHF_
private

Definition at line 60 of file RecAnalyzerHF.cc.

Referenced by analyzeHcal(), and RecAnalyzerHF().

double RecAnalyzerHF::eLowHF_
private

Definition at line 60 of file RecAnalyzerHF.cc.

Referenced by analyzeHcal(), and RecAnalyzerHF().

bool RecAnalyzerHF::fillTree_
private

Definition at line 59 of file RecAnalyzerHF.cc.

Referenced by beginJob(), endJob(), and RecAnalyzerHF().

edm::Service<TFileService> RecAnalyzerHF::fs_
private

Definition at line 58 of file RecAnalyzerHF.cc.

Referenced by beginJob().

std::vector<unsigned int> RecAnalyzerHF::hcalID_
private

Definition at line 61 of file RecAnalyzerHF.cc.

Referenced by analyzeHcal(), beginJob(), and RecAnalyzerHF().

TH1D* RecAnalyzerHF::hist_[2]
private

Definition at line 63 of file RecAnalyzerHF.cc.

Referenced by analyzeHcal(), and beginJob().

std::vector<std::pair<TH1D*,TH1D*> > RecAnalyzerHF::histo_
private

Definition at line 64 of file RecAnalyzerHF.cc.

Referenced by analyzeHcal(), and beginJob().

int RecAnalyzerHF::ieta
private

Definition at line 75 of file RecAnalyzerHF.cc.

Referenced by beginJob(), endJob(), and RecAnalyzerHF().

bool RecAnalyzerHF::ignoreL1_
private

Definition at line 59 of file RecAnalyzerHF.cc.

Referenced by analyze(), and RecAnalyzerHF().

int RecAnalyzerHF::iphi
private

Definition at line 75 of file RecAnalyzerHF.cc.

Referenced by beginJob(), endJob(), and RecAnalyzerHF().

float RecAnalyzerHF::mom0_F1
private

Definition at line 76 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

float RecAnalyzerHF::mom0_F2
private

Definition at line 77 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

float RecAnalyzerHF::mom1_F1
private

Definition at line 76 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

float RecAnalyzerHF::mom1_F2
private

Definition at line 77 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

float RecAnalyzerHF::mom2_F1
private

Definition at line 76 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

float RecAnalyzerHF::mom2_F2
private

Definition at line 77 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

float RecAnalyzerHF::mom3_F1
private

Definition at line 76 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

float RecAnalyzerHF::mom3_F2
private

Definition at line 77 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

float RecAnalyzerHF::mom4_F1
private

Definition at line 76 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

float RecAnalyzerHF::mom4_F2
private

Definition at line 77 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

std::map<std::pair<int,HcalDetId>,myInfo> RecAnalyzerHF::myMap_
private

Definition at line 78 of file RecAnalyzerHF.cc.

Referenced by analyzeHcal(), beginJob(), and endJob().

int RecAnalyzerHF::mysubd
private

Definition at line 75 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

TTree* RecAnalyzerHF::myTree_
private

Definition at line 62 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

bool RecAnalyzerHF::noise_
private

Definition at line 59 of file RecAnalyzerHF.cc.

Referenced by analyzeHcal(), and RecAnalyzerHF().

bool RecAnalyzerHF::nzs_
private

Definition at line 59 of file RecAnalyzerHF.cc.

Referenced by analyze(), analyzeHcal(), and RecAnalyzerHF().

bool RecAnalyzerHF::ratio_
private

Definition at line 59 of file RecAnalyzerHF.cc.

Referenced by analyzeHcal(), beginJob(), and RecAnalyzerHF().

double RecAnalyzerHF::rnnum_
private

Definition at line 66 of file RecAnalyzerHF.cc.

Referenced by analyze(), and analyzeHcal().

double RecAnalyzerHF::rnnumber
private

Definition at line 74 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

edm::EDGetTokenT<HFPreRecHitCollection> RecAnalyzerHF::tok_hfreco_
private

Definition at line 79 of file RecAnalyzerHF.cc.

Referenced by analyze(), and RecAnalyzerHF().

edm::EDGetTokenT<L1GlobalTriggerObjectMapRecord> RecAnalyzerHF::tok_hltL1GtMap_
private

Definition at line 80 of file RecAnalyzerHF.cc.

Referenced by analyze(), and RecAnalyzerHF().

int RecAnalyzerHF::trigbit
private

Definition at line 75 of file RecAnalyzerHF.cc.

Referenced by beginJob(), and endJob().

std::vector<int> RecAnalyzerHF::trigbit_
private

Definition at line 65 of file RecAnalyzerHF.cc.

Referenced by analyze(), and RecAnalyzerHF().