00001
00002 #ifndef TRACKINTERFACES_ITRACKFITTER_H
00003 #define TRACKINTERFACES_ITRACKFITTER_H 1
00004
00005
00006
00007 #include <string>
00008
00009
00010 #include "GaudiKernel/IAlgTool.h"
00011
00012 class Track;
00013 class State;
00014
00015 static const InterfaceID IID_ITrackFitter ( "ITrackFitter", 1, 0 );
00016
00026 class ITrackFitter : virtual public IAlgTool {
00027 public:
00028
00029
00030 static const InterfaceID& interfaceID() { return IID_ITrackFitter; }
00031
00033 virtual StatusCode fit(Track& track) = 0;
00034
00036 virtual StatusCode fit(Track& track, const State& seed) = 0;
00037
00039 virtual StatusCode filter(Track& track, const State& seed) = 0;
00040
00042 virtual StatusCode filter(State& state, Measurement& meas) = 0;
00043
00044 };
00045 #endif // TRACKINTERFACES_ITRACKFITTER_H