CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Types | Private Member Functions | Private Attributes
PFlow2DClusterizerWithTime Class Reference

#include <PFlow2DClusterizerWithTime.h>

Inheritance diagram for PFlow2DClusterizerWithTime:
PFClusterBuilderBase

Public Member Functions

void buildClusters (const reco::PFClusterCollection &, const std::vector< bool > &, reco::PFClusterCollection &outclus)
 
B2DGPFoperator= (const B2DGPF &)=delete
 
 PFlow2DClusterizerWithTime (const edm::ParameterSet &conf)
 
 PFlow2DClusterizerWithTime (const B2DGPF &)=delete
 
void update (const edm::EventSetup &es)
 
virtual ~PFlow2DClusterizerWithTime ()
 
- Public Member Functions inherited from PFClusterBuilderBase
std::ostream & operator<< (std::ostream &o) const
 
PFCBBoperator= (const PFCBB &)=delete
 
 PFClusterBuilderBase (const edm::ParameterSet &conf)
 
 PFClusterBuilderBase (const PFCBB &)=delete
 
void reset ()
 
 ~PFClusterBuilderBase ()
 

Private Types

typedef PFlow2DClusterizerWithTime B2DGPF
 

Private Member Functions

void clusterTimeResolution (reco::PFCluster &cluster, double &res) const
 
void clusterTimeResolutionFromSeed (reco::PFCluster &cluster, double &res) const
 
double dist2Time (const reco::PFCluster &, const reco::PFRecHitRef &, int cell_layer, double prev_timeres2) const
 
void growPFClusters (const reco::PFCluster &, const std::vector< bool > &, const unsigned toleranceScaling, const unsigned iter, double dist, reco::PFClusterCollection &) const
 
bool passChi2Prob (size_t iCluster, double dist2, std::vector< double > &clus_chi2, std::vector< size_t > &clus_chi2_nhits) const
 
void prunePFClusters (reco::PFClusterCollection &) const
 
void seedPFClustersFromTopo (const reco::PFCluster &, const std::vector< bool > &, reco::PFClusterCollection &) const
 

Private Attributes

std::unique_ptr
< PFCPositionCalculatorBase
_allCellsPosCalc
 
const bool _clusterTimeResFromSeed
 
std::unique_ptr
< PFCPositionCalculatorBase
_convergencePosCalc
 
const bool _excludeOtherSeeds
 
const std::unordered_map
< std::string, int > 
_layerMap
 
const unsigned _maxIterations
 
const double _maxNSigmaTime
 
const double _minChi2Prob
 
const double _minFracTot
 
std::unordered_map< int, double > _recHitEnergyNorms
 
const double _showerSigma2
 
const double _stoppingTolerance
 
std::unique_ptr
< CaloRecHitResolutionProvider
_timeResolutionCalcBarrel
 
std::unique_ptr
< CaloRecHitResolutionProvider
_timeResolutionCalcEndcap
 
const double _timeSigma_eb
 
const double _timeSigma_ee
 

Additional Inherited Members

- Public Types inherited from PFClusterBuilderBase
typedef PFCPositionCalculatorBase PosCalc
 
- Protected Attributes inherited from PFClusterBuilderBase
const float _minFractionToKeep
 
unsigned _nClustersFound
 
unsigned _nSeeds
 
std::unique_ptr< PosCalc_positionCalc
 

Detailed Description

Definition at line 11 of file PFlow2DClusterizerWithTime.h.

Member Typedef Documentation

Definition at line 12 of file PFlow2DClusterizerWithTime.h.

Constructor & Destructor Documentation

PFlow2DClusterizerWithTime::PFlow2DClusterizerWithTime ( const edm::ParameterSet conf)

Definition at line 27 of file PFlow2DClusterizerWithTime.cc.

virtual PFlow2DClusterizerWithTime::~PFlow2DClusterizerWithTime ( )
inlinevirtual

Definition at line 16 of file PFlow2DClusterizerWithTime.h.

16 {}
PFlow2DClusterizerWithTime::PFlow2DClusterizerWithTime ( const B2DGPF )
delete

Member Function Documentation

void PFlow2DClusterizerWithTime::buildClusters ( const reco::PFClusterCollection input,
const std::vector< bool > &  seedable,
reco::PFClusterCollection outclus 
)
virtual

Implements PFClusterBuilderBase.

Definition at line 105 of file PFlow2DClusterizerWithTime.cc.

void PFlow2DClusterizerWithTime::clusterTimeResolution ( reco::PFCluster cluster,
double &  res 
) const
private

Definition at line 322 of file PFlow2DClusterizerWithTime.cc.

void PFlow2DClusterizerWithTime::clusterTimeResolutionFromSeed ( reco::PFCluster cluster,
double &  res 
) const
private

Definition at line 301 of file PFlow2DClusterizerWithTime.cc.

double PFlow2DClusterizerWithTime::dist2Time ( const reco::PFCluster cluster,
const reco::PFRecHitRef refhit,
int  cell_layer,
double  prev_timeres2 
) const
private

Definition at line 356 of file PFlow2DClusterizerWithTime.cc.

void PFlow2DClusterizerWithTime::growPFClusters ( const reco::PFCluster topo,
const std::vector< bool > &  seedable,
const unsigned  toleranceScaling,
const unsigned  iter,
double  dist,
reco::PFClusterCollection clusters 
) const
private

Definition at line 156 of file PFlow2DClusterizerWithTime.cc.

B2DGPF& PFlow2DClusterizerWithTime::operator= ( const B2DGPF )
delete
bool PFlow2DClusterizerWithTime::passChi2Prob ( size_t  iCluster,
double  dist2,
std::vector< double > &  clus_chi2,
std::vector< size_t > &  clus_chi2_nhits 
) const
private

Definition at line 396 of file PFlow2DClusterizerWithTime.cc.

void PFlow2DClusterizerWithTime::prunePFClusters ( reco::PFClusterCollection clusters) const
private

Definition at line 293 of file PFlow2DClusterizerWithTime.cc.

void PFlow2DClusterizerWithTime::seedPFClustersFromTopo ( const reco::PFCluster topo,
const std::vector< bool > &  seedable,
reco::PFClusterCollection initialPFClusters 
) const
private

Definition at line 137 of file PFlow2DClusterizerWithTime.cc.

void PFlow2DClusterizerWithTime::update ( const edm::EventSetup es)
inlinevirtual

Reimplemented from PFClusterBuilderBase.

Definition at line 20 of file PFlow2DClusterizerWithTime.h.

References _allCellsPosCalc, _convergencePosCalc, and PFClusterBuilderBase::_positionCalc.

Referenced by Vispa.Gui.ZoomableWidget.ZoomableWidget::setZoom().

20  {
21  _positionCalc->update(es);
22  if( _allCellsPosCalc ) _allCellsPosCalc->update(es);
23  if( _convergencePosCalc ) _convergencePosCalc->update(es);
24  }
std::unique_ptr< PFCPositionCalculatorBase > _allCellsPosCalc
std::unique_ptr< PosCalc > _positionCalc
std::unique_ptr< PFCPositionCalculatorBase > _convergencePosCalc

Member Data Documentation

std::unique_ptr<PFCPositionCalculatorBase> PFlow2DClusterizerWithTime::_allCellsPosCalc
private

Definition at line 44 of file PFlow2DClusterizerWithTime.h.

Referenced by update().

const bool PFlow2DClusterizerWithTime::_clusterTimeResFromSeed
private

Definition at line 40 of file PFlow2DClusterizerWithTime.h.

std::unique_ptr<PFCPositionCalculatorBase> PFlow2DClusterizerWithTime::_convergencePosCalc
private

Definition at line 45 of file PFlow2DClusterizerWithTime.h.

Referenced by update().

const bool PFlow2DClusterizerWithTime::_excludeOtherSeeds
private

Definition at line 36 of file PFlow2DClusterizerWithTime.h.

const std::unordered_map<std::string,int> PFlow2DClusterizerWithTime::_layerMap
private

Definition at line 42 of file PFlow2DClusterizerWithTime.h.

const unsigned PFlow2DClusterizerWithTime::_maxIterations
private

Definition at line 31 of file PFlow2DClusterizerWithTime.h.

const double PFlow2DClusterizerWithTime::_maxNSigmaTime
private

Definition at line 38 of file PFlow2DClusterizerWithTime.h.

const double PFlow2DClusterizerWithTime::_minChi2Prob
private

Definition at line 39 of file PFlow2DClusterizerWithTime.h.

const double PFlow2DClusterizerWithTime::_minFracTot
private

Definition at line 37 of file PFlow2DClusterizerWithTime.h.

std::unordered_map<int,double> PFlow2DClusterizerWithTime::_recHitEnergyNorms
private

Definition at line 43 of file PFlow2DClusterizerWithTime.h.

const double PFlow2DClusterizerWithTime::_showerSigma2
private

Definition at line 33 of file PFlow2DClusterizerWithTime.h.

const double PFlow2DClusterizerWithTime::_stoppingTolerance
private

Definition at line 32 of file PFlow2DClusterizerWithTime.h.

std::unique_ptr<CaloRecHitResolutionProvider> PFlow2DClusterizerWithTime::_timeResolutionCalcBarrel
private

Definition at line 47 of file PFlow2DClusterizerWithTime.h.

std::unique_ptr<CaloRecHitResolutionProvider> PFlow2DClusterizerWithTime::_timeResolutionCalcEndcap
private

Definition at line 48 of file PFlow2DClusterizerWithTime.h.

const double PFlow2DClusterizerWithTime::_timeSigma_eb
private

Definition at line 34 of file PFlow2DClusterizerWithTime.h.

const double PFlow2DClusterizerWithTime::_timeSigma_ee
private

Definition at line 35 of file PFlow2DClusterizerWithTime.h.