CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CkfTrajectoryBuilder.h
Go to the documentation of this file.
1 #ifndef CkfTrajectoryBuilder_H
2 #define CkfTrajectoryBuilder_H
3 
4 #include <vector>
5 
6 class Propagator;
9 class TrajectorySeed;
11 class TrajectoryFilter;
12 
17 
21 
23 
27 
28 #include <map>
29 #include <boost/unordered_map.hpp>
30 
32 class TrajectoryFilter;
33 
35 
36 public:
37 
38  typedef std::vector<Trajectory> TrajectoryContainer;
39  typedef std::vector<TempTrajectory> TempTrajectoryContainer;
40 
42  const TrajectoryStateUpdator* updator,
43  const Propagator* propagatorAlong,
44  const Propagator* propagatorOpposite,
45  const Chi2MeasurementEstimatorBase* estimator,
46  const TransientTrackingRecHitBuilder* recHitBuilder,
47  const MeasurementTracker* measurementTracker,
48  const TrajectoryFilter* filter);
49 
51 
53  virtual TrajectoryContainer trajectories(const TrajectorySeed& seed) const;
55  virtual void trajectories(const TrajectorySeed& seed, TrajectoryContainer &ret) const;
56 
58  // virtual void setEvent(const edm::Event& event) const;
59 
60 
61 
62  protected:
63  int theMaxCand;
69 
70 
71  protected:
72  virtual void findCompatibleMeasurements( const TempTrajectory& traj, std::vector<TrajectoryMeasurement> & result) const;
73 
74  void limitedCandidates( TempTrajectory& startingTraj, TrajectoryContainer& result) const;
76 
77  void updateTrajectory( TempTrajectory& traj, const TM& tm) const;
78 
79  /*
80  //not mature for integration.
81  bool theSharedSeedCheck;
82  std::string theUniqueName;
83  void rememberSeedAndTrajectories(const TrajectorySeed& seed,TrajectoryContainer &result) const;
84  bool seedAlreadyUsed(const TrajectorySeed& seed,TempTrajectoryContainer &candidates) const;
85  bool sharedSeed(const TrajectorySeed& seed1,const TrajectorySeed& seed2) const;
86  // mutable TempTrajectoryContainer theCachedTrajectories;
87  typedef boost::unordered_multimap<uint32_t,TempTrajectory> SharedTrajectory;
88  mutable SharedTrajectory theCachedTrajectories;
89  */
90 };
91 
92 #endif
std::vector< Trajectory > TrajectoryContainer
std::vector< TempTrajectory > TempTrajectoryContainer
tuple result
Definition: query.py:137
virtual void findCompatibleMeasurements(const TempTrajectory &traj, std::vector< TrajectoryMeasurement > &result) const
CkfTrajectoryBuilder(const edm::ParameterSet &conf, const TrajectoryStateUpdator *updator, const Propagator *propagatorAlong, const Propagator *propagatorOpposite, const Chi2MeasurementEstimatorBase *estimator, const TransientTrackingRecHitBuilder *recHitBuilder, const MeasurementTracker *measurementTracker, const TrajectoryFilter *filter)
void limitedCandidates(TempTrajectory &startingTraj, TrajectoryContainer &result) const
tuple conf
Definition: dbtoconf.py:185
void updateTrajectory(TempTrajectory &traj, const TM &tm) const
virtual TrajectoryContainer trajectories(const TrajectorySeed &seed) const
trajectories building starting from a seed
std::vector< TempTrajectory > TempTrajectoryContainer
int theMaxCand
set Event for the internal MeasurementTracker data member
std::vector< Trajectory > TrajectoryContainer