1 #ifndef CD_KFFittingSmoother_H_
2 #define CD_KFFittingSmoother_H_
23 double estimateCut = -1,
24 double logPixelProbabilityCut = -16.0,
25 int minNumberOfHits = 5,
26 bool rejectTracks =
false,
27 bool BreakTrajWith2ConsecutiveMissing =
false,
28 bool NoInvalidHitsBeginEnd =
false) :
29 theFitter(aFitter.
clone()),
30 theSmoother(aSmoother.
clone()),
31 theEstimateCut(estimateCut),
34 theLogPixelProbabilityCut( logPixelProbabilityCut ),
36 theMinNumberOfHits(minNumberOfHits),
37 rejectTracksFlag(rejectTracks),
38 breakTrajWith2ConsecutiveMissing(BreakTrajWith2ConsecutiveMissing),
39 noInvalidHitsBeginEnd(NoInvalidHitsBeginEnd) {}
45 const RecHitContainer& hits,
48 const RecHitContainer& hits, fitType
type)
const;
55 theEstimateCut,theLogPixelProbabilityCut,
56 theMinNumberOfHits,rejectTracksFlag,
57 breakTrajWith2ConsecutiveMissing,noInvalidHitsBeginEnd);
80 bool checkForNans(
const Trajectory &theTraj)
const;
84 #endif //CD_KFFittingSmoother_H_
bool breakTrajWith2ConsecutiveMissing
KFFittingSmoother(const TrajectoryFitter &aFitter, const TrajectorySmoother &aSmoother, double estimateCut=-1, double logPixelProbabilityCut=-16.0, int minNumberOfHits=5, bool rejectTracks=false, bool BreakTrajWith2ConsecutiveMissing=false, bool NoInvalidHitsBeginEnd=false)
constructor with predefined fitter and smoother and propagator
const TrajectoryFitter * theFitter
TrajectoryStateWithArbitraryError tsosWithError
KFFittingSmoother * clone() const
bool noInvalidHitsBeginEnd
const TrajectorySmoother * theSmoother
const TrajectorySmoother * smoother() const
const TrajectoryFitter * fitter() const
double theLogPixelProbabilityCut
Trajectory smoothingStep(Trajectory const &fitted) const
Unlimited (trivial) bounds.