CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Private Attributes
CaloConeSelector< T > Class Template Reference

#include <CaloConeSelector.h>

Public Member Functions

 CaloConeSelector (double dR, const CaloGeometry *geom)
 
 CaloConeSelector (double dR, const CaloGeometry *geom, DetId::Detector detector, int subdet=0)
 
void selectCallback (double eta, double phi, const edm::SortedCollection< T > &inputCollection, std::function< void(const T &)> callback)
 
void selectCallback (const GlobalPoint &p, const edm::SortedCollection< T > &inputCollection, std::function< void(const T &)> callback)
 

Private Attributes

double deltaR_
 
DetId::Detector detector_
 
const CaloGeometrygeom_
 
int subdet_
 

Detailed Description

template<class T>
class CaloConeSelector< T >

Author
J. Mans - Minnesota

Definition at line 15 of file CaloConeSelector.h.

Constructor & Destructor Documentation

template<class T >
CaloConeSelector< T >::CaloConeSelector ( double  dR,
const CaloGeometry geom 
)
inline

Definition at line 17 of file CaloConeSelector.h.

18  : geom_(geom), deltaR_(dR), detector_(DetId::Detector(0)), subdet_(0) {}
const CaloGeometry * geom_
Detector
Definition: DetId.h:24
DetId::Detector detector_
template<class T >
CaloConeSelector< T >::CaloConeSelector ( double  dR,
const CaloGeometry geom,
DetId::Detector  detector,
int  subdet = 0 
)
inline

Definition at line 20 of file CaloConeSelector.h.

21  : geom_(geom), deltaR_(dR), detector_(detector), subdet_(subdet) {}
const CaloGeometry * geom_
DetId::Detector detector_

Member Function Documentation

template<class T >
void CaloConeSelector< T >::selectCallback ( double  eta,
double  phi,
const edm::SortedCollection< T > &  inputCollection,
std::function< void(const T &)>  callback 
)
inline

Definition at line 23 of file CaloConeSelector.h.

References edmIntegrityCheck::callback(), and AlCaHLTBitMon_ParallelJobs::p.

26  {
28  return selectCallback(p, inputCollection, callback);
29  }
void selectCallback(double eta, double phi, const edm::SortedCollection< T > &inputCollection, std::function< void(const T &)> callback)
template<class T >
void CaloConeSelector< T >::selectCallback ( const GlobalPoint p,
const edm::SortedCollection< T > &  inputCollection,
std::function< void(const T &)>  callback 
)
inline

Definition at line 31 of file CaloConeSelector.h.

References edmIntegrityCheck::callback(), CaloConeSelector< T >::deltaR_, CaloConeSelector< T >::detector_, edm::SortedCollection< T, SORT >::end(), edm::SortedCollection< T, SORT >::find(), CaloConeSelector< T >::geom_, CaloSubdetectorGeometry::getCells(), CaloGeometry::getSubdetectorGeometry(), mps_fire::i, dqmiolumiharvest::j, and CaloConeSelector< T >::subdet_.

33  {
34  // TODO: handle default setting of detector_ (loops over subdet)
35  // TODO: heuristics of when it is better to loop over inputCollection instead (small # hits)
36  for (int subdet = subdet_; subdet <= 7 && (subdet_ == 0 || subdet_ == subdet); subdet++) {
38  if (sdg != nullptr) {
39  // get the list of detids within range (from geometry)
41  // loop over detids...
42  typename edm::SortedCollection<T>::const_iterator j, je = inputCollection.end();
43 
44  for (CaloSubdetectorGeometry::DetIdSet::iterator i = dis.begin(); i != dis.end(); i++) {
45  if (i->subdetId() != subdet)
46  continue; // possible for HCAL where the same geometry object handles all the detectors
47  j = inputCollection.find(*i);
48  if (j != je)
49  callback(*j);
50  }
51  }
52  }
53  }
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:34
std::vector< T >::const_iterator const_iterator
const CaloGeometry * geom_
virtual DetIdSet getCells(const GlobalPoint &r, double dR) const
Get a list of all cells within a dR of the given cell.
const_iterator end() const
iterator find(key_type k)
DetId::Detector detector_

Member Data Documentation

template<class T >
double CaloConeSelector< T >::deltaR_
private

Definition at line 57 of file CaloConeSelector.h.

Referenced by CaloConeSelector< T >::selectCallback().

template<class T >
DetId::Detector CaloConeSelector< T >::detector_
private

Definition at line 58 of file CaloConeSelector.h.

Referenced by CaloConeSelector< T >::selectCallback().

template<class T >
const CaloGeometry* CaloConeSelector< T >::geom_
private

Definition at line 56 of file CaloConeSelector.h.

Referenced by CaloConeSelector< T >::selectCallback().

template<class T >
int CaloConeSelector< T >::subdet_
private

Definition at line 59 of file CaloConeSelector.h.

Referenced by CaloConeSelector< T >::selectCallback().