1 #include "../inc/vertex.h"
2 #include "../inc/track.h"
3 #include "../inc/event.h"
4 #include "../zvtop/include/candidatevertex.h"
5 #include "../inc/trackstate.h"
12 :_Event(Event),_Tracks(Tracks),_Position(Position),_PosError(PosError),_IsPrimary(IsPrimary), _Chi2(Chi2), _Probability(Probability),_ChiSquaredOfTrack(ChiTrack)
16 :_Event(Event),_Tracks(Tracks),_Position(Position),_PosError(PosError),_IsPrimary(IsPrimary), _Chi2(Chi2), _Probability(Probability)
20 :_Event(Event),_Position(CandidateVertex->position()),_PosError(CandidateVertex->positionError())
22 for (std::vector<TrackState*>::const_iterator iTrack = CandidateVertex->
trackStateList().begin();
25 _Tracks.push_back((*iTrack)->parentTrack());
26 _ChiSquaredOfTrack[(*iTrack)->parentTrack()] = CandidateVertex->
chiSquaredOfTrack(*iTrack);
39 std::vector<Track*>::iterator
position = std::find(_Tracks.begin(), _Tracks.end(), RTrack);
40 if (position!=_Tracks.end())
42 _Tracks.erase(position);
51 if (find(_Tracks.begin(), _Tracks.end(), HTrack) != _Tracks.end())
62 for (std::vector<Track*>::const_iterator iTrack = _Tracks.begin();iTrack!=_Tracks.end();++iTrack)
64 result = result.add((*iTrack)->momentum());
73 for (std::vector<Track*>::const_iterator iTrack = _Tracks.begin();iTrack!=_Tracks.end();++iTrack)
75 result += (*iTrack)->charge();
82 return this->
position().subtract(this->
event()->interactionPoint()).mag(Proj);
108 FinalError = prec_inner_prod(trans(TotalPosition),(prec_prod( TotalError,TotalPosition )));
109 return sqrt(FinalError/this->
position().subtract(FarVertex->
position()).mag2(Proj));
Projection
Projection Type.
bool removeTrack(Track *RTrack)
Remove Track.
double radius(Projection Proj) const
Radius.
Vector3 momentum() const
Momentum.
bool hasTrack(Track *HTrack) const
Does vertex contain this Track?
double chiSquaredOfTrack(TrackState *Track) const
Return the chi squared contribution of a trackstate in this vertex.
Vertex()
Default Constuctor.
A collection of TrackState objects with a fit and vertex function maximum.
Event * event() const
Event.
double distanceToVertex(Vertex *FarVertex, Projection Proj) const
Distance to another vertex.
const Vector3 & position() const
Position.
const SymMatrix3x3 & positionError() const
Position.
InteractionPoint * interactionPoint() const
Return the InteractionPoint in this Vertex.
Unique Track representation.
double distanceToVertexError(Vertex *FarVertex, Projection Proj) const
Error of distance to another vertex.
const std::vector< TrackState * > & trackStateList() const
Return the TrackStates in this Vertex.
double chiSquaredOfFit() const
Return the chi squared of the fit.
double charge() const
Charge.