ATLAS Offline Software
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
Trk::IVertexUpdator Class Referenceabstract

#include <IVertexUpdator.h>

Inheritance diagram for Trk::IVertexUpdator:
Collaboration diagram for Trk::IVertexUpdator:

Classes

struct  positionUpdateOutcome
 

Public Types

enum  updateMode { removeTrack =-1, addTrack =1 }
 

Public Member Functions

virtual ~IVertexUpdator ()
 Virtual destructor. More...
 
virtual xAOD::Vertexadd (xAOD::Vertex &, VxTrackAtVertex &) const =0
 Add method: adds one track to a vertex. More...
 
virtual xAOD::Vertexremove (xAOD::Vertex &, VxTrackAtVertex &) const =0
 Remove method: removes one track from a vertex. More...
 
virtual positionUpdateOutcome positionUpdate (const xAOD::Vertex &vtx, const LinearizedTrack *trk, double trackWeight, updateMode mode) const =0
 Position update method. More...
 
virtual float trackParametersChi2 (const xAOD::Vertex &new_vtx, const LinearizedTrack *trk) const =0
 Method calculating the interstep Chi2 increment. More...
 
virtual float trackParametersChi2 (const positionUpdateOutcome &new_vtx, const LinearizedTrack *trk) const =0
 
virtual float vertexPositionChi2 (const xAOD::Vertex &old_vtx, const xAOD::Vertex &new_vtx) const =0
 Method calculating the vertex displacement-related part of the chi2
Can also be called using the outcome from a prior positionUpdate call. More...
 
virtual float vertexPositionChi2 (const xAOD::Vertex &old_vtx, const positionUpdateOutcome &new_vtx) const =0
 

Static Public Member Functions

static const InterfaceID & interfaceID ()
 AlgTool interface methods. More...
 

Detailed Description

An abstract base class for the vertex updators. Adds or removes a single Trk::VxTrackAtVertex to or from a Trk::VxCandidate. The new Trk::VxCandidate is returned at the end of this operation. The initial one is not changed.

Authors
Kiril.nosp@m.l.Pr.nosp@m.okofi.nosp@m.ev@c.nosp@m.ern.c.nosp@m.h, Giaci.nosp@m.nto..nosp@m.Piacq.nosp@m.uadi.nosp@m.o@phy.nosp@m.sik..nosp@m.uni-f.nosp@m.reib.nosp@m.urg.d.nosp@m.e

Changes:

David Shope david.nosp@m..ric.nosp@m.hard..nosp@m.shop.nosp@m.e@cer.nosp@m.n.ch (2016-04-19)

EDM Migration to xAOD - from Trk::VxCandidate to xAOD::Vertex, from Trk::RecVertex to xAOD::Vertex, from Trk::Vertex to Amg::Vector3D

Definition at line 45 of file IVertexUpdator.h.

Member Enumeration Documentation

◆ updateMode

Enumerator
removeTrack 
addTrack 

Definition at line 68 of file IVertexUpdator.h.

68  {
69  removeTrack=-1,
70  addTrack=1
71  } updateMode;

Constructor & Destructor Documentation

◆ ~IVertexUpdator()

virtual Trk::IVertexUpdator::~IVertexUpdator ( )
inlinevirtual

Virtual destructor.

Definition at line 51 of file IVertexUpdator.h.

51 {};

Member Function Documentation

◆ add()

virtual xAOD::Vertex* Trk::IVertexUpdator::add ( xAOD::Vertex ,
VxTrackAtVertex  
) const
pure virtual

Add method: adds one track to a vertex.

Implemented in Trk::KalmanVertexUpdator.

◆ interfaceID()

static const InterfaceID& Trk::IVertexUpdator::interfaceID ( )
inlinestatic

AlgTool interface methods.

Definition at line 56 of file IVertexUpdator.h.

56 { return IID_IVertexUpdator; };

◆ positionUpdate()

virtual positionUpdateOutcome Trk::IVertexUpdator::positionUpdate ( const xAOD::Vertex vtx,
const LinearizedTrack trk,
double  trackWeight,
updateMode  mode 
) const
pure virtual

Position update method.

Required for smoothed chi2 calculation
Updates a position with the information from one track.

Implemented in Trk::KalmanVertexUpdator.

◆ remove()

virtual xAOD::Vertex* Trk::IVertexUpdator::remove ( xAOD::Vertex ,
VxTrackAtVertex  
) const
pure virtual

Remove method: removes one track from a vertex.

Implemented in Trk::KalmanVertexUpdator.

◆ trackParametersChi2() [1/2]

virtual float Trk::IVertexUpdator::trackParametersChi2 ( const positionUpdateOutcome new_vtx,
const LinearizedTrack trk 
) const
pure virtual

Implemented in Trk::KalmanVertexUpdator.

◆ trackParametersChi2() [2/2]

virtual float Trk::IVertexUpdator::trackParametersChi2 ( const xAOD::Vertex new_vtx,
const LinearizedTrack trk 
) const
pure virtual

Method calculating the interstep Chi2 increment.

Can also be called using the outcome from a prior positionUpdate call.

Implemented in Trk::KalmanVertexUpdator.

◆ vertexPositionChi2() [1/2]

virtual float Trk::IVertexUpdator::vertexPositionChi2 ( const xAOD::Vertex old_vtx,
const positionUpdateOutcome new_vtx 
) const
pure virtual

Implemented in Trk::KalmanVertexUpdator.

◆ vertexPositionChi2() [2/2]

virtual float Trk::IVertexUpdator::vertexPositionChi2 ( const xAOD::Vertex old_vtx,
const xAOD::Vertex new_vtx 
) const
pure virtual

Method calculating the vertex displacement-related part of the chi2
Can also be called using the outcome from a prior positionUpdate call.

Implemented in Trk::KalmanVertexUpdator.


The documentation for this class was generated from the following file:
Trk::IVertexUpdator::updateMode
updateMode
Definition: IVertexUpdator.h:68
Trk::IVertexUpdator::addTrack
@ addTrack
Definition: IVertexUpdator.h:70
Trk::IVertexUpdator::removeTrack
@ removeTrack
Definition: IVertexUpdator.h:69