CMS 3D CMS Logo

StartingLayerFinder.h
Go to the documentation of this file.
1 #ifndef TkNavigation_StartingLayerFinder_H_
2 #define TkNavigation_StartingLayerFinder_H_
3 
7 
17 
18 #include <vector>
19 
26 
28 private:
31  typedef std::pair<float, float> Range;
32 
33 public:
35  :
36 
37  thePropagator(aPropagator),
40  theFirstPixelBarrelLayer(nullptr),
43 
45 
46  std::vector<const DetLayer*> startingLayers(const FTS& aFts, float dr, float dz) const;
47 
48  std::vector<const DetLayer*> startingLayers(const TrajectorySeed& aSeed) const;
49 
51  const std::vector<const ForwardDetLayer*> firstNegPixelFwdLayer() const;
52  const std::vector<const ForwardDetLayer*> firstPosPixelFwdLayer() const;
53 
54  const Propagator* propagator() const { return thePropagator; }
55 
56 private:
59  mutable bool thePixelLayersValid;
61  mutable std::vector<const ForwardDetLayer*> theFirstNegPixelFwdLayer;
62  mutable std::vector<const ForwardDetLayer*> theFirstPosPixelFwdLayer;
63 
64  void checkPixelLayers() const;
65 
66  inline bool rangesIntersect(const Range& a, const Range& b) const {
67  if (a.first > b.second || b.first > a.second)
68  return false;
69  else
70  return true;
71  }
72 };
73 #endif //TR_StartingLayerFinder_H_
Propagator.h
TrajectoryStateOnSurface.h
StartingLayerFinder::theFirstPixelBarrelLayer
const BarrelDetLayer * theFirstPixelBarrelLayer
Definition: StartingLayerFinder.h:60
FreeTrajectoryState.h
funct::false
false
Definition: Factorize.h:34
StartingLayerFinder::firstNegPixelFwdLayer
const std::vector< const ForwardDetLayer * > firstNegPixelFwdLayer() const
Definition: StartingLayerFinder.cc:112
StartingLayerFinder::TSOS
TrajectoryStateOnSurface TSOS
Definition: StartingLayerFinder.h:30
StartingLayerFinder::thePixelLayersValid
bool thePixelLayersValid
Definition: StartingLayerFinder.h:59
StartingLayerFinder::theFirstNegPixelFwdLayer
std::vector< const ForwardDetLayer * > theFirstNegPixelFwdLayer
Definition: StartingLayerFinder.h:61
Propagator
Definition: Propagator.h:44
MeasurementTracker
Definition: MeasurementTracker.h:21
GeometricSearchTracker.h
StartingLayerFinder::propagator
const Propagator * propagator() const
Definition: StartingLayerFinder.h:54
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
StartingLayerFinder::thePropagator
const Propagator * thePropagator
Definition: StartingLayerFinder.h:57
StartingLayerFinder::theMeasurementTracker
const MeasurementTracker * theMeasurementTracker
Definition: StartingLayerFinder.h:58
StartingLayerFinder::Range
std::pair< float, float > Range
Definition: StartingLayerFinder.h:31
b
double b
Definition: hdecay.h:118
StartingLayerFinder::rangesIntersect
bool rangesIntersect(const Range &a, const Range &b) const
Definition: StartingLayerFinder.h:66
PbPb_ZMuSkimMuonDPG_cff.tracker
tracker
Definition: PbPb_ZMuSkimMuonDPG_cff.py:60
a
double a
Definition: hdecay.h:119
Event.h
StartingLayerFinder::firstPixelBarrelLayer
const BarrelDetLayer * firstPixelBarrelLayer() const
Definition: StartingLayerFinder.cc:107
BarrelDetLayer.h
StartingLayerFinder::firstPosPixelFwdLayer
const std::vector< const ForwardDetLayer * > firstPosPixelFwdLayer() const
Definition: StartingLayerFinder.cc:117
TrajectorySeedCollection.h
BarrelDetLayer
Definition: BarrelDetLayer.h:22
StartingLayerFinder::FTS
FreeTrajectoryState FTS
Definition: StartingLayerFinder.h:29
StartingLayerFinder::~StartingLayerFinder
~StartingLayerFinder()
Definition: StartingLayerFinder.h:44
FreeTrajectoryState
Definition: FreeTrajectoryState.h:27
PVValHelper::dz
Definition: PVValidationHelpers.h:50
ForwardDetLayer.h
flavorHistoryFilter_cfi.dr
dr
Definition: flavorHistoryFilter_cfi.py:37
DetLayer.h
TrajectorySeed
Definition: TrajectorySeed.h:17
EventSetup.h
PTrajectoryStateOnDet
Definition: PTrajectoryStateOnDet.h:10
ParameterSet.h
StartingLayerFinder::StartingLayerFinder
StartingLayerFinder(const Propagator *aPropagator, const MeasurementTracker *tracker)
Definition: StartingLayerFinder.h:34
StartingLayerFinder::checkPixelLayers
void checkPixelLayers() const
Definition: StartingLayerFinder.cc:122
StartingLayerFinder::startingLayers
std::vector< const DetLayer * > startingLayers(const FTS &aFts, float dr, float dz) const
Definition: StartingLayerFinder.cc:18
StartingLayerFinder
Definition: StartingLayerFinder.h:27
MeasurementTracker.h
StartingLayerFinder::theFirstPosPixelFwdLayer
std::vector< const ForwardDetLayer * > theFirstPosPixelFwdLayer
Definition: StartingLayerFinder.h:62