ATLAS Offline Software
Loading...
Searching...
No Matches
IAlignResidualCalculator.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRKALIGNINTERFACES_ALIGNRESIDUALCALCULATOR_IH
6#define TRKALIGNINTERFACES_ALIGNRESIDUALCALCULATOR_IH
7
8#include "GaudiKernel/IAlgTool.h"
9#include "GaudiKernel/ToolHandle.h"
11
12#include <vector>
13
23
24namespace Trk {
25
26 class AlignTrack;
27 class Track;
28
29 class AlignTSOS;
30
31 static const InterfaceID
32 IID_TRKALIGNINTERFACES_IAlignResidualCalculator("Trk::IAlignResidualCalculator",1,0);
33
34
35 class IAlignResidualCalculator: virtual public IAlgTool {
36
37 public:
38 static const InterfaceID& interfaceID();
39
41
42 virtual StatusCode initialize() = 0;
43 virtual StatusCode finalize() = 0;
44
45 virtual double setResiduals(DataVector<AlignTSOS>* alignTSOSColl,
46 const Track* track=0) = 0;
47
48 virtual double setResiduals(AlignTrack* alignTrack,
49 const Track* track=0) = 0;
50
53 const Track* track, bool newTrack=false) = 0;
54 virtual double chi2ForMeasType(int measType) const = 0;
55
56 };
57
60
61} // end namespace
62
63#endif // TRKALIGNINTERFACES_ALIGNRESIDUALCALCULATOR_IH
An STL vector of pointers that by default owns its pointed-to elements.
AlignTSOS is a TSOS with extra variables useful for alignment.
AlignTrack is a generalization of a Trk::Track, used as the basic object to contain track information...
Derived DataVector<T>.
Definition DataVector.h:795
DataModel_detail::iterator< DataVector > iterator
Standard iterator.
Definition DataVector.h:842
static const InterfaceID & interfaceID()
virtual double chi2ForMeasType(int measType) const =0
virtual StatusCode initialize()=0
virtual StatusCode finalize()=0
virtual double setResiduals(DataVector< AlignTSOS > *alignTSOSColl, const Track *track=0)=0
virtual double setResiduals(DataVector< AlignTSOS >::iterator firstAtsos, DataVector< AlignTSOS >::iterator lastAtsos, const Track *track, bool newTrack=false)=0
virtual double setResiduals(AlignTrack *alignTrack, const Track *track=0)=0
Ensure that the ATLAS eigen extensions are properly loaded.
static const InterfaceID IID_TRKALIGNINTERFACES_IAlignResidualCalculator("Trk::IAlignResidualCalculator", 1, 0)