CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes
HLTRechitInRegionsProducer< T1 > Class Template Reference

#include <HLTRechitInRegionsProducer.h>

Inheritance diagram for HLTRechitInRegionsProducer< T1 >:
edm::stream::EDProducer<> edm::stream::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

 HLTRechitInRegionsProducer (const edm::ParameterSet &ps)
 
void produce (edm::Event &, const edm::EventSetup &) override
 
 ~HLTRechitInRegionsProducer ()
 
- Public Member Functions inherited from edm::stream::EDProducer<>
 EDProducer ()=default
 
- Public Member Functions inherited from edm::stream::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
virtual ~EDProducerBase ()
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, std::unordered_multimap< std::string, edm::ProductResolverIndex > const &iIndicies, std::string const &moduleLabel)
 
virtual ~ProducerBase () noexcept(false)
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
 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
 
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::stream::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Types

typedef std::vector< T1 > T1Collection
 
typedef T1::const_iterator T1iterator
 

Private Member Functions

void getEtaPhiRegions (std::vector< EcalEtaPhiRegion > *, T1Collection, const L1CaloGeometry &, bool)
 
template<>
void getEtaPhiRegions (std::vector< EcalEtaPhiRegion > *theRegions, T1Collection theCandidateCollection, const L1CaloGeometry &l1CaloGeom, bool isolatedCase)
 

Private Attributes

const bool doIsolated_
 
const std::vector< edm::InputTaghitLabels
 
std::vector< edm::EDGetTokenT< EcalRecHitCollection > > hitTokens
 
const double l1LowerThr_
 
const double l1LowerThrIgnoreIsolation_
 
const edm::EDGetTokenT< T1Collectionl1TokenIsolated_
 
const edm::EDGetTokenT< T1Collectionl1TokenNonIsolated_
 
const double l1UpperThr_
 
const std::vector< std::string > productLabels
 
const double regionEtaMargin_
 
const double regionPhiMargin_
 
std::vector< edm::EDGetTokenT< EcalUncalibratedRecHitCollection > > uncalibHitTokens
 
const bool useUncalib_
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDProducer<>
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Public Types inherited from edm::stream::EDProducerBase
typedef EDProducerAdaptorBase ModuleType
 
- Public Types inherited from edm::ProducerBase
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- 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

template<typename T1>
class HLTRechitInRegionsProducer< T1 >

Definition at line 36 of file HLTRechitInRegionsProducer.h.

Member Typedef Documentation

template<typename T1 >
typedef std::vector<T1> HLTRechitInRegionsProducer< T1 >::T1Collection
private

Definition at line 37 of file HLTRechitInRegionsProducer.h.

template<typename T1 >
typedef T1::const_iterator HLTRechitInRegionsProducer< T1 >::T1iterator
private

Definition at line 38 of file HLTRechitInRegionsProducer.h.

Constructor & Destructor Documentation

template<typename T1 >
HLTRechitInRegionsProducer< T1 >::HLTRechitInRegionsProducer ( const edm::ParameterSet ps)

Definition at line 45 of file HLTRechitInRegionsProducer.cc.

References HLTRechitInRegionsProducer< T1 >::hitLabels, HLTRechitInRegionsProducer< T1 >::hitTokens, mps_fire::i, HLTRechitInRegionsProducer< T1 >::productLabels, HLTRechitInRegionsProducer< T1 >::uncalibHitTokens, and HLTRechitInRegionsProducer< T1 >::useUncalib_.

45  :
46  useUncalib_ (ps.getParameter<bool>("useUncalib")),
47  doIsolated_ (ps.getParameter<bool>("doIsolated")),
48  l1TokenIsolated_ (doIsolated_ ? consumes<T1Collection>(ps.getParameter<edm::InputTag>("l1TagIsolated")) : edm::EDGetTokenT<T1Collection>()),
49  l1TokenNonIsolated_(consumes<T1Collection>(ps.getParameter<edm::InputTag>("l1TagNonIsolated"))),
50  l1LowerThr_ (ps.getParameter<double> ("l1LowerThr")),
51  l1UpperThr_ (ps.getParameter<double> ("l1UpperThr")),
52  l1LowerThrIgnoreIsolation_(ps.getParameter<double> ("l1LowerThrIgnoreIsolation")),
53  regionEtaMargin_(ps.getParameter<double>("regionEtaMargin")),
54  regionPhiMargin_(ps.getParameter<double>("regionPhiMargin")),
55  hitLabels (ps.getParameter<std::vector<edm::InputTag>>("ecalhitLabels")),
56  productLabels(ps.getParameter<std::vector<std::string>>("productLabels")) {
57 
58  if (useUncalib_) {
59  for (unsigned int i=0; i<hitLabels.size(); i++) {
60  uncalibHitTokens.push_back(consumes<EcalUncalibratedRecHitCollection>(hitLabels[i]));
61  produces<EcalUncalibratedRecHitCollection>(productLabels[i]);
62  }
63  } else {
64  for (unsigned int i=0; i<hitLabels.size(); i++) {
65  hitTokens.push_back(consumes<EcalRecHitCollection>(hitLabels[i]));
66  produces<EcalRecHitCollection> (productLabels[i]);
67  }
68  }
69 }
T getParameter(std::string const &) const
const std::vector< edm::InputTag > hitLabels
const std::vector< std::string > productLabels
const edm::EDGetTokenT< T1Collection > l1TokenIsolated_
std::vector< edm::EDGetTokenT< EcalRecHitCollection > > hitTokens
const edm::EDGetTokenT< T1Collection > l1TokenNonIsolated_
std::vector< edm::EDGetTokenT< EcalUncalibratedRecHitCollection > > uncalibHitTokens
template<typename T1 >
HLTRechitInRegionsProducer< T1 >::~HLTRechitInRegionsProducer ( )

Definition at line 72 of file HLTRechitInRegionsProducer.cc.

73 {}

Member Function Documentation

template<typename T1 >
void HLTRechitInRegionsProducer< T1 >::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 76 of file HLTRechitInRegionsProducer.cc.

References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), defaultModuleLabel(), and HiRecoMuon_cff::inputTags.

76  {
78  std::vector<std::string> productTags;
79  productTags.push_back("EcalRegionalRecHitsEB");
80  productTags.push_back("EcalRegionalRecHitsEE");
81  desc.add<std::vector<std::string>>("productLabels", productTags);
82  std::vector<edm::InputTag> inputTags;
83  inputTags.push_back(edm::InputTag("hltEcalRegionalEgammaRecHit:EcalRecHitsEB"));
84  inputTags.push_back(edm::InputTag("hltEcalRegionalEgammaRecHit:EcalRecHitsEE"));
85  inputTags.push_back(edm::InputTag("hltESRegionalEgammaRecHit:EcalRecHitsES"));
86  desc.add<std::vector<edm::InputTag>>("ecalhitLabels", inputTags);
87  desc.add<edm::InputTag>("l1TagIsolated", edm::InputTag("l1extraParticles","Isolated"));
88  desc.add<edm::InputTag>("l1TagNonIsolated", edm::InputTag("l1extraParticles","NonIsolated"));
89  desc.add<bool>("useUncalib", true);
90  desc.add<bool>("doIsolated", true);
91  desc.add<double>("l1LowerThr", 5.0);
92  desc.add<double>("l1UpperThr", 999.);
93  desc.add<double>("l1LowerThrIgnoreIsolation", 0.0);
94  desc.add<double>("regionEtaMargin", 0.14);
95  desc.add<double>("regionPhiMargin", 0.4);
97 }
std::string defaultModuleLabel()
ParameterDescriptionBase * add(U const &iLabel, T const &value)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
template<typename T1 >
void HLTRechitInRegionsProducer< T1 >::getEtaPhiRegions ( std::vector< EcalEtaPhiRegion > *  theRegions,
T1Collection  theCandidateCollection,
const L1CaloGeometry l1CaloGeom,
bool  isolatedCase 
)
private

Definition at line 254 of file HLTRechitInRegionsProducer.cc.

References HLTRechitInRegionsProducer< T1 >::l1LowerThr_, HLTRechitInRegionsProducer< T1 >::l1UpperThr_, HLTRechitInRegionsProducer< T1 >::regionEtaMargin_, and HLTRechitInRegionsProducer< T1 >::regionPhiMargin_.

Referenced by HLTRechitInRegionsProducer< T1 >::produce().

254  {
255  for (unsigned int candItr = 0 ; candItr < theCandidateCollection.size(); candItr++){
256  T1 emItr = theCandidateCollection.at(candItr);
257  if ((emItr.et() > l1LowerThr_) and (emItr.et() < l1UpperThr_)) {
258 
259  double etaLow = emItr.eta() - regionEtaMargin_;
260  double etaHigh = emItr.eta() + regionEtaMargin_;
261  double phiLow = emItr.phi() - regionPhiMargin_;
262  double phiHigh = emItr.phi() + regionPhiMargin_;
263 
264  theRegions->push_back(EcalEtaPhiRegion(etaLow,etaHigh,phiLow,phiHigh));
265  }
266  }
267 }
template<>
void HLTRechitInRegionsProducer< l1extra::L1EmParticle >::getEtaPhiRegions ( std::vector< EcalEtaPhiRegion > *  theRegions,
T1Collection  theCandidateCollection,
const L1CaloGeometry l1CaloGeom,
bool  isolatedCase 
)
private

Definition at line 221 of file HLTRechitInRegionsProducer.cc.

References HLTRechitInRegionsProducer< T1 >::doIsolated_, L1CaloGeometry::emJetPhiBinHighEdge(), L1CaloGeometry::emJetPhiBinLowEdge(), reco::LeafCandidate::et(), L1CaloGeometry::etaBinHighEdge(), L1CaloGeometry::etaBinLowEdge(), L1GctEmCand::etaIndex(), l1extra::L1EmParticle::gctEmCand(), HLTRechitInRegionsProducer< T1 >::l1LowerThr_, HLTRechitInRegionsProducer< T1 >::l1LowerThrIgnoreIsolation_, HLTRechitInRegionsProducer< T1 >::l1UpperThr_, L1GctEmCand::phiIndex(), HLTRechitInRegionsProducer< T1 >::regionEtaMargin_, and HLTRechitInRegionsProducer< T1 >::regionPhiMargin_.

221  {
222  for (unsigned int candItr = 0 ; candItr < theCandidateCollection.size(); candItr++){
223  l1extra::L1EmParticle emItr = theCandidateCollection.at(candItr);
224 
225  if (!isolatedCase){
226  if(doIsolated_ and (emItr.et() < l1LowerThrIgnoreIsolation_)) continue;
227  }
228 
229  if ((emItr.et() > l1LowerThr_) and (emItr.et() < l1UpperThr_)) {
230 
231  // Access the GCT hardware object corresponding to the L1Extra EM object.
232  int etaIndex = emItr.gctEmCand()->etaIndex();
233  int phiIndex = emItr.gctEmCand()->phiIndex();
234 
235  // Use the L1CaloGeometry to find the eta, phi bin boundaries.
236  double etaLow = l1CaloGeom.etaBinLowEdge(etaIndex);
237  double etaHigh = l1CaloGeom.etaBinHighEdge(etaIndex);
238  double phiLow = l1CaloGeom.emJetPhiBinLowEdge( phiIndex ) ;
239  double phiHigh = l1CaloGeom.emJetPhiBinHighEdge( phiIndex ) ;
240 
241  etaLow -= regionEtaMargin_;
242  etaHigh += regionEtaMargin_;
243  phiLow -= regionPhiMargin_;
244  phiHigh += regionPhiMargin_;
245 
246 
247 
248  theRegions->push_back(EcalEtaPhiRegion(etaLow,etaHigh,phiLow,phiHigh));
249  }
250  }
251 }
double etaBinHighEdge(unsigned int etaIndex, bool central=true) const
double etaBinLowEdge(unsigned int etaIndex, bool central=true) const
const L1GctEmCand * gctEmCand() const
Definition: L1EmParticle.h:68
unsigned phiIndex() const
get phi index (0-17)
Definition: L1GctEmCand.h:70
virtual double et() const final
transverse energy
unsigned etaIndex() const
get eta index -6 to -0, +0 to +6 (bit 3 is sign, 1 for -ve Z, 0 for +ve Z)
Definition: L1GctEmCand.h:64
double emJetPhiBinLowEdge(unsigned int phiIndex) const
double emJetPhiBinHighEdge(unsigned int phiIndex) const
template<typename T1 >
void HLTRechitInRegionsProducer< T1 >::produce ( edm::Event evt,
const edm::EventSetup es 
)
override

Definition at line 100 of file HLTRechitInRegionsProducer.cc.

References edm::SortedCollection< T, SORT >::begin(), HLTRechitInRegionsProducer< T1 >::doIsolated_, DetId::Ecal, EcalBarrel, EcalEndcap, EcalPreshower, edm::SortedCollection< T, SORT >::end(), CaloCellGeometry::etaPos(), edm::EventSetup::get(), edm::Event::getByToken(), HLTRechitInRegionsProducer< T1 >::getEtaPhiRegions(), CaloGeometry::getSubdetectorGeometry(), HLTRechitInRegionsProducer< T1 >::hitLabels, hfClusterShapes_cfi::hits, HLTRechitInRegionsProducer< T1 >::hitTokens, mps_fire::i, HLTRechitInRegionsProducer< T1 >::l1LowerThrIgnoreIsolation_, HLTRechitInRegionsProducer< T1 >::l1TokenIsolated_, HLTRechitInRegionsProducer< T1 >::l1TokenNonIsolated_, eostools::move(), or, CaloCellGeometry::phiPos(), edm::Handle< T >::product(), HLTRechitInRegionsProducer< T1 >::productLabels, edm::Event::put(), edm::SortedCollection< T, SORT >::size(), ecaldqm::topology(), HLTRechitInRegionsProducer< T1 >::uncalibHitTokens, and HLTRechitInRegionsProducer< T1 >::useUncalib_.

100  {
101 
102  // get the collection geometry:
103  edm::ESHandle<CaloGeometry> geoHandle;
104  es.get<CaloGeometryRecord>().get(geoHandle);
105  const CaloGeometry& geometry = *geoHandle;
106  const CaloSubdetectorGeometry *geometry_p;
107  std::unique_ptr<const CaloSubdetectorTopology> topology;
108 
109  //Get the L1 EM Particle Collection
110  edm::Handle< T1Collection > emIsolColl ;
111  if(doIsolated_) {
112  evt.getByToken(l1TokenIsolated_, emIsolColl);
113  }
114 
115  //Get the L1 EM Particle Collection
116  edm::Handle< T1Collection > emNonIsolColl ;
117  evt.getByToken(l1TokenNonIsolated_, emNonIsolColl);
118 
119  // Get the CaloGeometry
120  edm::ESHandle<L1CaloGeometry> l1CaloGeom ;
121  es.get<L1CaloGeometryRecord>().get(l1CaloGeom) ;
122 
123  std::vector<EcalEtaPhiRegion> regions;
124  if(doIsolated_) getEtaPhiRegions(&regions, *emIsolColl, *l1CaloGeom, true);
125 
126  if(!doIsolated_ or (l1LowerThrIgnoreIsolation_ < 64)) getEtaPhiRegions(&regions, *emNonIsolColl, *l1CaloGeom, false);
127 
128 
129  if (useUncalib_) {
130 
132  for (unsigned int i=0; i<hitLabels.size(); i++) {
133  auto uhits = std::make_unique<EcalUncalibratedRecHitCollection>();
134 
135  evt.getByToken(uncalibHitTokens[i], urhcH[i]);
136  if (!(urhcH[i].isValid())) {
137  edm::LogError("ProductNotFound")<< "could not get a handle on the EcalRecHitCollection! (" << hitLabels[i].encode() << ")" << std::endl;
138  return;
139  }
140  const EcalUncalibratedRecHitCollection* uncalibRecHits = urhcH[i].product();
141 
142  if (uncalibRecHits->size() > 0) {
143  if ((*uncalibRecHits)[0].id().subdetId() == EcalBarrel) {
144  geometry_p = geometry.getSubdetectorGeometry(DetId::Ecal, EcalBarrel);
145  topology = std::make_unique<EcalBarrelTopology>(geoHandle);
146  } else if ((*uncalibRecHits)[0].id().subdetId() == EcalEndcap) {
147  geometry_p = geometry.getSubdetectorGeometry(DetId::Ecal, EcalEndcap);
148  topology = std::make_unique<EcalEndcapTopology>(geoHandle);
149  } else if ((*uncalibRecHits)[0].id().subdetId() == EcalPreshower) {
150  geometry_p = geometry.getSubdetectorGeometry(DetId::Ecal, EcalPreshower);
151  topology = std::make_unique<EcalPreshowerTopology>(geoHandle);
152  } else throw(std::runtime_error("\n\nProducer encountered invalied ecalhitcollection type.\n\n"));
153 
154  if(regions.size() != 0) {
156 
157  for (it = uncalibRecHits->begin(); it != uncalibRecHits->end(); it++){
158  const CaloCellGeometry & this_cell = *(*geometry_p).getGeometry(it->id());
159 
160  std::vector<EcalEtaPhiRegion>::const_iterator region;
161  for (region=regions.begin(); region!=regions.end(); region++) {
162  if (region->inRegion(this_cell.etaPos(),this_cell.phiPos())) {
163  uhits->push_back(*it);
164  break;
165  }
166  }
167  }
168  }
169  }
170  evt.put(std::move(uhits), productLabels[i]);
171 
172  }
173 
174  } else {
175 
177  for (unsigned int i=0; i<hitLabels.size(); i++) {
178  auto hits = std::make_unique<EcalRecHitCollection>();
179 
180  evt.getByToken(hitTokens[i], rhcH[i]);
181  if (!(rhcH[i].isValid())) {
182  edm::LogError("ProductNotFound")<< "could not get a handle on the EcalRecHitCollection! (" << hitLabels[i].encode() << ")" << std::endl;
183  return;
184  }
185  const EcalRecHitCollection* recHits = rhcH[i].product();
186 
187  if (recHits->size() > 0) {
188  if ((*recHits)[0].id().subdetId() == EcalBarrel) {
189  geometry_p = geometry.getSubdetectorGeometry(DetId::Ecal, EcalBarrel);
190  topology = std::make_unique<EcalBarrelTopology>(geoHandle);
191  } else if ((*recHits)[0].id().subdetId() == EcalEndcap) {
192  geometry_p = geometry.getSubdetectorGeometry(DetId::Ecal, EcalEndcap);
193  topology = std::make_unique<EcalEndcapTopology>(geoHandle);
194  } else if ((*recHits)[0].id().subdetId() == EcalPreshower) {
195  geometry_p = geometry.getSubdetectorGeometry(DetId::Ecal, EcalPreshower);
196  topology = std::make_unique<EcalPreshowerTopology>(geoHandle);
197  } else throw(std::runtime_error("\n\nProducer encountered invalied ecalhitcollection type.\n\n"));
198 
199  if(regions.size() != 0) {
201  for (it = recHits->begin(); it != recHits->end(); it++){
202  const CaloCellGeometry & this_cell = *(*geometry_p).getGeometry(it->id());
203 
204  std::vector<EcalEtaPhiRegion>::const_iterator region;
205  for (region=regions.begin(); region!=regions.end(); region++) {
206  if (region->inRegion(this_cell.etaPos(),this_cell.phiPos())) {
207  hits->push_back(*it);
208  break;
209  }
210  }
211  }
212  }
213  }
214  evt.put(std::move(hits), productLabels[i]);
215 
216  }
217  }
218 }
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:45
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
Definition: Event.h:122
const std::vector< edm::InputTag > hitLabels
CaloTopology const * topology(0)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:460
float phiPos() const
const std::vector< std::string > productLabels
std::vector< EcalUncalibratedRecHit >::const_iterator const_iterator
const edm::EDGetTokenT< T1Collection > l1TokenIsolated_
std::vector< edm::EDGetTokenT< EcalRecHitCollection > > hitTokens
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
Definition: Activities.doc:12
const_iterator end() const
T const * product() const
Definition: Handle.h:81
const T & get() const
Definition: EventSetup.h:56
size_type size() const
float etaPos() const
const edm::EDGetTokenT< T1Collection > l1TokenNonIsolated_
void getEtaPhiRegions(std::vector< EcalEtaPhiRegion > *, T1Collection, const L1CaloGeometry &, bool)
def move(src, dest)
Definition: eostools.py:510
const_iterator begin() const
std::vector< edm::EDGetTokenT< EcalUncalibratedRecHitCollection > > uncalibHitTokens

Member Data Documentation

template<typename T1 >
const bool HLTRechitInRegionsProducer< T1 >::doIsolated_
private
template<typename T1 >
const std::vector<edm::InputTag> HLTRechitInRegionsProducer< T1 >::hitLabels
private
template<typename T1 >
std::vector<edm::EDGetTokenT<EcalRecHitCollection> > HLTRechitInRegionsProducer< T1 >::hitTokens
private
template<typename T1 >
const double HLTRechitInRegionsProducer< T1 >::l1LowerThr_
private
template<typename T1 >
const double HLTRechitInRegionsProducer< T1 >::l1LowerThrIgnoreIsolation_
private
template<typename T1 >
const edm::EDGetTokenT<T1Collection> HLTRechitInRegionsProducer< T1 >::l1TokenIsolated_
private
template<typename T1 >
const edm::EDGetTokenT<T1Collection> HLTRechitInRegionsProducer< T1 >::l1TokenNonIsolated_
private
template<typename T1 >
const double HLTRechitInRegionsProducer< T1 >::l1UpperThr_
private
template<typename T1 >
const std::vector<std::string> HLTRechitInRegionsProducer< T1 >::productLabels
private
template<typename T1 >
const double HLTRechitInRegionsProducer< T1 >::regionEtaMargin_
private
template<typename T1 >
const double HLTRechitInRegionsProducer< T1 >::regionPhiMargin_
private
template<typename T1 >
std::vector<edm::EDGetTokenT<EcalUncalibratedRecHitCollection> > HLTRechitInRegionsProducer< T1 >::uncalibHitTokens
private
template<typename T1 >
const bool HLTRechitInRegionsProducer< T1 >::useUncalib_
private