1 |
econte |
1.1 |
#ifndef _Tracker_TrajectorySmoother_H_
|
2 |
|
|
#define _Tracker_TrajectorySmoother_H_
|
3 |
|
|
|
4 |
|
|
#include "TrackingTools/PatternTools/interface/Trajectory.h"
|
5 |
|
|
|
6 |
|
|
/** Interface class for trajectory smoothers,
|
7 |
|
|
* i.e. objects improving a Trajectory built elsewhere.
|
8 |
|
|
*/
|
9 |
|
|
|
10 |
|
|
|
11 |
|
|
class TrajectorySmoother {
|
12 |
|
|
public:
|
13 |
|
|
|
14 |
|
|
typedef std::vector<Trajectory> TrajectoryContainer;
|
15 |
|
|
typedef TrajectoryContainer::iterator TrajectoryIterator;
|
16 |
|
|
|
17 |
|
|
virtual ~TrajectorySmoother() {}
|
18 |
|
|
|
19 |
|
|
virtual TrajectoryContainer trajectories(const Trajectory&) const = 0;
|
20 |
|
|
|
21 |
|
|
virtual TrajectorySmoother* clone() const = 0;
|
22 |
|
|
};
|
23 |
|
|
|
24 |
|
|
#endif
|