CMS 3D CMS Logo

TrajectorySmoother.h
Go to the documentation of this file.
1 #ifndef _Tracker_TrajectorySmoother_H_
2 #define _Tracker_TrajectorySmoother_H_
3 
5 
6 class TkCloner;
7 
12 public:
13  typedef std::vector<Trajectory> TrajectoryContainer;
14  typedef TrajectoryContainer::iterator TrajectoryIterator;
15 
16  virtual ~TrajectorySmoother() {}
17 
18  virtual TrajectoryContainer trajectories(const Trajectory& traj) const {
19  Trajectory&& nt = trajectory(traj);
20  if (nt.isValid())
21  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  // FIXME a prototype: final inplementaiton may differ
28  virtual void setHitCloner(TkCloner const*) = 0;
29 };
30 
31 #endif
TrajectorySmoother::TrajectoryContainer
std::vector< Trajectory > TrajectoryContainer
Definition: TrajectorySmoother.h:13
TrajectorySmoother::TrajectoryIterator
TrajectoryContainer::iterator TrajectoryIterator
Definition: TrajectorySmoother.h:14
TrajectorySmoother::clone
virtual TrajectorySmoother * clone() const =0
nt
int nt
Definition: AMPTWrapper.h:42
TrajectorySmoother::trajectory
virtual Trajectory trajectory(const Trajectory &) const =0
TrajectorySmoother::~TrajectorySmoother
virtual ~TrajectorySmoother()
Definition: TrajectorySmoother.h:16
TrajectorySmoother::trajectories
virtual TrajectoryContainer trajectories(const Trajectory &traj) const
Definition: TrajectorySmoother.h:18
TrajectorySmoother
Definition: TrajectorySmoother.h:11
TkCloner
Definition: TkCloner.h:16
Trajectory.h
eostools.move
def move(src, dest)
Definition: eostools.py:511
Trajectory
Definition: Trajectory.h:38
TrajectorySmoother::setHitCloner
virtual void setHitCloner(TkCloner const *)=0