Go to the documentation of this file. 1 #ifndef DataFormats_ParticleFlowReco_PFCluster_h
2 #define DataFormats_ParticleFlowReco_PFCluster_h
7 #include "Math/GenVector/PositionVector3D.h"
18 #if !defined(__CINT__) && !defined(__MAKECINT__) && !defined(__REFLEX__)
48 typedef std::vector<std::pair<CaloClusterPtr::key_type, edm::Ptr<PFCluster> > >
EEtoPSAssociation;
52 typedef ROOT::Math::PositionVector3D<ROOT::Math::CylindricalEta3D<double> >
REPPoint;
140 #if !defined(__CINT__) && !defined(__MAKECINT__) && !defined(__REFLEX__)
141 template <
typename pruner>
174 #if !defined(__CINT__) && !defined(__MAKECINT__) && !defined(__REFLEX__)
double y() const
y coordinate of cluster centroid
void pruneUsing(pruner prune)
void setTime(float time, float timeError=0)
static void setDepthCorParameters(int mode, double a, double b, double ap, double bp)
Fraction of a PFRecHit (rechits can be shared between several PFCluster's)
PFLayer::Layer layer() const
cluster layer, see PFLayer.h in this directory
static std::atomic< double > depthCorAp_
void setLayer(PFLayer::Layer layer)
set layer
const std::vector< reco::PFRecHitFraction > & recHitFractions() const
vector of rechit fractions
double charge() const
dummy charge
double z() const
z coordinate of cluster centroid
static std::atomic< double > depthCorB_
void setColor(int color)
set cluster color (for the PFRootEventManager display)
std::vector< std::pair< DetId, float > > hitsAndFractions_
PFLayer::Layer layer_
transient layer
Sin< T >::type sin(const T &t)
math::XYZPoint position_
cluster centroid position
double energy() const
cluster energy
PFCluster & operator=(const PFCluster &)
double depth() const
cluster depth
void resetHitsAndFractions()
reset only hits and fractions
const REPPoint & positionREP() const
cluster position: rho, eta, phi
std::vector< reco::PFRecHitFraction > rechits_
vector of rechit fractions (transient)
void reset()
resets clusters parameters
double theta() const
angle
XYZPointD XYZPoint
point in space with cartesian internal representation
static const math::XYZPoint dummyVtx_
static std::atomic< int > depthCorMode_
static double getDepthCorrection(double energy, bool isBelowPS=false, bool isHadron=false)
void calculatePositionREP()
computes posrep_ once and for all
std::ostream & operator<<(std::ostream &, BeamSpot beam)
layer definition for PFRecHit and PFCluster
void addRecHitFraction(const reco::PFRecHitFraction &frac)
add a given fraction of the rechit
std::vector< std::pair< CaloClusterPtr::key_type, edm::Ptr< PFCluster > > > EEtoPSAssociation
double pt() const
transverse momentum, massless approximation
float time_
Michalis :Add timing and depth information.
math::XYZPoint const & vertex() const
dummy vertex access
double energy_
cluster energy
Particle flow cluster, see clustering algorithm in PFClusterAlgo.
void setTimeError(float timeError)
REPPoint posrep_
cluster position: rho, eta, phi (transient)
int color_
color (transient)
void setDepth(double depth)
static std::atomic< double > depthCorA_
ROOT::Math::PositionVector3D< ROOT::Math::CylindricalEta3D< double > > REPPoint
static std::atomic< double > depthCorBp_
double x() const
x coordinate of cluster centroid