CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
EgammaHLTIslandClusterProducer Class Reference

#include <EgammaHLTIslandClusterProducer.h>

Inheritance diagram for EgammaHLTIslandClusterProducer:
edm::EDProducer edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

 EgammaHLTIslandClusterProducer (const edm::ParameterSet &ps)
 
void produce (edm::Event &, const edm::EventSetup &) override
 
 ~EgammaHLTIslandClusterProducer ()
 
- Public Member Functions inherited from edm::EDProducer
 EDProducer ()
 
ModuleDescription const & moduleDescription () const
 
virtual ~EDProducer ()
 
- 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
 
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
 
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::EDProducer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Member Functions

void clusterizeECALPart (edm::Event &evt, const edm::EventSetup &es, edm::EDGetTokenT< EcalRecHitCollection > &hitToken, const std::string &clusterCollection, const std::vector< EcalEtaPhiRegion > &regions, const IslandClusterAlgo::EcalPart &ecalPart)
 
bool counterExceeded () const
 
const EcalRecHitCollectiongetCollection (edm::Event &evt, edm::EDGetTokenT< EcalRecHitCollection > &hitToken)
 

Private Attributes

std::string barrelClusterCollection_
 
edm::InputTag barrelHitCollection_
 
edm::EDGetTokenT< EcalRecHitCollectionbarrelHitToken_
 
bool doBarrel_
 
bool doEndcaps_
 
bool doIsolated_
 
std::string endcapClusterCollection_
 
edm::InputTag endcapHitCollection_
 
edm::EDGetTokenT< EcalRecHitCollectionendcapHitToken_
 
IslandClusterAlgoisland_p
 
double l1LowerThr_
 
double l1LowerThrIgnoreIsolation_
 
edm::EDGetTokenT< l1extra::L1EmParticleCollectionl1TagIsolated_
 
edm::EDGetTokenT< l1extra::L1EmParticleCollectionl1TagNonIsolated_
 
double l1UpperThr_
 
int nEvt_
 
int nMaxPrintout_
 
PositionCalc posCalculator_
 
double regionEtaMargin_
 
double regionPhiMargin_
 
IslandClusterAlgo::VerbosityLevel verbosity
 

Additional Inherited Members

- Public Types inherited from edm::EDProducer
typedef EDProducer 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

Definition at line 24 of file EgammaHLTIslandClusterProducer.h.

Constructor & Destructor Documentation

EgammaHLTIslandClusterProducer::EgammaHLTIslandClusterProducer ( const edm::ParameterSet ps)

Definition at line 37 of file EgammaHLTIslandClusterProducer.cc.

References barrelClusterCollection_, barrelHitCollection_, barrelHitToken_, doBarrel_, doEndcaps_, doIsolated_, endcapClusterCollection_, endcapHitCollection_, endcapHitToken_, edm::ParameterSet::getParameter(), island_p, l1LowerThr_, l1LowerThrIgnoreIsolation_, l1TagIsolated_, l1TagNonIsolated_, l1UpperThr_, nEvt_, IslandClusterAlgo::pDEBUG, IslandClusterAlgo::pERROR, IslandClusterAlgo::pINFO, posCalculator_, IslandClusterAlgo::pWARNING, regionEtaMargin_, regionPhiMargin_, AlCaHLTBitMon_QueryRunRegistry::string, and verbosity.

38 {
39  // The verbosity level
40  std::string verbosityString = ps.getParameter<std::string>("VerbosityLevel");
41  if (verbosityString == "DEBUG") verbosity = IslandClusterAlgo::pDEBUG;
42  else if (verbosityString == "WARNING") verbosity = IslandClusterAlgo::pWARNING;
43  else if (verbosityString == "INFO") verbosity = IslandClusterAlgo::pINFO;
45 
46  doBarrel_ = ps.getParameter<bool>("doBarrel");
47  doEndcaps_ = ps.getParameter<bool>("doEndcaps");
48  doIsolated_ = ps.getParameter<bool>("doIsolated");
49 
50  // Parameters to identify the hit collections
51  barrelHitCollection_ = ps.getParameter<edm::InputTag>("barrelHitProducer");
52  endcapHitCollection_ = ps.getParameter<edm::InputTag>("endcapHitProducer");
53  barrelHitToken_ = consumes<EcalRecHitCollection>(barrelHitCollection_);
54  endcapHitToken_ = consumes<EcalRecHitCollection>(endcapHitCollection_);
55 
56  // The names of the produced cluster collections
57  barrelClusterCollection_ = ps.getParameter<std::string>("barrelClusterCollection");
58  endcapClusterCollection_ = ps.getParameter<std::string>("endcapClusterCollection");
59 
60  // Island algorithm parameters
61  double barrelSeedThreshold = ps.getParameter<double>("IslandBarrelSeedThr");
62  double endcapSeedThreshold = ps.getParameter<double>("IslandEndcapSeedThr");
63 
64  // L1 matching parameters
65  l1TagIsolated_ = consumes<l1extra::L1EmParticleCollection>(ps.getParameter< edm::InputTag > ("l1TagIsolated"));
66  l1TagNonIsolated_ = consumes<l1extra::L1EmParticleCollection>(ps.getParameter< edm::InputTag > ("l1TagNonIsolated"));
67  l1LowerThr_ = ps.getParameter<double> ("l1LowerThr");
68  l1UpperThr_ = ps.getParameter<double> ("l1UpperThr");
69  l1LowerThrIgnoreIsolation_ = ps.getParameter<double> ("l1LowerThrIgnoreIsolation");
70 
71  regionEtaMargin_ = ps.getParameter<double>("regionEtaMargin");
72  regionPhiMargin_ = ps.getParameter<double>("regionPhiMargin");
73 
74  // Parameters for the position calculation:
75  posCalculator_ = PositionCalc( ps.getParameter<edm::ParameterSet>("posCalcParameters") );
76 
77  // Produces a collection of barrel and a collection of endcap clusters
78 
79  produces< reco::BasicClusterCollection >(endcapClusterCollection_);
80  produces< reco::BasicClusterCollection >(barrelClusterCollection_);
81 
82  island_p = new IslandClusterAlgo(barrelSeedThreshold, endcapSeedThreshold, posCalculator_,verbosity);
83 
84  nEvt_ = 0;
85 }
T getParameter(std::string const &) const
edm::EDGetTokenT< EcalRecHitCollection > endcapHitToken_
edm::EDGetTokenT< l1extra::L1EmParticleCollection > l1TagNonIsolated_
IslandClusterAlgo::VerbosityLevel verbosity
edm::EDGetTokenT< l1extra::L1EmParticleCollection > l1TagIsolated_
edm::EDGetTokenT< EcalRecHitCollection > barrelHitToken_
EgammaHLTIslandClusterProducer::~EgammaHLTIslandClusterProducer ( )

Definition at line 87 of file EgammaHLTIslandClusterProducer.cc.

References island_p.

87  {
88  delete island_p;
89 }

Member Function Documentation

void EgammaHLTIslandClusterProducer::clusterizeECALPart ( edm::Event evt,
const edm::EventSetup es,
edm::EDGetTokenT< EcalRecHitCollection > &  hitToken,
const std::string &  clusterCollection,
const std::vector< EcalEtaPhiRegion > &  regions,
const IslandClusterAlgo::EcalPart ecalPart 
)
private

Definition at line 262 of file EgammaHLTIslandClusterProducer.cc.

References IslandClusterAlgo::barrel, barrelClusterCollection_, fastPrimaryVertexProducer_cfi::clusters, DetId::Ecal, EcalBarrel, EcalEndcap, EcalPreshower, endcapClusterCollection_, edm::EventSetup::get(), getCollection(), CaloGeometry::getSubdetectorGeometry(), island_p, IslandClusterAlgo::makeClusters(), eostools::move(), and edm::Event::put().

Referenced by produce().

267 {
268  // get the hit collection from the event:
269  const EcalRecHitCollection *hitCollection_p = getCollection(evt, hitToken);
270 
271  // get the geometry and topology from the event setup:
272  edm::ESHandle<CaloGeometry> geoHandle;
273  es.get<CaloGeometryRecord>().get(geoHandle);
274 
275  const CaloSubdetectorGeometry *geometry_p;
276  CaloSubdetectorTopology *topology_p;
277 
278  if (ecalPart == IslandClusterAlgo::barrel)
279  {
280  geometry_p = geoHandle->getSubdetectorGeometry(DetId::Ecal, EcalBarrel);
281  topology_p = new EcalBarrelTopology(geoHandle);
282  }
283  else
284  {
285  geometry_p = geoHandle->getSubdetectorGeometry(DetId::Ecal, EcalEndcap);
286  topology_p = new EcalEndcapTopology(geoHandle);
287  }
288 
289  const CaloSubdetectorGeometry *geometryES_p;
290  geometryES_p = geoHandle->getSubdetectorGeometry(DetId::Ecal, EcalPreshower);
291 
292  // Run the clusterization algorithm:
294  clusters = island_p->makeClusters(hitCollection_p, geometry_p, topology_p, geometryES_p, ecalPart, true, regions);
295 
296  // create an unique_ptr to a BasicClusterCollection, copy the barrel clusters into it and put in the Event:
297  auto clusters_p = std::make_unique<reco::BasicClusterCollection>();
298  clusters_p->assign(clusters.begin(), clusters.end());
300  if (ecalPart == IslandClusterAlgo::barrel)
301  bccHandle = evt.put(std::move(clusters_p), barrelClusterCollection_);
302  else
303  bccHandle = evt.put(std::move(clusters_p), endcapClusterCollection_);
304 
305  delete topology_p;
306 }
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
std::vector< reco::BasicCluster > makeClusters(const EcalRecHitCollection *hits, const CaloSubdetectorGeometry *geometry, const CaloSubdetectorTopology *topology_p, const CaloSubdetectorGeometry *geometryES_p, EcalPart ecalPart, bool regional=false, const std::vector< EcalEtaPhiRegion > &regions=std::vector< EcalEtaPhiRegion >())
const EcalRecHitCollection * getCollection(edm::Event &evt, edm::EDGetTokenT< EcalRecHitCollection > &hitToken)
const T & get() const
Definition: EventSetup.h:56
std::vector< BasicCluster > BasicClusterCollection
collection of BasicCluster objects
def move(src, dest)
Definition: eostools.py:510
bool EgammaHLTIslandClusterProducer::counterExceeded ( ) const
inlineprivate
void EgammaHLTIslandClusterProducer::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 91 of file EgammaHLTIslandClusterProducer.cc.

References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), and AlCaHLTBitMon_QueryRunRegistry::string.

91  {
92 
94  desc.add<std::string>("VerbosityLevel", "ERROR");
95  desc.add<bool>("doBarrel", true);
96  desc.add<bool>("doEndcaps", true);
97  desc.add<bool>("doIsolated", true);
98  desc.add<edm::InputTag>("barrelHitProducer", edm::InputTag("islandEndcapBasicClusters", "EcalRecHitsEB"));
99  desc.add<edm::InputTag>("endcapHitProducer", edm::InputTag("islandEndcapBasicClusters", "EcalRecHitsEB"));
100  desc.add<std::string>("barrelClusterCollection", "islandBarrelBasicClusters");
101  desc.add<std::string>("endcapClusterCollection", "islandEndcapBasicClusters");
102  desc.add<double>("IslandBarrelSeedThr", 0.5);
103  desc.add<double>("IslandEndcapSeedThr", 0.18);
104  desc.add<edm::InputTag>("l1TagIsolated", edm::InputTag("l1extraParticles","Isolated"));
105  desc.add<edm::InputTag>("l1TagNonIsolated", edm::InputTag("l1extraParticles","NonIsolated"));
106  desc.add<double>("l1LowerThr", 0.0);
107  desc.add<double>("l1UpperThr", 9999.0);
108  desc.add<double>("l1LowerThrIgnoreIsolation", 9999.0);
109  desc.add<double>("regionEtaMargin", 0.3);
110  desc.add<double>("regionPhiMargin", 0.4);
111  //desc.add<edm::ParameterSet>("posCalcParameters"), edm::ParameterSet());
112  descriptions.add("hltEgammaHLTIslandClusterProducer", desc);
113 }
ParameterDescriptionBase * add(U const &iLabel, T const &value)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
const EcalRecHitCollection * EgammaHLTIslandClusterProducer::getCollection ( edm::Event evt,
edm::EDGetTokenT< EcalRecHitCollection > &  hitToken 
)
private

Definition at line 247 of file EgammaHLTIslandClusterProducer.cc.

References gather_cfg::cout, edm::Event::getByToken(), edm::HandleBase::isValid(), and edm::Handle< T >::product().

Referenced by clusterizeECALPart().

249 {
251  evt.getByToken(hitToken_, rhcHandle);
252  if (!(rhcHandle.isValid()))
253  {
254  std::cout << "could not get a handle on the EcalRecHitCollection!" << std::endl;
255  edm::LogError("EgammaHLTIslandClusterProducerError") << "Error! can't get the product ";
256  return 0;
257  }
258  return rhcHandle.product();
259 }
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:460
bool isValid() const
Definition: HandleBase.h:74
T const * product() const
Definition: Handle.h:81
void EgammaHLTIslandClusterProducer::produce ( edm::Event evt,
const edm::EventSetup es 
)
override

Definition at line 115 of file EgammaHLTIslandClusterProducer.cc.

References IslandClusterAlgo::barrel, barrelClusterCollection_, barrelHitToken_, clusterizeECALPart(), doBarrel_, doEndcaps_, doIsolated_, L1CaloGeometry::emJetPhiBinHighEdge(), L1CaloGeometry::emJetPhiBinLowEdge(), IslandClusterAlgo::endcap, endcapClusterCollection_, endcapHitToken_, L1CaloGeometry::etaBinHighEdge(), L1CaloGeometry::etaBinLowEdge(), edm::EventSetup::get(), edm::Event::getByToken(), l1LowerThr_, l1LowerThrIgnoreIsolation_, l1TagIsolated_, l1TagNonIsolated_, l1UpperThr_, nEvt_, regionEtaMargin_, and regionPhiMargin_.

115  {
116 
117  //Get the L1 EM Particle Collection
119  if(doIsolated_)
120  evt.getByToken(l1TagIsolated_, emIsolColl);
121 
122  //Get the L1 EM Particle Collection
124  evt.getByToken(l1TagNonIsolated_, emNonIsolColl);
125 
126  // Get the CaloGeometry
127  edm::ESHandle<L1CaloGeometry> l1CaloGeom ;
128  es.get<L1CaloGeometryRecord>().get(l1CaloGeom) ;
129 
130  std::vector<EcalEtaPhiRegion> barrelRegions;
131  std::vector<EcalEtaPhiRegion> endcapRegions;
132 
133  if(doIsolated_) {
134  for( l1extra::L1EmParticleCollection::const_iterator emItr = emIsolColl->begin(); emItr != emIsolColl->end() ;++emItr ){
135 
136  if (emItr->et() > l1LowerThr_ && emItr->et() < l1UpperThr_) {
137 
138  // Access the GCT hardware object corresponding to the L1Extra EM object.
139  int etaIndex = emItr->gctEmCand()->etaIndex() ;
140 
141  int phiIndex = emItr->gctEmCand()->phiIndex() ;
142  // Use the L1CaloGeometry to find the eta, phi bin boundaries.
143  double etaLow = l1CaloGeom->etaBinLowEdge( etaIndex ) ;
144  double etaHigh = l1CaloGeom->etaBinHighEdge( etaIndex ) ;
145  double phiLow = l1CaloGeom->emJetPhiBinLowEdge( phiIndex ) ;
146  double phiHigh = l1CaloGeom->emJetPhiBinHighEdge( phiIndex ) ;
147 
148  //Attention isForward does not work
149  int isforw=0;
150  int isbarl=0;
151  if((float)(etaHigh)>1.479 || (float)(etaLow)<-1.479) isforw=1;
152  if(((float)(etaLow)>-1.479 && (float)(etaLow)<1.479) ||
153  ((float)(etaHigh)>-1.479 && (float)(etaHigh)<1.479)) isbarl=1;
154 
155  //std::cout<<"Island etaindex "<<etaIndex<<" low hig : "<<etaLow<<" "<<etaHigh<<" phi low hig" <<phiLow<<" " << phiHigh<<" isforw "<<emItr->gctEmCand()->regionId().isForward()<<" isforwnew" <<isforw<< std::endl;
156 
157  etaLow -= regionEtaMargin_;
158  etaHigh += regionEtaMargin_;
159  phiLow -= regionPhiMargin_;
160  phiHigh += regionPhiMargin_;
161 
162  //if (emItr->gctEmCand()->regionId().isForward()) {
163  if (isforw) {
164  if (etaHigh>-1.479 && etaHigh<1.479) etaHigh=-1.479;
165  if ( etaLow>-1.479 && etaLow<1.479) etaLow=1.479;
166  EcalEtaPhiRegion region(etaLow,etaHigh,phiLow,phiHigh);
167  endcapRegions.push_back(region);
168  }
169  if (isbarl) {
170  if (etaHigh>1.479) etaHigh=1.479;
171  if (etaLow<-1.479) etaLow=-1.479;
172  EcalEtaPhiRegion region(etaLow,etaHigh,phiLow,phiHigh);
173  barrelRegions.push_back(region);
174  }
175  EcalEtaPhiRegion region(etaLow,etaHigh,phiLow,phiHigh);
176 
177  }
178  }
179  }
180 
181 
183  for( l1extra::L1EmParticleCollection::const_iterator emItr = emNonIsolColl->begin(); emItr != emNonIsolColl->end() ;++emItr ){
184 
185  if(doIsolated_&&emItr->et()<l1LowerThrIgnoreIsolation_) continue;
186 
187  if (emItr->et() > l1LowerThr_ && emItr->et() < l1UpperThr_) {
188 
189  // Access the GCT hardware object corresponding to the L1Extra EM object.
190  int etaIndex = emItr->gctEmCand()->etaIndex() ;
191 
192 
193  int phiIndex = emItr->gctEmCand()->phiIndex() ;
194  // Use the L1CaloGeometry to find the eta, phi bin boundaries.
195  double etaLow = l1CaloGeom->etaBinLowEdge( etaIndex ) ;
196  double etaHigh = l1CaloGeom->etaBinHighEdge( etaIndex ) ;
197  double phiLow = l1CaloGeom->emJetPhiBinLowEdge( phiIndex ) ;
198  double phiHigh = l1CaloGeom->emJetPhiBinHighEdge( phiIndex ) ;
199 
200 
201  int isforw=0;
202  int isbarl=0;
203  if((float)(etaHigh)>1.479 || (float)(etaLow)<-1.479) isforw=1;
204  if(((float)(etaLow)>-1.479 && (float)(etaLow)<1.479) ||
205  ((float)(etaHigh)>-1.479 && (float)(etaHigh)<1.479)) isbarl=1;
206 
207  //std::cout<<"Island etaindex "<<etaIndex<<" low hig : "<<etaLow<<" "<<etaHigh<<" phi low hig" <<phiLow<<" " << phiHigh<<" isforw "<<emItr->gctEmCand()->regionId().isForward()<<" isforwnew" <<isforw<< std::endl;
208 
209  etaLow -= regionEtaMargin_;
210  etaHigh += regionEtaMargin_;
211  phiLow -= regionPhiMargin_;
212  phiHigh += regionPhiMargin_;
213 
214  //if (emItr->gctEmCand()->regionId().isForward()) {
215  if (isforw) {
216  if (etaHigh>-1.479 && etaHigh<1.479) etaHigh=-1.479;
217  if ( etaLow>-1.479 && etaLow<1.479) etaLow=1.479;
218  EcalEtaPhiRegion region(etaLow,etaHigh,phiLow,phiHigh);
219  endcapRegions.push_back(region);
220  }
221  if (isbarl) {
222  if (etaHigh>1.479) etaHigh=1.479;
223  if (etaLow<-1.479) etaLow=-1.479;
224  EcalEtaPhiRegion region(etaLow,etaHigh,phiLow,phiHigh);
225  barrelRegions.push_back(region);
226  }
227 
228  }
229  }
230  }
231 
232  if (doEndcaps_
233  //&&endcapRegions.size()!=0
234  ) {
235 
237  }
238  if (doBarrel_
239  //&& barrelRegions.size()!=0
240  ) {
242  }
243  nEvt_++;
244 }
edm::EDGetTokenT< EcalRecHitCollection > endcapHitToken_
double etaBinHighEdge(unsigned int etaIndex, bool central=true) const
void clusterizeECALPart(edm::Event &evt, const edm::EventSetup &es, edm::EDGetTokenT< EcalRecHitCollection > &hitToken, const std::string &clusterCollection, const std::vector< EcalEtaPhiRegion > &regions, const IslandClusterAlgo::EcalPart &ecalPart)
double etaBinLowEdge(unsigned int etaIndex, bool central=true) const
edm::EDGetTokenT< l1extra::L1EmParticleCollection > l1TagNonIsolated_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:460
edm::EDGetTokenT< l1extra::L1EmParticleCollection > l1TagIsolated_
const T & get() const
Definition: EventSetup.h:56
double emJetPhiBinLowEdge(unsigned int phiIndex) const
edm::EDGetTokenT< EcalRecHitCollection > barrelHitToken_
double emJetPhiBinHighEdge(unsigned int phiIndex) const

Member Data Documentation

std::string EgammaHLTIslandClusterProducer::barrelClusterCollection_
private
edm::InputTag EgammaHLTIslandClusterProducer::barrelHitCollection_
private

Definition at line 42 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer().

edm::EDGetTokenT<EcalRecHitCollection> EgammaHLTIslandClusterProducer::barrelHitToken_
private

Definition at line 44 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

bool EgammaHLTIslandClusterProducer::doBarrel_
private

Definition at line 38 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

bool EgammaHLTIslandClusterProducer::doEndcaps_
private

Definition at line 39 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

bool EgammaHLTIslandClusterProducer::doIsolated_
private

Definition at line 40 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

std::string EgammaHLTIslandClusterProducer::endcapClusterCollection_
private
edm::InputTag EgammaHLTIslandClusterProducer::endcapHitCollection_
private

Definition at line 43 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer().

edm::EDGetTokenT<EcalRecHitCollection> EgammaHLTIslandClusterProducer::endcapHitToken_
private

Definition at line 45 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

IslandClusterAlgo* EgammaHLTIslandClusterProducer::island_p
private
double EgammaHLTIslandClusterProducer::l1LowerThr_
private

Definition at line 52 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

double EgammaHLTIslandClusterProducer::l1LowerThrIgnoreIsolation_
private

Definition at line 54 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

edm::EDGetTokenT<l1extra::L1EmParticleCollection> EgammaHLTIslandClusterProducer::l1TagIsolated_
private

Definition at line 50 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

edm::EDGetTokenT<l1extra::L1EmParticleCollection> EgammaHLTIslandClusterProducer::l1TagNonIsolated_
private

Definition at line 51 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

double EgammaHLTIslandClusterProducer::l1UpperThr_
private

Definition at line 53 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

int EgammaHLTIslandClusterProducer::nEvt_
private

Definition at line 34 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

int EgammaHLTIslandClusterProducer::nMaxPrintout_
private

Definition at line 33 of file EgammaHLTIslandClusterProducer.h.

PositionCalc EgammaHLTIslandClusterProducer::posCalculator_
private

Definition at line 59 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer().

double EgammaHLTIslandClusterProducer::regionEtaMargin_
private

Definition at line 56 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

double EgammaHLTIslandClusterProducer::regionPhiMargin_
private

Definition at line 57 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer(), and produce().

IslandClusterAlgo::VerbosityLevel EgammaHLTIslandClusterProducer::verbosity
private

Definition at line 36 of file EgammaHLTIslandClusterProducer.h.

Referenced by EgammaHLTIslandClusterProducer().