CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
RoadSearchTrackCandidateMakerAlgorithm.h
Go to the documentation of this file.
1 #ifndef TrackCandidateMakerAlgorithm_h
2 #define TrackCandidateMakerAlgorithm_h
3 
4 //
5 // Package: RecoTracker/RoadSearchTrackCandidateMaker
6 // Class: RoadSearchTrackCandidateMakerAlgorithm
7 //
8 // Description: Converts cleaned clouds into
9 // TrackCandidates using the
10 // TrajectoryBuilder framework
11 //
12 // Original Author: Oliver Gutsche, gutsche@fnal.gov
13 // Created: Wed Mar 15 13:00:00 UTC 2006
14 //
15 // $Author: innocent $
16 // $Date: 2011/12/22 20:38:29 $
17 // $Revision: 1.23 $
18 //
19 
20 #include <string>
21 
25 
30 
39 
45 
50 
51 
53 {
54  public:
55 
58 
61  const edm::Event& e,
62  const edm::EventSetup& es,
64 
65  // edm::OwnVector<TrackingRecHit>
66  std::vector<TrajectoryMeasurement> FindBestHitsByDet(const TrajectoryStateOnSurface& tsosBefore,
67  const std::set<const GeomDet*>& theDets,
69 
70 
71  std::vector<TrajectoryMeasurement> FindBestHit(const TrajectoryStateOnSurface& tsosBefore,
72  const std::set<const GeomDet*>& theDets,
74 
75 
76  std::vector<TrajectoryMeasurement> FindBestHits(const TrajectoryStateOnSurface& tsosBefore,
77  const std::set<const GeomDet*>& theDets,
80 
81  // bool chooseStartingLayers( RoadSearchCloud::RecHitVector& recHits, int layer0,
82  bool chooseStartingLayers( std::vector<std::pair<const DetLayer*, RoadSearchCloud::RecHitVector > >& RecHitsByLayer,
83  std::vector<std::pair<const DetLayer*, RoadSearchCloud::RecHitVector > >::iterator ilyr0,
84  const std::multimap<int, const DetLayer*>& layer_map,
85  std::set<const DetLayer*>& good_layers,
86  std::vector<const DetLayer*>& middle_layers ,
87  RoadSearchCloud::RecHitVector& recHits_middle);
88 
89 
91  const TrackingRecHit* InnerHit,
92  const TrackingRecHit* OuterHit);
93 
95  const TrackingRecHit* InnerHit,
96  const TrackingRecHit* MiddleHit,
97  const TrackingRecHit* OuterHit);
98 
100  const TrackingRecHit* InnerHit,
101  const DetLayer* innerHitLayer);
102 
103 
104  std::vector<Trajectory> extrapolateTrajectory(const Trajectory& inputTrajectory,
105  RoadSearchCloud::RecHitVector& theLayerHits,
106  const DetLayer* innerHitLayer,
107  const TrackingRecHit* outerHit,
108  const DetLayer* outerHitLayer);
109 
110  TrackCandidateCollection PrepareTrackCandidates(std::vector<Trajectory>& theTrajectories);
111 
112  private:
114 
115  unsigned int theNumHitCut;
116  double theChi2Cut;
122 
126 
128 
130 
131  bool debug_;
133 
138 
147 
149 
150  bool lstereo[128];
151  //int nhits_l[128];
152 
153 
154 };
155 
156 #endif
std::vector< TrajectoryMeasurement > FindBestHit(const TrajectoryStateOnSurface &tsosBefore, const std::set< const GeomDet * > &theDets, edm::OwnVector< TrackingRecHit > &theHits)
FreeTrajectoryState initialTrajectory(const edm::EventSetup &es, const TrackingRecHit *InnerHit, const TrackingRecHit *OuterHit)
FreeTrajectoryState initialTrajectoryFromTriplet(const edm::EventSetup &es, const TrackingRecHit *InnerHit, const TrackingRecHit *MiddleHit, const TrackingRecHit *OuterHit)
void run(const RoadSearchCloudCollection *input, const edm::Event &e, const edm::EventSetup &es, TrackCandidateCollection &output)
Runs the algorithm.
std::vector< Trajectory > extrapolateTrajectory(const Trajectory &inputTrajectory, RoadSearchCloud::RecHitVector &theLayerHits, const DetLayer *innerHitLayer, const TrackingRecHit *outerHit, const DetLayer *outerHitLayer)
std::vector< TrackCandidate > TrackCandidateCollection
std::vector< TrajectoryMeasurement > FindBestHitsByDet(const TrajectoryStateOnSurface &tsosBefore, const std::set< const GeomDet * > &theDets, edm::OwnVector< TrackingRecHit > &theHits)
Trajectory createSeedTrajectory(FreeTrajectoryState &fts, const TrackingRecHit *InnerHit, const DetLayer *innerHitLayer)
tuple conf
Definition: dbtoconf.py:185
std::vector< TrajectoryMeasurement > FindBestHits(const TrajectoryStateOnSurface &tsosBefore, const std::set< const GeomDet * > &theDets, const SiStripRecHitMatcher *theHitMatcher, edm::OwnVector< TrackingRecHit > &theHits)
std::vector< const TrackingRecHit * > RecHitVector
bool chooseStartingLayers(std::vector< std::pair< const DetLayer *, RoadSearchCloud::RecHitVector > > &RecHitsByLayer, std::vector< std::pair< const DetLayer *, RoadSearchCloud::RecHitVector > >::iterator ilyr0, const std::multimap< int, const DetLayer * > &layer_map, std::set< const DetLayer * > &good_layers, std::vector< const DetLayer * > &middle_layers, RoadSearchCloud::RecHitVector &recHits_middle)
TrackCandidateCollection PrepareTrackCandidates(std::vector< Trajectory > &theTrajectories)
std::vector< RoadSearchCloud > RoadSearchCloudCollection