AliRoot Core  ee782a0 (ee782a0)
AliAODVertex Class Reference

AOD vertex base class. More...

#include <AliAODVertex.h>

Inheritance diagram for AliAODVertex:

Public Types

enum  AODVtx_t {
  kPrimaryInvalid =-10, kUndef =-1, kPrimary, kKink,
  kV0, kCascade, kMulti, kMainSPD,
  kPileupSPD, kPileupTracks, kMainTPC, kPrimaryTPC
}
 

Public Member Functions

 AliAODVertex ()
 
 AliAODVertex (const Double_t *position, const Double_t *covMatrix=0x0, Double_t chi2perNDF=-999., TObject *parent=0x0, Short_t id=-1, Char_t vtype=kUndef, Int_t nprong=0)
 
 AliAODVertex (const Float_t *position, const Float_t *covMatrix=0x0, Double_t chi2perNDF=-999., TObject *parent=0x0, Short_t id=-1, Char_t vtype=kUndef, Int_t nprong=0)
 
 AliAODVertex (const Double_t *position, Double_t chi2perNDF, Char_t vtype=kUndef, Int_t nprong=0)
 
 AliAODVertex (const Float_t *position, Double_t chi2perNDF, Char_t vtype=kUndef, Int_t nprong=0)
 
virtual ~AliAODVertex ()
 
 AliAODVertex (const AliAODVertex &vtx)
 
AliAODVertexoperator= (const AliAODVertex &vtx)
 
virtual AliAODVertexCloneWithoutRefs () const
 
void SetX (Double_t x)
 
void SetY (Double_t y)
 
void SetZ (Double_t z)
 
void SetPosition (Double_t x, Double_t y, Double_t z)
 
template<class T >
void SetPosition (T *pos)
 
void SetChi2perNDF (Double_t chi2perNDF)
 
void SetParent (TObject *parent)
 
Double_t GetX () const
 
Double_t GetY () const
 
Double_t GetZ () const
 
void GetXYZ (Double_t position[3]) const
 
template<class T >
void GetPosition (T *pos) const
 
template<class T >
void SetCovMatrix (const T *covMatrix)
 
template<class T >
Bool_t GetCovMatrix (T *covMatrix) const
 
void GetCovarianceMatrix (Double_t covmatrix[6]) const
 
void RemoveCovMatrix ()
 
template<class T >
void GetSigmaXYZ (T *sigma) const
 
Double_t GetChi2perNDF () const
 
Double_t GetChi2 () const
 
Int_t GetNDF () const
 
Short_t GetID () const
 
void SetID (Short_t id)
 
Char_t GetType () const
 
void SetType (AODVtx_t vtype)
 
TObject * GetParent () const
 
Bool_t HasParent (TObject *parent) const
 
void AddDaughter (TObject *daughter)
 
void RemoveDaughter (TObject *daughter)
 
void RemoveDaughters ()
 
TObject * GetDaughter (Int_t i)
 
Bool_t HasDaughter (TObject *daughter) const
 
Int_t GetNDaughters () const
 
Int_t GetNContributors () const
 
Int_t CountRealContributors () const
 
Int_t GetNContributorsStored () const
 
void SetNContributors (Int_t nc)
 
Double_t RotatedCovMatrixXX (Double_t phi=0., Double_t theta=0.) const
 
Double_t RotatedCovMatrixXY (Double_t phi=0., Double_t theta=0.) const
 
Double_t RotatedCovMatrixYY (Double_t phi=0.) const
 
Double_t RotatedCovMatrixXZ (Double_t phi=0., Double_t theta=0.) const
 
Double_t RotatedCovMatrixYZ (Double_t phi=0., Double_t theta=0.) const
 
Double_t RotatedCovMatrixZZ (Double_t phi=0., Double_t theta=0.) const
 
template<class T , class P >
void PhiAndThetaToVertex (AliAODVertex *vtx, P &phi, T &theta) const
 
Double_t Distance2ToVertex (const AliAODVertex *vtx) const
 
Double_t DistanceToVertex (AliAODVertex *vtx) const
 
Double_t DistanceXY2ToVertex (const AliAODVertex *vtx) const
 
Double_t DistanceXYToVertex (AliAODVertex *vtx) const
 
Double_t Error2DistanceToVertex (AliAODVertex *vtx) const
 
Double_t ErrorDistanceToVertex (AliAODVertex *vtx) const
 
Double_t Error2DistanceXYToVertex (AliAODVertex *vtx) const
 
Double_t ErrorDistanceXYToVertex (AliAODVertex *vtx) const
 
void PrintIndices () const
 
void Print (Option_t *option="") const
 
const char * AsString () const
 
void SetBC (Int_t bc)
 
Int_t GetBC () const
 
template<class T >
void GetSigmaXYZ (T sigma[3]) const
 
- Public Member Functions inherited from AliVVertex
 AliVVertex ()
 
virtual ~AliVVertex ()
 
 AliVVertex (const AliVVertex &vVert)
 
AliVVertexoperator= (const AliVVertex &vVert)
 
virtual Bool_t IsFromVertexer3D () const
 
virtual Bool_t IsFromVertexerZ () const
 
virtual Bool_t GetStatus () const
 
virtual void Clear (Option_t *option)
 

Static Public Member Functions

static const char * GetTypeName (AODVtx_t type)
 
static Bool_t GetUseCountVtxTrackContributors ()
 
static void SetUseCountVtxTrackContributors (Bool_t v)
 

Private Member Functions

void MakeProngs ()
 

Private Attributes

Double32_t fPosition [3]
 vertex position More...
 
Double32_t fChi2perNDF
 chi2/NDF of vertex fit More...
 
Short_t fID
 vertex ID; corresponds to the array index of the appropriate ESD container More...
 
Char_t fBCID
 BC ID assigned to vertex. More...
 
Char_t fType
 vertex type More...
 
Int_t fNprong
 number of prongs More...
 
Int_t fIprong
 ! index of prong More...
 
Int_t fNContributors
 Number of contributors for SPD vertex. More...
 
AliAODRedCov< 3 > * fCovMatrix
 vertex covariance matrix; values of and below the diagonal More...
 
TRef fParent
 reference to the parent particle More...
 
TRefArray fDaughters
 
TRef * fProngs
 alternative daughters for n-prong vertex More...
 

Static Private Attributes

static Bool_t fgUseCountVtxTrackContributors = kFALSE
 enforce old-style counting of VertexTracks contributors More...
 

Detailed Description

AOD vertex base class.

Inheritance from AliVVertex: A. Dainese

Author
Markus Oldenburg, CERN

Definition at line 23 of file AliAODVertex.h.

Member Enumeration Documentation

Enumerator
kPrimaryInvalid 
kUndef 
kPrimary 
kKink 
kV0 
kCascade 
kMulti 
kMainSPD 
kPileupSPD 
kPileupTracks 
kMainTPC 
kPrimaryTPC 

Definition at line 27 of file AliAODVertex.h.

Constructor & Destructor Documentation

AliAODVertex::AliAODVertex ( )

Definition at line 26 of file AliAODVertex.cxx.

Referenced by CloneWithoutRefs().

AliAODVertex::AliAODVertex ( const Double_t *  position,
const Double_t *  covMatrix = 0x0,
Double_t  chi2perNDF = -999.,
TObject *  parent = 0x0,
Short_t  id = -1,
Char_t  vtype = kUndef,
Int_t  nprong = 0 
)
AliAODVertex::AliAODVertex ( const Float_t *  position,
const Float_t *  covMatrix = 0x0,
Double_t  chi2perNDF = -999.,
TObject *  parent = 0x0,
Short_t  id = -1,
Char_t  vtype = kUndef,
Int_t  nprong = 0 
)
AliAODVertex::AliAODVertex ( const Double_t *  position,
Double_t  chi2perNDF,
Char_t  vtype = kUndef,
Int_t  nprong = 0 
)
AliAODVertex::AliAODVertex ( const Float_t *  position,
Double_t  chi2perNDF,
Char_t  vtype = kUndef,
Int_t  nprong = 0 
)
AliAODVertex::~AliAODVertex ( )
virtual

Destructor

Definition at line 150 of file AliAODVertex.cxx.

AliAODVertex::AliAODVertex ( const AliAODVertex vtx)

Copy constructor.

Definition at line 159 of file AliAODVertex.cxx.

Member Function Documentation

void AliAODVertex::AddDaughter ( TObject *  daughter)

Add reference to daughter track

Definition at line 256 of file AliAODVertex.cxx.

Referenced by HasParent().

const char * AliAODVertex::AsString ( ) const

Make a string describing this object

Definition at line 590 of file AliAODVertex.cxx.

Referenced by ErrorDistanceXYToVertex().

AliAODVertex * AliAODVertex::CloneWithoutRefs ( ) const
virtual

Special method to copy all but the refs

Definition at line 186 of file AliAODVertex.cxx.

Int_t AliAODVertex::CountRealContributors ( ) const

Definition at line 319 of file AliAODVertex.cxx.

Referenced by GetNContributors(), and RemoveDaughters().

Double_t AliAODVertex::Distance2ToVertex ( const AliAODVertex vtx) const

distance in 3D to another AliAODVertex

Definition at line 513 of file AliAODVertex.cxx.

Referenced by AliAODRecoDecay::DecayLength2(), DistanceToVertex(), and SetNContributors().

Double_t AliAODVertex::DistanceToVertex ( AliAODVertex vtx) const
inline

Definition at line 127 of file AliAODVertex.h.

Double_t AliAODVertex::DistanceXY2ToVertex ( const AliAODVertex vtx) const

distance in XY to another AliAODVertex

Definition at line 525 of file AliAODVertex.cxx.

Referenced by DistanceToVertex(), and DistanceXYToVertex().

Double_t AliAODVertex::DistanceXYToVertex ( AliAODVertex vtx) const
inline

Definition at line 130 of file AliAODVertex.h.

Referenced by AliAODRecoDecay::DecayLengthXY().

Double_t AliAODVertex::Error2DistanceToVertex ( AliAODVertex vtx) const

error on the distance in 3D to another AliAODVertex

Definition at line 536 of file AliAODVertex.cxx.

Referenced by AliAODRecoDecay::DecayLengthError2(), DistanceXYToVertex(), and ErrorDistanceToVertex().

Double_t AliAODVertex::Error2DistanceXYToVertex ( AliAODVertex vtx) const

error on the distance in XY to another AliAODVertex

Definition at line 551 of file AliAODVertex.cxx.

Referenced by ErrorDistanceToVertex(), and ErrorDistanceXYToVertex().

Double_t AliAODVertex::ErrorDistanceToVertex ( AliAODVertex vtx) const
inline

Definition at line 133 of file AliAODVertex.h.

Double_t AliAODVertex::ErrorDistanceXYToVertex ( AliAODVertex vtx) const
inline

Definition at line 136 of file AliAODVertex.h.

Referenced by AliAODRecoDecay::DecayLengthXYError().

Int_t AliAODVertex::GetBC ( ) const
inlinevirtual

Reimplemented from AliVVertex.

Definition at line 149 of file AliAODVertex.h.

Double_t AliAODVertex::GetChi2 ( ) const
inlinevirtual

Implements AliVVertex.

Definition at line 93 of file AliAODVertex.h.

Referenced by AliAODcascade::Chi2Xi().

Double_t AliAODVertex::GetChi2perNDF ( ) const
inlinevirtual

Implements AliVVertex.

Definition at line 92 of file AliAODVertex.h.

Referenced by AsString(), AliAODv0::Chi2V0(), and AliAODRecoDecay::GetReducedChi2().

void AliAODVertex::GetCovarianceMatrix ( Double_t  covmatrix[6]) const
inlinevirtual

Implements AliVVertex.

Definition at line 86 of file AliAODVertex.h.

Referenced by AliAODTagCreator::FillEventTag(), and AliAODEvent::IsPileupFromSPD().

template<class T >
Bool_t AliAODVertex::GetCovMatrix ( T *  covMatrix) const
inline
TObject * AliAODVertex::GetDaughter ( Int_t  i)
inline
Short_t AliAODVertex::GetID ( ) const
inline

Definition at line 96 of file AliAODVertex.h.

Int_t AliAODVertex::GetNContributors ( ) const
virtual

Returns the number of tracks used to fit this vertex.

Implements AliVVertex.

Definition at line 298 of file AliAODVertex.cxx.

Referenced by AsString(), GetNDF(), AliAODEvent::IsPileupFromSPD(), and RemoveDaughters().

Int_t AliAODVertex::GetNContributorsStored ( ) const
inline

Definition at line 113 of file AliAODVertex.h.

Int_t AliAODVertex::GetNDaughters ( ) const
inline
Int_t AliAODVertex::GetNDF ( ) const
inlinevirtual

Implements AliVVertex.

Definition at line 94 of file AliAODVertex.h.

Referenced by GetChi2().

TObject* AliAODVertex::GetParent ( ) const
inline

Definition at line 102 of file AliAODVertex.h.

template<class T >
void AliAODVertex::GetSigmaXYZ ( T *  sigma) const

Referenced by RemoveCovMatrix().

template<class T >
void AliAODVertex::GetSigmaXYZ ( sigma[3]) const

Definition at line 278 of file AliAODVertex.cxx.

const char * AliAODVertex::GetTypeName ( AODVtx_t  type)
static

Return an ASCII version of type

Definition at line 622 of file AliAODVertex.cxx.

Referenced by AsString(), and ErrorDistanceXYToVertex().

static Bool_t AliAODVertex::GetUseCountVtxTrackContributors ( )
inlinestatic

Definition at line 145 of file AliAODVertex.h.

void AliAODVertex::GetXYZ ( Double_t  position[3]) const
inlinevirtual

Implements AliVVertex.

Definition at line 73 of file AliAODVertex.h.

Bool_t AliAODVertex::HasDaughter ( TObject *  daughter) const

Checks if the given daughter (particle) is part of this vertex.

Definition at line 332 of file AliAODVertex.cxx.

Referenced by RemoveDaughters().

Bool_t AliAODVertex::HasParent ( TObject *  parent) const
inline

Definition at line 103 of file AliAODVertex.h.

void AliAODVertex::MakeProngs ( )
inlineprivate

Definition at line 151 of file AliAODVertex.h.

Referenced by AliAODVertex(), operator=(), and RemoveDaughters().

AliAODVertex & AliAODVertex::operator= ( const AliAODVertex vtx)

Assignment operator

Definition at line 216 of file AliAODVertex.cxx.

template<class T , class P >
void AliAODVertex::PhiAndThetaToVertex ( AliAODVertex vtx,
P &  phi,
T &  theta 
) const
void AliAODVertex::Print ( Option_t *  option = "") const
virtual

Print information of all data members

Implements AliVVertex.

Definition at line 659 of file AliAODVertex.cxx.

Referenced by ErrorDistanceXYToVertex().

void AliAODVertex::PrintIndices ( ) const
virtual

Print indices of particles originating form this vertex

Implements AliVVertex.

Definition at line 579 of file AliAODVertex.cxx.

Referenced by ErrorDistanceXYToVertex().

void AliAODVertex::RemoveCovMatrix ( )
inline

Definition at line 88 of file AliAODVertex.h.

Referenced by AliAODv0::ResetV0(), and AliAODcascade::ResetXi().

void AliAODVertex::RemoveDaughter ( TObject *  daughter)
inline

Definition at line 106 of file AliAODVertex.h.

void AliAODVertex::RemoveDaughters ( )
inline

Definition at line 107 of file AliAODVertex.h.

Referenced by AliAODv0::ResetV0(), and AliAODcascade::ResetXi().

Double_t AliAODVertex::RotatedCovMatrixXX ( Double_t  phi = 0.,
Double_t  theta = 0. 
) const

XX term of covariance matrix after rotation by phi around z-axis and, then, by theta around new y-axis

Definition at line 352 of file AliAODVertex.cxx.

Referenced by Error2DistanceToVertex(), Error2DistanceXYToVertex(), and SetNContributors().

Double_t AliAODVertex::RotatedCovMatrixXY ( Double_t  phi = 0.,
Double_t  theta = 0. 
) const

XY term of covariance matrix after rotation by phi around z-axis and, then, by theta around new y-axis

Definition at line 380 of file AliAODVertex.cxx.

Referenced by SetNContributors().

Double_t AliAODVertex::RotatedCovMatrixXZ ( Double_t  phi = 0.,
Double_t  theta = 0. 
) const

XZ term of covariance matrix after rotation by phi around z-axis and, then, by theta around new y-axis

Definition at line 407 of file AliAODVertex.cxx.

Referenced by SetNContributors().

Double_t AliAODVertex::RotatedCovMatrixYY ( Double_t  phi = 0.) const

YY term of covariance matrix after rotation by phi around z-axis and, then, by theta around new y-axis

Definition at line 435 of file AliAODVertex.cxx.

Referenced by SetNContributors().

Double_t AliAODVertex::RotatedCovMatrixYZ ( Double_t  phi = 0.,
Double_t  theta = 0. 
) const

YZ term of covariance matrix after rotation by phi around z-axis and, then, by theta around new y-axis

Definition at line 458 of file AliAODVertex.cxx.

Referenced by SetNContributors().

Double_t AliAODVertex::RotatedCovMatrixZZ ( Double_t  phi = 0.,
Double_t  theta = 0. 
) const

ZZ term of covariance matrix after rotation by phi around z-axis and, then, by theta around new y-axis

Definition at line 485 of file AliAODVertex.cxx.

Referenced by SetNContributors().

void AliAODVertex::SetBC ( Int_t  bc)
inlinevirtual

Reimplemented from AliVVertex.

Definition at line 148 of file AliAODVertex.h.

void AliAODVertex::SetChi2perNDF ( Double_t  chi2perNDF)
inline

Definition at line 66 of file AliAODVertex.h.

Referenced by AliAODv0::ResetV0(), and AliAODcascade::ResetXi().

template<class T >
void AliAODVertex::SetCovMatrix ( const T *  covMatrix)
inline

Definition at line 78 of file AliAODVertex.h.

void AliAODVertex::SetID ( Short_t  id)
inline

Definition at line 97 of file AliAODVertex.h.

Referenced by AliAODv0::ResetV0(), and AliAODcascade::ResetXi().

void AliAODVertex::SetNContributors ( Int_t  nc)
inline

Definition at line 115 of file AliAODVertex.h.

Referenced by CloneWithoutRefs().

void AliAODVertex::SetParent ( TObject *  parent)
inline

Definition at line 68 of file AliAODVertex.h.

Referenced by AliAODv0::ResetV0(), and AliAODcascade::ResetXi().

void AliAODVertex::SetPosition ( Double_t  x,
Double_t  y,
Double_t  z 
)
inline

Definition at line 62 of file AliAODVertex.h.

Referenced by AliAODv0::ResetV0(), and AliAODcascade::ResetXi().

template<class T >
void AliAODVertex::SetPosition ( T *  pos)
inline

Definition at line 63 of file AliAODVertex.h.

void AliAODVertex::SetType ( AODVtx_t  vtype)
inline

Definition at line 100 of file AliAODVertex.h.

Referenced by AliAODv0::ResetV0(), and AliAODcascade::ResetXi().

static void AliAODVertex::SetUseCountVtxTrackContributors ( Bool_t  v)
inlinestatic

Definition at line 146 of file AliAODVertex.h.

void AliAODVertex::SetX ( Double_t  x)
inline

Definition at line 59 of file AliAODVertex.h.

void AliAODVertex::SetY ( Double_t  y)
inline

Definition at line 60 of file AliAODVertex.h.

void AliAODVertex::SetZ ( Double_t  z)
inline

Definition at line 61 of file AliAODVertex.h.

Member Data Documentation

Char_t AliAODVertex::fBCID
private

BC ID assigned to vertex.

Definition at line 158 of file AliAODVertex.h.

Referenced by GetBC(), operator=(), and SetBC().

Double32_t AliAODVertex::fChi2perNDF
private

chi2/NDF of vertex fit

Definition at line 156 of file AliAODVertex.h.

Referenced by CloneWithoutRefs(), GetChi2(), GetChi2perNDF(), operator=(), Print(), and SetChi2perNDF().

TRefArray AliAODVertex::fDaughters
private
Bool_t AliAODVertex::fgUseCountVtxTrackContributors = kFALSE
staticprivate

enforce old-style counting of VertexTracks contributors

Definition at line 169 of file AliAODVertex.h.

Referenced by GetNContributors(), GetUseCountVtxTrackContributors(), and SetUseCountVtxTrackContributors().

Short_t AliAODVertex::fID
private

vertex ID; corresponds to the array index of the appropriate ESD container

Definition at line 157 of file AliAODVertex.h.

Referenced by CloneWithoutRefs(), GetID(), operator=(), and SetID().

Int_t AliAODVertex::fIprong
private

! index of prong

Definition at line 161 of file AliAODVertex.h.

Referenced by AddDaughter(), MakeProngs(), operator=(), and RemoveDaughters().

Int_t AliAODVertex::fNContributors
private

Number of contributors for SPD vertex.

Definition at line 162 of file AliAODVertex.h.

Referenced by CloneWithoutRefs(), GetNContributors(), GetNContributorsStored(), operator=(), and SetNContributors().

Int_t AliAODVertex::fNprong
private

number of prongs

Definition at line 160 of file AliAODVertex.h.

Referenced by AddDaughter(), AliAODVertex(), GetDaughter(), GetNDaughters(), HasDaughter(), MakeProngs(), operator=(), and ~AliAODVertex().

TRef AliAODVertex::fParent
private

reference to the parent particle

Definition at line 164 of file AliAODVertex.h.

Referenced by AsString(), GetParent(), HasParent(), operator=(), Print(), and SetParent().

Double32_t AliAODVertex::fPosition[3]
private
TRef* AliAODVertex::fProngs
private

alternative daughters for n-prong vertex

Definition at line 167 of file AliAODVertex.h.

Referenced by AddDaughter(), AliAODVertex(), GetDaughter(), GetNDaughters(), HasDaughter(), MakeProngs(), operator=(), RemoveDaughters(), and ~AliAODVertex().

Char_t AliAODVertex::fType
private

vertex type

Definition at line 159 of file AliAODVertex.h.

Referenced by CloneWithoutRefs(), GetNContributors(), GetType(), operator=(), Print(), and SetType().


The documentation for this class was generated from the following files: