ATLAS Offline Software
IPatternParametersUpdator.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // IPatternParametersUpdator.h
7 // Main public methods for measurement updator using internal pattern
8 // recognition objects for track parameters (Trk::PatternTrackParameters)
10 // (c) ATLAS Detector software
12 
13 #ifndef TRK_IPATTERNPARAMETERSUPDATOR_H
14 #define TRK_IPATTERNPARAMETERSUPDATOR_H
15 
16 #include "GaudiKernel/IAlgTool.h"
17 
18 static const InterfaceID IID_IPatternParametersUpdator("Trk::IPatternParametersUpdator", 1, 0);
19 
20 namespace Trk {
21 
22  class PatternTrackParameters;
23  class LocalParameters;
24 
40  class IPatternParametersUpdator : virtual public IAlgTool {
41  public:
42 
43  static const InterfaceID& interfaceID( ) ;
44  // /////////////////////////////////////////////////////////////////
45  // Add and remove without Xi2 calculation
46  // /////////////////////////////////////////////////////////////////
47 
50  virtual bool addToState
52  PatternTrackParameters&) const = 0;
55  virtual bool addToState
57  PatternTrackParameters&) const = 0;
60  virtual bool addToStateOneDimension
62  PatternTrackParameters&) const = 0;
63 
64  // /////////////////////////////////////////////////////////////////
65  // Remove without Xi2 calculation
66  // /////////////////////////////////////////////////////////////////
67 
71  virtual bool removeFromState
73  PatternTrackParameters&) const = 0;
76  virtual bool removeFromState
78  PatternTrackParameters&) const = 0;
79 
80  // /////////////////////////////////////////////////////////////////
81  // Add with Xi2 calculation
82  // /////////////////////////////////////////////////////////////////
83 
86  virtual bool addToState
88  PatternTrackParameters&,double&,int&) const = 0;
91  virtual bool addToState
93  PatternTrackParameters&,double&,int&) const = 0;
96  virtual bool addToStateOneDimension
98  PatternTrackParameters&,double&,int&) const = 0;
99 
100  // /////////////////////////////////////////////////////////////////
101  // Remove with Xi2 calculation
102  // /////////////////////////////////////////////////////////////////
103 
107  virtual bool removeFromState
109  PatternTrackParameters&,double&,int&) const = 0;
113  virtual bool removeFromState
115  PatternTrackParameters&,double&,int&) const = 0;
116 
117  // /////////////////////////////////////////////////////////////////
118  // Combine two state with or without Xi2 calculation
119  // /////////////////////////////////////////////////////////////////
120 
123  virtual bool combineStates
127  virtual bool combineStates
129  double&) const = 0;
130 
131  // /////////////////////////////////////////////////////////////////
132  // Xi2 calculation
133  // /////////////////////////////////////////////////////////////////
134 
139  (const PatternTrackParameters&,const Amg::Vector2D& ,const Amg::MatrixX&,int&,double&)
140  const = 0;
145  (const PatternTrackParameters&,const LocalParameters&,const Amg::MatrixX&,int&,double&)
146  const = 0;
150  virtual bool fullStateFitQuality
151  (const PatternTrackParameters&,const Amg::Vector2D&, const Amg::MatrixX&,int&,double&)
152  const = 0;
156  virtual bool fullStateFitQuality
157  (const PatternTrackParameters&,const LocalParameters&,const Amg::MatrixX&,int&,double&)
158  const = 0;
162  (const PatternTrackParameters&,const PatternTrackParameters&,double&) const = 0;
163 
164  };
165 
166 } // end namespace
167 
169 {
170  return IID_IPatternParametersUpdator;
171 }
172 
173 #endif // TRK_IPATTERNPARAMETERSUPDATOR_H
174 
175 
Trk::LocalParameters
Definition: LocalParameters.h:98
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition: EventPrimitives.h:29
Trk::IPatternParametersUpdator::fullStateFitQuality
virtual bool fullStateFitQuality(const PatternTrackParameters &, const Amg::Vector2D &, const Amg::MatrixX &, int &, double &) const =0
calculate fit quality in terms of chi2 assuming a track state which includes information from the cur...
Trk::IPatternParametersUpdator::removeFromState
virtual bool removeFromState(PatternTrackParameters &, const LocalParameters &, const Amg::MatrixX &, PatternTrackParameters &) const =0
remove a ROT-level measurement from a track state given by pattern track pars (no chi2 calculated).
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition: GeoPrimitives.h:48
Trk::IPatternParametersUpdator::fullStateFitQuality
virtual bool fullStateFitQuality(const PatternTrackParameters &, const LocalParameters &, const Amg::MatrixX &, int &, double &) const =0
calculate fit quality in terms of chi2 assuming a track state which includes information from the cur...
Trk::IPatternParametersUpdator::addToState
virtual bool addToState(PatternTrackParameters &, const Amg::Vector2D &, const Amg::MatrixX &, PatternTrackParameters &) const =0
add a PRD-level local position to a track state given by pattern track pars (no chi2 calculated).
Trk::IPatternParametersUpdator::predictedStateFitQuality
virtual bool predictedStateFitQuality(const PatternTrackParameters &, const PatternTrackParameters &, double &) const =0
calculate fit quality in terms of chi2 between two track states.
Trk::IPatternParametersUpdator::predictedStateFitQuality
virtual bool predictedStateFitQuality(const PatternTrackParameters &, const LocalParameters &, const Amg::MatrixX &, int &, double &) const =0
calculate fit quality in terms of chi2 assuming a track state which does not include information from...
Trk::IPatternParametersUpdator::addToStateOneDimension
virtual bool addToStateOneDimension(PatternTrackParameters &, const Amg::Vector2D &, const Amg::MatrixX &, PatternTrackParameters &) const =0
add an explicitly one-dimensional measurement without chi2 calculation to pattern pars.
Trk::IPatternParametersUpdator
Interface for updating Trk::PatternTrackParameters, the fast internal representation of track paramet...
Definition: IPatternParametersUpdator.h:40
Trk::IPatternParametersUpdator::addToState
virtual bool addToState(PatternTrackParameters &, const LocalParameters &, const Amg::MatrixX &, PatternTrackParameters &, double &, int &) const =0
add a ROT-level measurement to a track state given by pattern track pars (chi2 calculated).
Trk::IPatternParametersUpdator::addToStateOneDimension
virtual bool addToStateOneDimension(PatternTrackParameters &, const Amg::Vector2D &, const Amg::MatrixX &, PatternTrackParameters &, double &, int &) const =0
add an explicitly one-dimensional measurement to pattern pars and calculate chi2 contribution.
Trk::IPatternParametersUpdator::removeFromState
virtual bool removeFromState(PatternTrackParameters &, const Amg::Vector2D &, const Amg::MatrixX &, PatternTrackParameters &) const =0
remove a PRD-level local position from a track state given by pattern track pars (no chi2 calculated)...
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::IPatternParametersUpdator::addToState
virtual bool addToState(PatternTrackParameters &, const Amg::Vector2D &, const Amg::MatrixX &, PatternTrackParameters &, double &, int &) const =0
add a PRD-level local position to a track state given by pattern track pars (chi2 calculated).
Trk::IPatternParametersUpdator::combineStates
virtual bool combineStates(PatternTrackParameters &, PatternTrackParameters &, PatternTrackParameters &) const =0
combine two track states into a resulting state.
Trk::IPatternParametersUpdator::interfaceID
static const InterfaceID & interfaceID()
Definition: IPatternParametersUpdator.h:168
Trk::IPatternParametersUpdator::removeFromState
virtual bool removeFromState(PatternTrackParameters &, const Amg::Vector2D &, const Amg::MatrixX &, PatternTrackParameters &, double &, int &) const =0
remove a PRD-level local position from a track state given by pattern track pars (chi2 calculated).
Trk::PatternTrackParameters
Definition: PatternTrackParameters.h:38
Trk::IPatternParametersUpdator::predictedStateFitQuality
virtual bool predictedStateFitQuality(const PatternTrackParameters &, const Amg::Vector2D &, const Amg::MatrixX &, int &, double &) const =0
calculate fit quality in terms of chi2 assuming a track state which does not include information from...
Trk::IPatternParametersUpdator::removeFromState
virtual bool removeFromState(PatternTrackParameters &, const LocalParameters &, const Amg::MatrixX &, PatternTrackParameters &, double &, int &) const =0
remove a ROT-level measurement from a track state given by pattern track pars (chi2 calculated).
Trk::IPatternParametersUpdator::combineStates
virtual bool combineStates(PatternTrackParameters &, PatternTrackParameters &, PatternTrackParameters &, double &) const =0
combine two track states into a resulting state and calculate chi2 contribution.
Trk::IPatternParametersUpdator::addToState
virtual bool addToState(PatternTrackParameters &, const LocalParameters &, const Amg::MatrixX &, PatternTrackParameters &) const =0
add a ROT-level measurement to a track state given by pattern track pars (no chi2 calculated).