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>
169 #endif // DataFormats_ParticleFlowReco_PFCluster_h
void setLayer(PFLayer::Layer layer)
set layer
math::XYZPoint position_
cluster centroid position
double energy_
cluster energy
Particle flow cluster, see clustering algorithm in PFClusterAlgo.
double charge() const
dummy charge
PFLayer::Layer layer_
transient layer
Sin< T >::type sin(const T &t)
void pruneUsing(pruner prune)
void setTime(float time, float timeError=0)
Fraction of a PFRecHit (rechits can be shared between several PFCluster's)
const std::vector< reco::PFRecHitFraction > & recHitFractions() const
vector of rechit fractions
PFCluster & operator=(const PFCluster &)
PFLayer::Layer layer() const
cluster layer, see PFLayer.h in this directory
double x() const
x coordinate of cluster centroid
const REPPoint & positionREP() const
cluster position: rho, eta, phi
std::vector< reco::PFRecHitFraction > rechits_
vector of rechit fractions (transient)
double depth() const
cluster depth
std::ostream & operator<<(std::ostream &, BeamSpot beam)
void calculatePositionREP()
computes posrep_ once and for all
static const constexpr double depthCorAp_
double theta() const
angle
static const math::XYZPoint dummyVtx_
double energy() const
cluster energy
double z() const
z coordinate of cluster centroid
double y() const
y coordinate of cluster centroid
layer definition for PFRecHit and PFCluster
void reset()
resets clusters parameters
double pt() const
transverse momentum, massless approximation
std::vector< std::pair< DetId, float > > hitsAndFractions_
void resetHitsAndFractions()
reset only hits and fractions
static const constexpr double depthCorB_
static double getDepthCorrection(double energy, bool isBelowPS=false, bool isHadron=false)
void setTimeError(float timeError)
static const constexpr double depthCorA_
depth corrections
REPPoint posrep_
cluster position: rho, eta, phi (transient)
std::vector< std::pair< CaloClusterPtr::key_type, edm::Ptr< PFCluster > > > EEtoPSAssociation
XYZPointD XYZPoint
point in space with cartesian internal representation
math::XYZPoint const & vertex() const
dummy vertex access
static const constexpr double depthCorBp_
void addRecHitFraction(const reco::PFRecHitFraction &frac)
add a given fraction of the rechit
float time_
Michalis: add timing and depth information.
void setDepth(double depth)
ROOT::Math::PositionVector3D< ROOT::Math::CylindricalEta3D< double > > REPPoint