Go to the documentation of this file. 1 #ifndef DataFormats_ParticleFlowReco_PFCluster_h
2 #define DataFormats_ParticleFlowReco_PFCluster_h
16 #include "Math/GenVector/PositionVector3D.h"
44 typedef std::vector<std::pair<CaloClusterPtr::key_type, edm::Ptr<PFCluster>>>
EEtoPSAssociation;
48 typedef ROOT::Math::PositionVector3D<ROOT::Math::CylindricalEta3D<double>>
REPPoint;
121 #if !defined(__CINT__) && !defined(__MAKECINT__) && !defined(__REFLEX__)
122 template <
typename pruner>
168 #endif // DataFormats_ParticleFlowReco_PFCluster_h
double y() const
y coordinate of cluster centroid
void pruneUsing(pruner prune)
void setTime(float time, float timeError=0)
Fraction of a PFRecHit (rechits can be shared between several PFCluster's)
PFLayer::Layer layer() const
cluster layer, see PFLayer.h in this directory
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
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
static const constexpr double depthCorAp_
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)
static const constexpr double depthCorB_
static const constexpr double depthCorA_
depth corrections
void reset()
resets clusters parameters
double theta() const
angle
XYZPointD XYZPoint
point in space with cartesian internal representation
static const math::XYZPoint dummyVtx_
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
static const constexpr double depthCorBp_
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)
void setDepth(double depth)
ROOT::Math::PositionVector3D< ROOT::Math::CylindricalEta3D< double > > REPPoint
double x() const
x coordinate of cluster centroid