CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TrajectorySmoother.h
Go to the documentation of this file.
1 #ifndef _Tracker_TrajectorySmoother_H_
2 #define _Tracker_TrajectorySmoother_H_
3 
6 
7 
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& traj) const {
20  Trajectory && nt = trajectory(traj);
21  if (nt.isValid()) return TrajectoryContainer(1,std::move(nt));
22  return TrajectoryContainer();
23  }
24  virtual Trajectory trajectory(const Trajectory&) const =0;
25 
26  virtual TrajectorySmoother* clone() const = 0;
27 };
28 
29 #endif
virtual TrajectoryContainer trajectories(const Trajectory &traj) const
virtual TrajectorySmoother * clone() const =0
virtual Trajectory trajectory(const Trajectory &) const =0
int nt
Definition: AMPTWrapper.h:32
bool isValid() const
Definition: Trajectory.h:271
TrajectoryContainer::iterator TrajectoryIterator
std::vector< Trajectory > TrajectoryContainer