CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Attributes
PFRecHitDualNavigator< D1, barrel, D2, endcap > Class Template Reference

#include <PFRecHitDualNavigator.h>

Inheritance diagram for PFRecHitDualNavigator< D1, barrel, D2, endcap >:
PFRecHitNavigatorBase

Public Member Functions

void associateNeighbours (reco::PFRecHit &hit, std::unique_ptr< reco::PFRecHitCollection > &hits, edm::RefProd< reco::PFRecHitCollection > &refProd) override
 
void init (const edm::EventSetup &iSetup) override
 
 PFRecHitDualNavigator ()=default
 
 PFRecHitDualNavigator (const edm::ParameterSet &iConfig)
 
- Public Member Functions inherited from PFRecHitNavigatorBase
 PFRecHitNavigatorBase ()=default
 
 PFRecHitNavigatorBase (const edm::ParameterSet &iConfig)
 
virtual ~PFRecHitNavigatorBase ()=default
 

Protected Attributes

barrel * barrelNav_
 
endcap * endcapNav_
 

Additional Inherited Members

- Public Types inherited from PFRecHitNavigatorBase
typedef std::unordered_map< unsigned, unsigned > DetIdToHitIdx
 
- Protected Member Functions inherited from PFRecHitNavigatorBase
void associateNeighbour (const DetId &id, reco::PFRecHit &hit, std::unique_ptr< reco::PFRecHitCollection > &hits, edm::RefProd< reco::PFRecHitCollection > &refProd, short eta, short phi, short depth)
 

Detailed Description

template<PFLayer::Layer D1, typename barrel, PFLayer::Layer D2, typename endcap>
class PFRecHitDualNavigator< D1, barrel, D2, endcap >

Definition at line 8 of file PFRecHitDualNavigator.h.

Constructor & Destructor Documentation

◆ PFRecHitDualNavigator() [1/2]

template<PFLayer::Layer D1, typename barrel , PFLayer::Layer D2, typename endcap >
PFRecHitDualNavigator< D1, barrel, D2, endcap >::PFRecHitDualNavigator ( )
default

◆ PFRecHitDualNavigator() [2/2]

template<PFLayer::Layer D1, typename barrel , PFLayer::Layer D2, typename endcap >
PFRecHitDualNavigator< D1, barrel, D2, endcap >::PFRecHitDualNavigator ( const edm::ParameterSet iConfig)
inline

Member Function Documentation

◆ associateNeighbours()

template<PFLayer::Layer D1, typename barrel , PFLayer::Layer D2, typename endcap >
void PFRecHitDualNavigator< D1, barrel, D2, endcap >::associateNeighbours ( reco::PFRecHit hit,
std::unique_ptr< reco::PFRecHitCollection > &  hits,
edm::RefProd< reco::PFRecHitCollection > &  refProd 
)
inlineoverridevirtual

Implements PFRecHitNavigatorBase.

Definition at line 22 of file PFRecHitDualNavigator.h.

24  {
25  if (hit.layer() == D1)
26  barrelNav_->associateNeighbours(hit, hits, refProd);
27  else if (hit.layer() == D2)
28  endcapNav_->associateNeighbours(hit, hits, refProd);
29  }

References PFRecHitDualNavigator< D1, barrel, D2, endcap >::barrelNav_, PFRecHitDualNavigator< D1, barrel, D2, endcap >::endcapNav_, and hfClusterShapes_cfi::hits.

◆ init()

template<PFLayer::Layer D1, typename barrel , PFLayer::Layer D2, typename endcap >
void PFRecHitDualNavigator< D1, barrel, D2, endcap >::init ( const edm::EventSetup iSetup)
inlineoverridevirtual

Member Data Documentation

◆ barrelNav_

template<PFLayer::Layer D1, typename barrel , PFLayer::Layer D2, typename endcap >
barrel* PFRecHitDualNavigator< D1, barrel, D2, endcap >::barrelNav_
protected

◆ endcapNav_

template<PFLayer::Layer D1, typename barrel , PFLayer::Layer D2, typename endcap >
endcap* PFRecHitDualNavigator< D1, barrel, D2, endcap >::endcapNav_
protected
funct::D1
Divides< A, C > D1
Definition: Factorize.h:136
Reference_intrackfit_cff.barrel
list barrel
Definition: Reference_intrackfit_cff.py:37
hfClusterShapes_cfi.hits
hits
Definition: hfClusterShapes_cfi.py:5
funct::D2
Divides< B, C > D2
Definition: Factorize.h:137
makeMuonMisalignmentScenario.endcap
endcap
Definition: makeMuonMisalignmentScenario.py:320
PFRecHitDualNavigator::barrelNav_
barrel * barrelNav_
Definition: PFRecHitDualNavigator.h:32
edm::ParameterSet
Definition: ParameterSet.h:36
PFRecHitDualNavigator::endcapNav_
endcap * endcapNav_
Definition: PFRecHitDualNavigator.h:33
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
hit
Definition: SiStripHitEffFromCalibTree.cc:88