|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef TRKALIGNGENTOOLS_BEAMSPOTVERTEXPREPROCESSOR_H
6 #define TRKALIGNGENTOOLS_BEAMSPOTVERTEXPREPROCESSOR_H
9 #include "GaudiKernel/ToolHandle.h"
10 #include "GaudiKernel/IAlgTool.h"
43 class IGlobalTrackFitter;
51 class VxTrackAtVertex;
52 class IAlignModuleTool;
125 std::vector< std::pair< const xAOD::Vertex*, std::vector<VxTrackAtVertex> > >
m_allTracksVector;
172 #endif // TRKALIGNGENTOOLS_BEAMSPOTVERTEXPREPROCESSOR_H
const ShapeFitter * fitter
bool m_storeFitMatrices
flag to store derivative and covariance matrices after refit
double m_maxPt
Max pT range for refitting tracks.
std::vector< std::string > m_interestedVertexContainers
std::string m_compareMethod
the method used to judge whether two tracks are the same track
bool m_doBeamspotConstraint
do beamspot constraint
The VxTrackAtVertex is a common class for all present TrkVertexFitters The VxTrackAtVertex is designe...
bool m_refitTracks
flag to refit tracks
DataVector< AlignVertex > m_AlignVertices
collection of AlignVertices used in FullVertex constraint option
bool isAssociatedToPV(const Track *track, const xAOD::VertexContainer *vertices)
ToolHandle< ITrackToVertexIPEstimator > m_trackToVertexIPEstimatorTool
int m_particleNumber
type of material interaction in extrapolation
bool m_doBSTrackSelection
the selection mechanism which is based on cutting the perigee parameters, pt, etc.
double m_BSScalingFactor
scaling factor on beasmpot width
bool m_selectVertices
do vertex selection
const VertexOnTrack * provideVotFromBeamspot(const Track *track) const
void provideVtxBeamspot(const AlignVertex *b, AmgSymMatrix(3) *q, Amg::Vector3D *v) const
void accumulateVTX(AlignTrack *alignTrack)
methods added for the full VTX fit:
bool m_doNormalRefit
provide tracks in the case failed BS, PV and FullVertex constraints.
ToolHandle< InDet::IInDetTrackSelectionTool > m_trkSelector
new track selector tool
std::vector< std::pair< const xAOD::Vertex *, std::vector< VxTrackAtVertex > > > m_allTracksVector
const Track * doConstraintRefit(ToolHandle< IGlobalTrackFitter > &fitter, const Track *track, const VertexOnTrack *vot, const ParticleHypothesis &particleHypothesis) const
bool m_doPrimaryVertexConstraint
do vertex constraint
const VertexOnTrack * provideVotFromVertex(const Track *track, const xAOD::Vertex *&vtx) const
virtual DataVector< Track > * processTrackCollection(const DataVector< Track > *trks)
Main processing of track collection.
AmgSymMatrix(5) &GXFTrackState
ToolHandle< Trk::IAlignModuleTool > m_alignModuleTool
Pointer to AlignModuleTool.
int m_minTrksInVtx
requirement to the minimal number of tracks in the vertex
ToolHandle< IExtrapolator > m_extrapolator
straight line track fitter
bool operator()(VxTrackAtVertex vtxTrk)
SG::ReadCondHandleKey< InDet::BeamSpotData > m_beamSpotKey
::StatusCode StatusCode
StatusCode definition for legacy code.
bool m_doAssociatedToPVSelection
the selection mechanism that only use the tracks associated to PV
std::vector< int > m_trackTypeCounter
virtual StatusCode initialize()
bool m_doTrkSelection
to activate the preprocessor track selection
bool isAssociatedToVertex(const Track *track, const xAOD::Vertex *vertex)
void prepareAllTracksVector()
virtual StatusCode finalize()
bool m_doFullVertexConstraint
do GX full vertex constraint
int m_nFailedNormalRefits
CompareTwoTracks(const Track *track, const std::string &compareMethod)
unsigned int m_constraintMode
Ensure that the ATLAS eigen extensions are properly loaded.
bool selectVertices(const xAOD::Vertex *vtx) const
BeamspotVertexPreProcessor(const std::string &type, const std::string &name, const IInterface *parent)
Eigen::Matrix< double, 3, 1 > Vector3D
virtual ~BeamspotVertexPreProcessor()
const xAOD::Vertex * findVertexCandidate(const Track *track) const
bool m_useSingleFitter
only use 1 fitter for refitting track
Class describing a Vertex.
ToolHandle< IGlobalTrackFitter > m_trackFitter
normal track fitter
double m_PVScalingFactor
scaling factor on primary vertex position error
bool m_runOutlierRemoval
switch whether to run outlier logics or not
virtual void printSummary()
Print processing summary to logfile.
bool doBeamspotConstraintTrackSelection(const Track *track)
std::string m_PVContainerName
the name of the primary vertex container
AlignVertex is a simple structure to store objects belonging to a vertex. Contains a pointer to the o...
ToolHandle< IGlobalTrackFitter > m_SLTrackFitter
ToolHandle< InDet::IInDetTrackSelectionTool > m_BSTrackSelector
new track selector tool for tracks to be used with beam-spot constraint
AlignTrack * doTrackRefit(const Track *track)
AlignTrack is a generalization of a Trk::Track, used as the basic object to contain track information...
bool selectUpdatedVertices(const xAOD::Vertex *updatedVtx) const