CMS 3D CMS Logo

TrackDetectorAssociator.h
Go to the documentation of this file.
1 #ifndef TrackAssociator_TrackDetectorAssociator_h
2 #define TrackAssociator_TrackDetectorAssociator_h 1
3 
4 // -*- C++ -*-
5 //
6 // Package: TrackAssociator
7 // Class: TrackDetectorAssociator
8 //
9 /*
10 
11  Description: main class of tools to associate a track to calorimeter and muon detectors
12 
13 */
14 //
15 // Original Author: Dmytro Kovalskyi
16 // Created: Fri Apr 21 10:59:41 PDT 2006
17 //
18 //
19 
23 
29 
34 
38 
41 
43 
45 public:
46  explicit TrackDetectorAssociator();
48 
51 
66  const edm::EventSetup&,
67  const FreeTrajectoryState&,
68  const AssociatorParameters&);
72  const edm::EventSetup& iSetup,
74  const FreeTrajectoryState* innerState,
75  const FreeTrajectoryState* outerState = nullptr);
78  const edm::EventSetup&,
79  const reco::Track&,
80  const AssociatorParameters&,
81  Direction direction = Any);
84  const edm::Event&, const edm::EventSetup&, const SimTrack&, const SimVertex&, const AssociatorParameters&);
87  const edm::EventSetup&,
88  const GlobalVector&,
89  const GlobalPoint&,
90  const int,
91  const AssociatorParameters&);
94 
96  void setPropagator(const Propagator*);
97 
99  void useDefaultPropagator();
100 
105  const GlobalVector&,
106  const GlobalPoint&,
107  const int);
108 
109  static bool crossedIP(const reco::Track& track);
110 
111 private:
112  DetIdAssociator::MapRange getMapRange(const std::pair<float, float>& delta, const float dR) dso_internal;
113 
115 
117 
119 
121 
123 
125 
127 
129 
130  void getTAMuonChamberMatches(std::vector<TAMuonChamberMatch>& matches,
132 
134 
136  return math::XYZPoint(point.x(), point.y(), point.z());
137  }
138 
140  return math::XYZPoint(point.x(), point.y(), point.z());
141  }
142 
143  math::XYZVector getVector(const GlobalVector& vec) dso_internal { return math::XYZVector(vec.x(), vec.y(), vec.z()); }
144 
145  math::XYZVector getVector(const LocalVector& vec) dso_internal { return math::XYZVector(vec.x(), vec.y(), vec.z()); }
146 
148  std::unique_ptr<Propagator> defProp_;
151 
158 
161 
163 };
164 #endif
Vector3DBase
Definition: Vector3DBase.h:8
Propagator.h
TrackDetectorAssociator::crossedIP
static bool crossedIP(const reco::Track &track)
Definition: TrackDetectorAssociator.cc:1056
BeamSpotPI::parameters
parameters
Definition: BeamSpotPayloadInspectorHelper.h:29
Visibility.h
TrackDetectorAssociator::Any
Definition: TrackDetectorAssociator.h:50
HLT_FULL_cff.track
track
Definition: HLT_FULL_cff.py:11776
SimVertex
Definition: SimVertex.h:5
edm::ESWatcher< IdealMagneticFieldRecord >
TrackDetectorAssociator::TrackDetectorAssociator
TrackDetectorAssociator()
Definition: TrackDetectorAssociator.cc:69
TrackDetectorAssociator::getPoint
math::XYZPoint getPoint(const LocalPoint &point)
Definition: TrackDetectorAssociator.h:139
TrackBase.h
TrackDetectorAssociator::useDefaultPropagator
void useDefaultPropagator()
use the default propagator
Definition: TrackDetectorAssociator.cc:81
RecSegment
Definition: RecSegment.h:27
TrackDetectorAssociator::getVector
math::XYZVector getVector(const GlobalVector &vec)
Definition: TrackDetectorAssociator.h:143
TrackDetectorAssociator::addTAMuonSegmentMatch
bool addTAMuonSegmentMatch(TAMuonChamberMatch &, const RecSegment *, const AssociatorParameters &)
Definition: TrackDetectorAssociator.cc:791
TrackDetectorAssociator::fillCaloTruth
void fillCaloTruth(const edm::Event &, TrackDetMatchInfo &, const AssociatorParameters &)
Definition: TrackDetectorAssociator.cc:888
info
static const TGPicture * info(bool iBackgroundIsBlack)
Definition: FWCollectionSummaryWidget.cc:153
TrackDetectorAssociator::defProp_
std::unique_ptr< Propagator > defProp_
Definition: TrackDetectorAssociator.h:148
TrackDetectorAssociator::fillHcal
void fillHcal(const edm::Event &, TrackDetMatchInfo &, const AssociatorParameters &)
Definition: TrackDetectorAssociator.cc:392
TrackDetectorAssociator::ecalDetIdAssociator_
const DetIdAssociator * ecalDetIdAssociator_
Definition: TrackDetectorAssociator.h:152
TrackDetectorAssociator::fillCaloTowers
void fillCaloTowers(const edm::Event &, TrackDetMatchInfo &, const AssociatorParameters &)
Definition: TrackDetectorAssociator.cc:295
TrackDetectorAssociator::getCachedTrajector
const CachedTrajectory & getCachedTrajector() const
trajector information
Definition: TrackDetectorAssociator.h:93
Propagator
Definition: Propagator.h:44
TrackDetectorAssociator::AssociatorParameters
TrackAssociatorParameters AssociatorParameters
Definition: TrackDetectorAssociator.h:49
CaloGeometry
Definition: CaloGeometry.h:21
Track.h
TrackDetectorAssociator::ivProp_
const Propagator * ivProp_
Definition: TrackDetectorAssociator.h:147
GlobalTrackingGeometry
Definition: GlobalTrackingGeometry.h:20
SimVertex.h
reco::Track
Definition: Track.h:27
IdealMagneticFieldRecord.h
TrackDetectorAssociator::hcalDetIdAssociator_
const DetIdAssociator * hcalDetIdAssociator_
Definition: TrackDetectorAssociator.h:153
TrackDetectorAssociator::OutsideIn
Definition: TrackDetectorAssociator.h:50
Point3DBase< float, GlobalTag >
TrackDetectorAssociator::setPropagator
void setPropagator(const Propagator *)
use a user configured propagator
Definition: TrackDetectorAssociator.cc:76
TrackDetectorAssociator::getTAMuonChamberMatches
void getTAMuonChamberMatches(std::vector< TAMuonChamberMatch > &matches, const AssociatorParameters &parameters)
Definition: TrackDetectorAssociator.cc:592
DetIdAssociator
Definition: DetIdAssociator.h:45
TrackDetectorAssociator::~TrackDetectorAssociator
~TrackDetectorAssociator()
math::XYZPoint
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
TrackDetectorAssociator::init
void init(const edm::EventSetup &, const AssociatorParameters &)
Definition: TrackDetectorAssociator.cc:83
Event.h
TrackDetectorAssociator::fillMuon
void fillMuon(const edm::Event &, TrackDetMatchInfo &, const AssociatorParameters &)
Definition: TrackDetectorAssociator.cc:693
TrackDetectorAssociator::getFreeTrajectoryState
static FreeTrajectoryState getFreeTrajectoryState(const MagneticField *, const reco::Track &)
get FreeTrajectoryState from different track representations
Definition: TrackDetectorAssociator.cc:553
DetIdAssociator::MapRange
Definition: DetIdAssociator.h:48
dso_internal
#define dso_internal
Definition: Visibility.h:13
dumpMFGeometry_cfg.delta
delta
Definition: dumpMFGeometry_cfg.py:25
TrackDetectorAssociator::hoDetIdAssociator_
const DetIdAssociator * hoDetIdAssociator_
Definition: TrackDetectorAssociator.h:154
TrackDetectorAssociator
Definition: TrackDetectorAssociator.h:44
math::XYZVector
XYZVectorD XYZVector
spatial vector with cartesian internal representation
Definition: Vector3D.h:31
TrackDetectorAssociator::getVector
math::XYZVector getVector(const LocalVector &vec)
Definition: TrackDetectorAssociator.h:145
TrackDetectorAssociator::muonDetIdAssociator_
const DetIdAssociator * muonDetIdAssociator_
Definition: TrackDetectorAssociator.h:156
iEvent
int iEvent
Definition: GenABIO.cc:224
TrackDetectorAssociator::getPoint
math::XYZPoint getPoint(const GlobalPoint &point)
Definition: TrackDetectorAssociator.h:135
MagneticField.h
edm::EventSetup
Definition: EventSetup.h:57
TrackDetectorAssociator::theTrackingGeometry_
const GlobalTrackingGeometry * theTrackingGeometry_
Definition: TrackDetectorAssociator.h:160
Direction
TrackDetectorAssociator::InsideOut
Definition: TrackDetectorAssociator.h:50
CachedTrajectory
Definition: CachedTrajectory.h:44
EcalRecHit.h
TAMuonChamberMatch
Definition: TAMuonChamberMatch.h:20
TrackDetectorAssociator::Direction
Direction
Definition: TrackDetectorAssociator.h:50
TrackDetMatchInfo
Definition: TrackDetMatchInfo.h:13
TrackDetectorAssociator::fillPreshower
void fillPreshower(const edm::Event &iEvent, TrackDetMatchInfo &info, const AssociatorParameters &)
Definition: TrackDetectorAssociator.cc:369
TrackDetectorAssociator::fillEcal
void fillEcal(const edm::Event &, TrackDetMatchInfo &, const AssociatorParameters &)
Definition: TrackDetectorAssociator.cc:221
TrackDetectorAssociator::preshowerDetIdAssociator_
const DetIdAssociator * preshowerDetIdAssociator_
Definition: TrackDetectorAssociator.h:157
FreeTrajectoryState
Definition: FreeTrajectoryState.h:27
TrackDetectorAssociator::theMagneticFieldWatcher_
edm::ESWatcher< IdealMagneticFieldRecord > theMagneticFieldWatcher_
Definition: TrackDetectorAssociator.h:162
SimTrack
Definition: SimTrack.h:6
ESWatcher.h
DetIdAssociator.h
TrackDetectorAssociator::caloDetIdAssociator_
const DetIdAssociator * caloDetIdAssociator_
Definition: TrackDetectorAssociator.h:155
TrackDetectorAssociator::theCaloGeometry_
const CaloGeometry * theCaloGeometry_
Definition: TrackDetectorAssociator.h:159
CaloGeometry.h
TrackDetectorAssociator::getMapRange
DetIdAssociator::MapRange getMapRange(const std::pair< float, float > &delta, const float dR)
Definition: TrackDetectorAssociator.cc:572
EventSetup.h
TrackDetectorAssociator::useDefaultPropagator_
bool useDefaultPropagator_
Definition: TrackDetectorAssociator.h:150
patCandidatesForDimuonsSequences_cff.matches
matches
Definition: patCandidatesForDimuonsSequences_cff.py:131
TrackDetectorAssociator::cachedTrajectory_
CachedTrajectory cachedTrajectory_
Definition: TrackDetectorAssociator.h:149
TrackDetectorAssociator::associate
TrackDetMatchInfo associate(const edm::Event &, const edm::EventSetup &, const FreeTrajectoryState &, const AssociatorParameters &)
Definition: TrackDetectorAssociator.cc:110
SimTrack.h
HGC3DClusterGenMatchSelector_cfi.dR
dR
Definition: HGC3DClusterGenMatchSelector_cfi.py:7
CachedTrajectory.h
point
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5
edm::Event
Definition: Event.h:73
MagneticField
Definition: MagneticField.h:19
RecSegment.h
TrackAssociatorParameters.h
TrackDetMatchInfo.h
TrackDetectorAssociator::fillHO
void fillHO(const edm::Event &, TrackDetMatchInfo &, const AssociatorParameters &)
Definition: TrackDetectorAssociator.cc:460
TrackAssociatorParameters
Definition: TrackAssociatorParameters.h:43