CMS 3D CMS Logo

TOBRod.h
Go to the documentation of this file.
1 #ifndef TkDetLayers_TOBRod_h
2 #define TkDetLayers_TOBRod_h
3 
7 #include "SubLayerCrossings.h"
8 
13 #pragma GCC visibility push(hidden)
14 class TOBRod final : public DetRod {
15 public:
17 
18  TOBRod(std::vector<const GeomDet*>& innerDets, std::vector<const GeomDet*>& outerDets) __attribute__((cold));
19  ~TOBRod() override __attribute__((cold));
20 
21  // GeometricSearchDet interface
22 
23  const std::vector<const GeomDet*>& basicComponents() const override { return theDets; }
24 
25  const std::vector<const GeometricSearchDet*>& components() const override __attribute__((cold));
26 
30  __attribute__((cold));
31 
33  const Propagator& prop,
35  std::vector<DetGroup>& result) const override __attribute__((hot));
36 
37 private:
38  // private methods for the implementation of groupedCompatibleDets()
39 
41  __attribute__((hot));
42 
44  const Propagator& prop,
46  const SubLayerCrossing& crossing,
48 
49  float computeWindowSize(const GeomDet* det,
52 
54  const Propagator& prop,
56  const SubLayerCrossing& crossing,
57  float window,
59  bool checkClosest) const __attribute__((hot));
60 
61  const std::vector<const GeomDet*>& subRod(int ind) const { return (ind == 0 ? theInnerDets : theOuterDets); }
62 
63 private:
64  std::vector<const GeomDet*> theDets;
65  std::vector<const GeomDet*> theInnerDets;
66  std::vector<const GeomDet*> theOuterDets;
67 
70 
73 };
74 
75 #pragma GCC visibility pop
76 #endif
MeasurementEstimator
Definition: MeasurementEstimator.h:19
TOBRod::theOuterDets
std::vector< const GeomDet * > theOuterDets
Definition: TOBRod.h:66
TOBRod::theInnerPlane
ReferenceCountingPointer< Plane > theInnerPlane
Definition: TOBRod.h:68
GeomDet
Definition: GeomDet.h:27
TOBRod::BinFinderType
PeriodicBinFinderInZ< float > BinFinderType
Definition: TOBRod.h:16
TOBRod::compatible
std::pair< bool, TrajectoryStateOnSurface > compatible(const TrajectoryStateOnSurface &ts, const Propagator &, const MeasurementEstimator &) const override __attribute__((cold))
Definition: TOBRod.cc:62
svgfig.window
def window(xmin, xmax, ymin, ymax, x=0, y=0, width=100, height=100, xlogbase=None, ylogbase=None, minusInfinity=-1000, flipx=False, flipy=True)
Definition: svgfig.py:643
GeometricSearchDet.h
TOBRod::theInnerDets
std::vector< const GeomDet * > theInnerDets
Definition: TOBRod.h:65
ReferenceCountingPointer< Plane >
TOBRod::groupedCompatibleDetsV
void groupedCompatibleDetsV(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) const override __attribute__((hot))
Definition: TOBRod.cc:69
TOBRod::components
const std::vector< const GeometricSearchDet * > & components() const override __attribute__((cold))
Returns basic components, if any.
Definition: TOBRod.cc:58
watchdog.const
const
Definition: watchdog.py:83
SubLayerCrossings.h
TOBRod
Definition: TOBRod.h:14
Propagator
Definition: Propagator.h:44
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
PeriodicBinFinderInZ.h
DetRod
Definition: DetRod.h:13
TOBRod::theOuterBinFinder
BinFinderType theOuterBinFinder
Definition: TOBRod.h:72
TOBRod::theInnerBinFinder
BinFinderType theInnerBinFinder
Definition: TOBRod.h:71
__attribute__
float __attribute__((vector_size(8))) cms_float32x2_t
Definition: ExtVec.h:12
TOBRod::~TOBRod
~TOBRod() override __attribute__((cold))
Definition: TOBRod.cc:56
TOBRod::computeWindowSize
float computeWindowSize(const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est) const __attribute__((hot))
Definition: TOBRod.cc:147
TOBRod::subRod
const std::vector< const GeomDet * > & subRod(int ind) const
Definition: TOBRod.h:61
trackerHitRTTI::vector
Definition: trackerHitRTTI.h:21
TOBRod::theDets
std::vector< const GeomDet * > theDets
Definition: TOBRod.h:64
TOBRod::computeCrossings
SubLayerCrossings computeCrossings(const TrajectoryStateOnSurface &tsos, PropagationDirection propDir) const __attribute__((hot))
Definition: TOBRod.cc:105
TOBRod::TOBRod
TOBRod(std::vector< const GeomDet * > &innerDets, std::vector< const GeomDet * > &outerDets) __attribute__((cold))
Definition: TOBRod.cc:25
DetRod.h
std
Definition: JetResolutionObject.h:76
TOBRod::basicComponents
const std::vector< const GeomDet * > & basicComponents() const override
Definition: TOBRod.h:23
PropagationDirection
PropagationDirection
Definition: PropagationDirection.h:4
TOBRod::searchNeighbors
void searchNeighbors(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, float window, std::vector< DetGroup > &result, bool checkClosest) const __attribute__((hot))
Definition: TOBRod.cc:178
TOBRod::addClosest
bool addClosest(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, std::vector< DetGroup > &result) const __attribute__((hot))
Definition: TOBRod.cc:138
SubLayerCrossing
Definition: SubLayerCrossings.h:7
DetGroup
Definition: DetGroup.h:41
mps_fire.result
result
Definition: mps_fire.py:311
PeriodicBinFinderInZ< float >
TOBRod::theOuterPlane
ReferenceCountingPointer< Plane > theOuterPlane
Definition: TOBRod.h:69
SubLayerCrossings
Definition: SubLayerCrossings.h:22