CMS 3D CMS Logo

LayerCollector.h
Go to the documentation of this file.
1 #ifndef TkNavigation_LayerCollector_H_
2 #define TkNavigation_LayerCollector_H_
3 
16 
17 class NavigationSchool;
18 
20 private:
23  typedef std::pair<float, float> Range;
24 
25 public:
27  const Propagator* aPropagator,
29  float dr,
30  float dz)
31  : theSchool(aSchool),
32  thePropagator(aPropagator),
33  theStartingLayerFinder{*aPropagator, *tracker},
34  theDeltaR(dr),
35  theDeltaZ(dz) {}
36 
37  std::vector<const DetLayer*> allLayers(const FTS& aFts) const;
38  std::vector<const BarrelDetLayer*> barrelLayers(const FTS& aFts) const;
39  std::vector<const ForwardDetLayer*> forwardLayers(const FTS& aFts) const;
40 
41  const Propagator* propagator() const { return thePropagator; }
42  float deltaR() const { return theDeltaR; }
43  float deltaZ() const { return theDeltaZ; }
44 
45 private:
49  float theDeltaR;
50  float theDeltaZ;
51 
52  inline bool rangesIntersect(const Range& a, const Range& b) const {
53  if (a.first > b.second || b.first > a.second)
54  return false;
55  else
56  return true;
57  }
58 };
59 
60 #endif //TR_LayerCollector_H_
Propagator.h
TrajectoryStateOnSurface.h
FreeTrajectoryState.h
LayerCollector::forwardLayers
std::vector< const ForwardDetLayer * > forwardLayers(const FTS &aFts) const
Definition: LayerCollector.cc:66
LayerCollector
Definition: LayerCollector.h:19
NavigationSchool
Definition: NavigationSchool.h:18
LayerCollector::deltaZ
float deltaZ() const
Definition: LayerCollector.h:43
LayerCollector::TSOS
TrajectoryStateOnSurface TSOS
Definition: LayerCollector.h:22
LayerCollector::barrelLayers
std::vector< const BarrelDetLayer * > barrelLayers(const FTS &aFts) const
Definition: LayerCollector.cc:54
LayerCollector::theStartingLayerFinder
const StartingLayerFinder theStartingLayerFinder
Definition: LayerCollector.h:48
Propagator
Definition: Propagator.h:44
MeasurementTracker
Definition: MeasurementTracker.h:21
LayerCollector::allLayers
std::vector< const DetLayer * > allLayers(const FTS &aFts) const
Definition: LayerCollector.cc:7
LayerCollector::Range
std::pair< float, float > Range
Definition: LayerCollector.h:23
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
LayerCollector::theDeltaR
float theDeltaR
Definition: LayerCollector.h:49
LayerCollector::FTS
FreeTrajectoryState FTS
Definition: LayerCollector.h:21
LayerCollector::propagator
const Propagator * propagator() const
Definition: LayerCollector.h:41
LayerCollector::theDeltaZ
float theDeltaZ
Definition: LayerCollector.h:50
b
double b
Definition: hdecay.h:118
LayerCollector::LayerCollector
LayerCollector(NavigationSchool const *aSchool, const Propagator *aPropagator, const MeasurementTracker *tracker, float dr, float dz)
Definition: LayerCollector.h:26
PbPb_ZMuSkimMuonDPG_cff.tracker
tracker
Definition: PbPb_ZMuSkimMuonDPG_cff.py:60
a
double a
Definition: hdecay.h:119
LayerCollector::thePropagator
const Propagator * thePropagator
Definition: LayerCollector.h:47
BarrelDetLayer.h
LayerCollector::theSchool
NavigationSchool const * theSchool
Definition: LayerCollector.h:46
FreeTrajectoryState
Definition: FreeTrajectoryState.h:27
PVValHelper::dz
Definition: PVValidationHelpers.h:51
LayerCollector::deltaR
float deltaR() const
Definition: LayerCollector.h:42
ForwardDetLayer.h
flavorHistoryFilter_cfi.dr
dr
Definition: flavorHistoryFilter_cfi.py:37
LayerCollector::rangesIntersect
bool rangesIntersect(const Range &a, const Range &b) const
Definition: LayerCollector.h:52
StartingLayerFinder.h
StartingLayerFinder
Definition: StartingLayerFinder.h:25