CMS 3D CMS Logo

reco::TrackKinematics Class Reference

#include <RecoBTag/SecondaryVertex/interface/TrackKinematics.h>

List of all members.

Public Member Functions

void add (const reco::Track &track, double weight=1.0)
unsigned int numberOfTracks () const
double sumOfWeights () const
 TrackKinematics (const reco::Vertex &vertex)
 TrackKinematics (const reco::TrackRefVector &tracks)
 TrackKinematics (const std::vector< reco::Track > &tracks)
 TrackKinematics ()
const math::XYZTLorentzVectorvectorSum () const
const math::XYZTLorentzVectorweightedVectorSum () const
 ~TrackKinematics ()

Private Attributes

unsigned int n
math::XYZTLorentzVector sum
double sumWeights
math::XYZTLorentzVector weightedSum


Detailed Description

Definition at line 13 of file TrackKinematics.h.


Constructor & Destructor Documentation

TrackKinematics::TrackKinematics (  ) 

Definition at line 16 of file TrackKinematics.cc.

00016                                  :
00017         n(0), sumWeights(0)
00018 {
00019 }

reco::TrackKinematics::TrackKinematics ( const std::vector< reco::Track > &  tracks  ) 

TrackKinematics::TrackKinematics ( const reco::TrackRefVector tracks  ) 

Definition at line 29 of file TrackKinematics.cc.

References edm::RefVector< C, T, F >::begin(), edm::RefVector< C, T, F >::end(), and iter.

00029                                                              :
00030         n(0), sumWeights(0)
00031 {
00032         for(TrackRefVector::const_iterator iter = tracks.begin();
00033             iter != tracks.end(); iter++)
00034                 add(**iter);
00035 }

TrackKinematics::TrackKinematics ( const reco::Vertex vertex  ) 

Definition at line 37 of file TrackKinematics.cc.

References iter, reco::Vertex::tracks_begin(), reco::Vertex::tracks_end(), and reco::Vertex::trackWeight().

00037                                                      :
00038         n(0), sumWeights(0)
00039 {
00040         for(Vertex::trackRef_iterator iter = vertex.tracks_begin();
00041             iter != vertex.tracks_end(); iter++)
00042                 add(**iter, vertex.trackWeight(*iter));
00043 }

reco::TrackKinematics::~TrackKinematics (  )  [inline]

Definition at line 19 of file TrackKinematics.h.

00019 {}


Member Function Documentation

void TrackKinematics::add ( const reco::Track track,
double  weight = 1.0 
)

Definition at line 45 of file TrackKinematics.cc.

References n, reco::ParticleMasses::piPlus, reco::TrackBase::px(), reco::TrackBase::py(), reco::TrackBase::pz(), sum, sumWeights, and weightedSum.

Referenced by CombinedSVComputer::operator()().

00046 {
00047         ROOT::Math::LorentzVector<ROOT::Math::PxPyPzM4D<double> > vec;
00048 
00049         vec.SetPx(track.px());
00050         vec.SetPy(track.py());
00051         vec.SetPz(track.pz());
00052         vec.SetM(ParticleMasses::piPlus);
00053 
00054         n++;
00055         sumWeights += weight;
00056         sum += vec;
00057         weightedSum += weight * vec;
00058 }

unsigned int reco::TrackKinematics::numberOfTracks (  )  const [inline]

Definition at line 23 of file TrackKinematics.h.

References n.

Referenced by CombinedSVComputer::operator()().

00023 { return n; }

double reco::TrackKinematics::sumOfWeights (  )  const [inline]

Definition at line 24 of file TrackKinematics.h.

References sumWeights.

00024 { return sumWeights; }

const math::XYZTLorentzVector& reco::TrackKinematics::vectorSum (  )  const [inline]

Definition at line 26 of file TrackKinematics.h.

References sum.

Referenced by reco::VertexFilter::operator()(), and CombinedSVComputer::operator()().

00027         { return sum; }

const math::XYZTLorentzVector& reco::TrackKinematics::weightedVectorSum (  )  const [inline]

Definition at line 28 of file TrackKinematics.h.

References weightedSum.

Referenced by reco::VertexFilter::operator()(), and CombinedSVComputer::operator()().

00029         { return weightedSum; }


Member Data Documentation

unsigned int reco::TrackKinematics::n [private]

Definition at line 32 of file TrackKinematics.h.

Referenced by add(), and numberOfTracks().

math::XYZTLorentzVector reco::TrackKinematics::sum [private]

Definition at line 34 of file TrackKinematics.h.

Referenced by add(), and vectorSum().

double reco::TrackKinematics::sumWeights [private]

Definition at line 33 of file TrackKinematics.h.

Referenced by add(), and sumOfWeights().

math::XYZTLorentzVector reco::TrackKinematics::weightedSum [private]

Definition at line 35 of file TrackKinematics.h.

Referenced by add(), and weightedVectorSum().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:51:34 2009 for CMSSW by  doxygen 1.5.4