CMS 3D CMS Logo

TrackMerger.h
Go to the documentation of this file.
11 
12 #include "DuplicateTrackType.h"
13 
15 public:
16  TrackMerger(const edm::ParameterSet &iConfig);
17  ~TrackMerger();
18 
19  void init(const edm::EventSetup &iSetup);
20 
21  TrackCandidate merge(const reco::Track &inner, const reco::Track &outer, DuplicateTrackType duplicateType) const;
22 
23 private:
27  bool debug_;
31 
32  void addSecondTrackHits(std::vector<const TrackingRecHit *> &hits, const reco::Track &outer) const;
33  void sortByHitPosition(const GlobalVector &v,
34  const std::vector<const TrackingRecHit *> &hits,
35  TrackCandidate::RecHitContainer &ownHits) const;
36 
38  public:
40  bool operator()(const TransientTrackingRecHit::RecHitPointer &hit1,
41  const TransientTrackingRecHit::RecHitPointer &hit2) const;
42 
43  private:
45  };
46  class MomentumSort {
47  public:
48  MomentumSort(const GlobalVector &dir, const TrackerGeometry *geometry) : dir_(dir), geom_(geometry) {}
49  bool operator()(const TrackingRecHit *hit1, const TrackingRecHit *hit2) const;
50 
51  private:
54  };
55 };
edm::ESHandle< TrackerTopology > theTrkTopo
Definition: TrackMerger.h:30
const TrackerGeometry * geom_
Definition: TrackMerger.h:53
static const char dir_[]
std::string theBuilderName
Definition: TrackMerger.h:28
int init
Definition: HydjetWrapper.h:64
GlobalMomentumSort(const GlobalVector &dir)
Definition: TrackMerger.h:39
DuplicateTrackType
bool useInnermostState_
Definition: TrackMerger.h:26
std::shared_ptr< TrackingRecHit const > RecHitPointer
#define dso_hidden
Definition: Visibility.h:12
MomentumSort(const GlobalVector &dir, const TrackerGeometry *geometry)
Definition: TrackMerger.h:48
edm::ESHandle< TransientTrackingRecHitBuilder > theBuilder
Definition: TrackMerger.h:29
edm::ESHandle< MagneticField > theMagField
Definition: TrackMerger.h:25
edm::ESHandle< TrackerGeometry > theGeometry
Definition: TrackMerger.h:24
def merge(dictlist, TELL=False)
Definition: MatrixUtil.py:194