CMS 3D CMS Logo

TIDRing.h
Go to the documentation of this file.
1 #ifndef TkDetLayers_TIDRing_h
2 #define TkDetLayers_TIDRing_h
3 
6 #include "SubLayerCrossings.h"
8 
12 #pragma GCC visibility push(hidden)
13 class TIDRing final : public GeometricSearchDet {
14 public:
15  TIDRing(std::vector<const GeomDet*>& innerDets, std::vector<const GeomDet*>& outerDets);
16  ~TIDRing() override;
17 
18  // GeometricSearchDet interface
19  const BoundSurface& surface() const override { return *theDisk; }
20 
21  const std::vector<const GeomDet*>& basicComponents() const override { return theDets; }
22 
23  const std::vector<const GeometricSearchDet*>& components() const override __attribute__((cold));
24 
27  const MeasurementEstimator&) const override;
28 
30  const Propagator& prop,
32  std::vector<DetGroup>& result) const override __attribute__((hot));
33 
34  //Extension of interface
35  virtual const BoundDisk& specificSurface() const { return *theDisk; }
36 
37 private:
38  // private methods for the implementation of groupedCompatibleDets()
39 
41  __attribute__((hot));
42 
43  bool addClosest(const TrajectoryStateOnSurface& tsos,
44  const Propagator& prop,
45  const MeasurementEstimator& est,
46  const SubLayerCrossing& crossing,
47  std::vector<DetGroup>& result) const __attribute__((hot));
48 
50  const Propagator& prop,
51  const MeasurementEstimator& est,
52  const SubLayerCrossing& crossing,
53  float window,
54  std::vector<DetGroup>& result,
55  bool checkClosest) const __attribute__((hot));
56 
57  const std::vector<const GeomDet*>& subLayer(int ind) const { return (ind == 0 ? theFrontDets : theBackDets); }
58 
59 private:
60  std::vector<const GeomDet*> theDets;
61  std::vector<const GeomDet*> theFrontDets;
62  std::vector<const GeomDet*> theBackDets;
63 
67 
69 
72 };
73 
74 #pragma GCC visibility pop
75 #endif
MeasurementEstimator
Definition: MeasurementEstimator.h:19
TIDRing::TIDRing
TIDRing(std::vector< const GeomDet * > &innerDets, std::vector< const GeomDet * > &outerDets)
Definition: TIDRing.cc:24
PeriodicBinFinderInPhi.h
TIDRing::theDisk
ReferenceCountingPointer< BoundDisk > theDisk
Definition: TIDRing.h:64
TIDRing::theBackDets
std::vector< const GeomDet * > theBackDets
Definition: TIDRing.h:62
BoundDisk.h
TIDRing::subLayer
const std::vector< const GeomDet * > & subLayer(int ind) const
Definition: TIDRing.h:57
TIDRing::specificSurface
virtual const BoundDisk & specificSurface() const
Definition: TIDRing.h:35
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
TIDRing::addClosest
bool addClosest(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubLayerCrossing &crossing, std::vector< DetGroup > &result) const __attribute__((hot))
Definition: TIDRing.cc:132
Surface
Definition: Surface.h:36
TIDRing::theBackDisk
ReferenceCountingPointer< BoundDisk > theBackDisk
Definition: TIDRing.h:66
TIDRing::computeCrossings
SubLayerCrossings computeCrossings(const TrajectoryStateOnSurface &tsos, PropagationDirection propDir) const __attribute__((hot))
Definition: TIDRing.cc:95
TIDRing::theFrontDets
std::vector< const GeomDet * > theFrontDets
Definition: TIDRing.h:61
ReferenceCountingPointer< BoundDisk >
watchdog.const
const
Definition: watchdog.py:83
TIDRing::theDets
std::vector< const GeomDet * > theDets
Definition: TIDRing.h:60
TIDRing::components
const std::vector< const GeometricSearchDet * > & components() const override __attribute__((cold))
Returns basic components, if any.
Definition: TIDRing.cc:57
BoundDisk
TIDRing::groupedCompatibleDetsV
void groupedCompatibleDetsV(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) const override __attribute__((hot))
Definition: TIDRing.cc:68
SubLayerCrossings.h
TIDRing::compatible
std::pair< bool, TrajectoryStateOnSurface > compatible(const TrajectoryStateOnSurface &, const Propagator &, const MeasurementEstimator &) const override
Definition: TIDRing.cc:61
Propagator
Definition: Propagator.h:44
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
TIDRing::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: TIDRing.cc:142
TIDRing::surface
const BoundSurface & surface() const override
The surface of the GeometricSearchDet.
Definition: TIDRing.h:19
TIDRing::theBackBinFinder
BinFinderType theBackBinFinder
Definition: TIDRing.h:71
TIDRing::basicComponents
const std::vector< const GeomDet * > & basicComponents() const override
Definition: TIDRing.h:21
__attribute__
float __attribute__((vector_size(8))) cms_float32x2_t
Definition: ExtVec.h:12
TIDRing::theFrontDisk
ReferenceCountingPointer< BoundDisk > theFrontDisk
Definition: TIDRing.h:65
TIDRing
Definition: TIDRing.h:13
std
Definition: JetResolutionObject.h:76
TIDRing::~TIDRing
~TIDRing() override
Definition: TIDRing.cc:55
PeriodicBinFinderInPhi< float >
PropagationDirection
PropagationDirection
Definition: PropagationDirection.h:4
SubLayerCrossing
Definition: SubLayerCrossings.h:7
DetGroup
Definition: DetGroup.h:41
mps_fire.result
result
Definition: mps_fire.py:303
GeometricSearchDet
Definition: GeometricSearchDet.h:17
TIDRing::theFrontBinFinder
BinFinderType theFrontBinFinder
Definition: TIDRing.h:70
TIDRing::BinFinderType
PeriodicBinFinderInPhi< float > BinFinderType
Definition: TIDRing.h:68
SubLayerCrossings
Definition: SubLayerCrossings.h:22