18#include "GaudiKernel/MsgStream.h"
38 std::vector<const Trk::TrackParameters*>& parameters,
49 definingParameter->momentum()[
Trk::
py],
50 definingParameter->momentum()[
Trk::
pz],
52 pow(definingParameter->momentum()[
Trk::
px], 2) +
53 pow(definingParameter->momentum()[
Trk::
py], 2) +
54 pow(definingParameter->momentum()[
Trk::
pz], 2)))
62 std::unique_ptr<Trk::TrackSummary> trkSummary,
64 std::vector<const Trk::TrackParameters*>&& parameters,
71 std::move(trkSummary),
72 std::move(parameters),
101 P4PxPyPzE::operator=(rhs);
112 P4PxPyPzE::operator= (rhs);
143 for (std::vector<const Trk::TrackParameters*>::iterator iter =
145 iter != this->m_trackParameters.end();
151 *iter=measPg->
clone();
160 std::ostringstream os;
162 sl<<std::endl<<os.str();
177 std::cout <<
" FATAL ERROR : TrackParticle::set4Mom called. Changing the 4 "
178 "momentum of the TrackParticle is not allowed! Aborting!"
187 std::cout <<
" FATAL ERROR : TrackParticle::set4Mom called. Changing the 4 "
188 "momentum of the TrackParticle is not allowed! Aborting!"
197 std::cout <<
" FATAL ERROR : TrackParticle::set4Mom called. Changing the 4 "
198 "momentum of the TrackParticle is not allowed! Aborting!"
210 return m_abc.getAthenaBarCode();
214 m_abc.setAthenaBarCode(
id);
219 return m_abc.hasSameAthenaBarCode(bc);
223 return m_abc.hasSameAthenaBarCodeExceptVersion(bc);
227 return m_abc.getVersion();
235 m_abc.setVersion(newversion);
252 trackParticle.
dump(sl);
258 trackParticle.
dump(sl);
uint64_t AthenaBarCode_t
barcode for all INav4Mom classes
AthenaBarCode_t AthenaBarCodeVersion_t
MsgStream & operator<<(MsgStream &sl, const Rec::TrackParticle &trackParticle)
Overload of << operator for MsgStream for debug output.
constexpr int pow(int base, int exp) noexcept
ElementLink implementation for ROOT usage.
I4Momentum is an abstract base class providing 4-momentum behavior.
P4PxPyPzEBase is a base class for classes with 4-momentum behavior, for which Px, Py,...
virtual double px() const
get px data member
P4PxPyPzE(const double px, const double py, const double pz, const double e)
constructor with all data members
virtual double py() const
get py data member
virtual double pz() const
get pz data member
void setVersion(AthenaBarCodeVersion_t newversion)
AthenaBarCode_t getAthenaBarCode() const
void set4Mom(const I4Momentum *const theI4Mom)
set 4Momentum (will throw exception if cannot be implemented)
virtual ~TrackParticle()
Destructor.
bool hasSameAthenaBarCode(const IAthenaBarCode &) const
virtual MsgStream & dump(MsgStream &out) const
Dump methods to be used by the overloaded stream operator (inheritance!)
void removeFitQuality()
removeFitQuality to delete the fit quality object
void removeErrorMatrix()
removeErrorMatrix to delete the error matrix.
AthenaBarCodeVersion_t getVersion() const
bool hasSameAthenaBarCodeExceptVersion(const IAthenaBarCode &) const
void removeSummary()
Slimming methods used to reduce the TrackParticle content and size that may be called by users when m...
TrackParticle & operator=(const TrackParticle &)
Assignment operator.
void setAthenaBarCode(AthenaBarCode_t)
TrackParticle()
Constructor 0 standard constructor which sets everything to 0, needed for persistency.
Class to represent and store fit qualities from track reconstruction in terms of and number of degre...
virtual ParametersT< DIM, T, S > * clone() const override final
Virtual clone.
Contains information about the 'fitter' of this track.
TrackParticleBase & operator=(const TrackParticleBase &)
Assignement operator.
const TrackSummary * m_trackSummary
the summary of this TrackParticle.
const FitQuality * m_fitQuality
the fit quality of this TrackParticle.
const FitQuality * fitQuality() const
accessor function for FitQuality.
virtual MsgStream & dump(MsgStream &out) const
Dump methods to be used by the overloaded stream operator (inheritance!)
TrackParticleBase()
Constructor 0 standard constructor which sets everything to 0, needed for persistency.
std::vector< const TrackParameters * > m_trackParameters
DataVector of TrackParameters stored inside this TrackParticle.
const TrackInfo & info() const
returns the info of the track.
A summary of the information contained by a track.
Ensure that the ATLAS eigen extensions are properly loaded.
ParametersT< TrackParametersDim, Charged, PerigeeSurface > Perigee
VertexType TrackParticleOrigin
ParametersBase< TrackParametersDim, Charged > TrackParameters
Mass declaration of particles covered in the ParticleHypothesis.