CMS 3D CMS Logo

PixelForwardLayer.h
Go to the documentation of this file.
1 #ifndef TkDetLayers_PixelForwardLayer_h
2 #define TkDetLayers_PixelForwardLayer_h
3 
5 #include "PixelBlade.h"
7 
12 #pragma GCC visibility push(hidden)
13 class PixelForwardLayer final : public ForwardDetLayer {
14 public:
15  PixelForwardLayer(std::vector<const PixelBlade*>& blades);
16  ~PixelForwardLayer() override;
17 
18  // GeometricSearchDet interface
19 
20  const std::vector<const GeomDet*>& basicComponents() const override { return theBasicComps; }
21 
22  const std::vector<const GeometricSearchDet*>& components() const override __attribute__((cold)) { return theComps; }
23 
25  const Propagator& prop,
26  const MeasurementEstimator& est,
27  std::vector<DetGroup>& result) const override __attribute__((hot));
28 
29  // DetLayer interface
31 
32 private:
33  // methods for groupedCompatibleDets implementation
34  static int computeHelicity(const GeometricSearchDet* firstBlade, const GeometricSearchDet* secondBlade);
35 
38  SubTurbineCrossings(int ci, int ni, float nd) : isValid(true), closestIndex(ci), nextIndex(ni), nextDistance(nd) {}
39 
40  bool isValid;
42  int nextIndex;
43  float nextDistance;
44  };
45 
47  const Propagator& prop,
48  const MeasurementEstimator& est,
49  const SubTurbineCrossings& crossings,
50  float window,
51  std::vector<DetGroup>& result) const __attribute__((hot));
52 
54  PropagationDirection propDir) const __attribute__((hot));
55 
56  static float computeWindowSize(const GeomDet* det,
57  const TrajectoryStateOnSurface& tsos,
58  const MeasurementEstimator& est);
59 
60 private:
63 
64  std::vector<const GeometricSearchDet*> theComps;
65  std::vector<const GeomDet*> theBasicComps;
66 };
67 
68 #pragma GCC visibility pop
69 #endif
GeomDetEnumerators::SubDetector
SubDetector
Definition: GeomDetEnumerators.h:10
MeasurementEstimator
Definition: MeasurementEstimator.h:19
nvidia::inferenceserver
Definition: TritonData.cc:14
PixelForwardLayer::SubTurbineCrossings::SubTurbineCrossings
SubTurbineCrossings()
Definition: PixelForwardLayer.h:37
PeriodicBinFinderInPhi.h
funct::false
false
Definition: Factorize.h:29
GeomDet
Definition: GeomDet.h:27
f
double f[11][100]
Definition: MuScleFitUtils.cc:78
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
PixelForwardLayer::SubTurbineCrossings::closestIndex
int closestIndex
Definition: PixelForwardLayer.h:41
PixelForwardLayer::computeHelicity
static int computeHelicity(const GeometricSearchDet *firstBlade, const GeometricSearchDet *secondBlade)
Definition: PixelForwardLayer.cc:153
PixelForwardLayer::PixelForwardLayer
PixelForwardLayer(std::vector< const PixelBlade * > &blades)
Definition: PixelForwardLayer.cc:22
watchdog.const
const
Definition: watchdog.py:83
Propagator
Definition: Propagator.h:44
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
PixelForwardLayer::~PixelForwardLayer
~PixelForwardLayer() override
Definition: PixelForwardLayer.cc:50
PixelForwardLayer::SubTurbineCrossings
Definition: PixelForwardLayer.h:36
PixelForwardLayer
Definition: PixelForwardLayer.h:13
PixelForwardLayer::theComps
std::vector< const GeometricSearchDet * > theComps
Definition: PixelForwardLayer.h:64
funct::true
true
Definition: Factorize.h:173
PixelForwardLayer::BinFinderType
PeriodicBinFinderInPhi< float > BinFinderType
Definition: PixelForwardLayer.h:61
PixelForwardLayer::groupedCompatibleDetsV
void groupedCompatibleDetsV(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, std::vector< DetGroup > &result) const override __attribute__((hot))
Definition: PixelForwardLayer.cc:57
PixelBlade.h
__attribute__
float __attribute__((vector_size(8))) cms_float32x2_t
Definition: ExtVec.h:12
PixelForwardLayer::SubTurbineCrossings::nextDistance
float nextDistance
Definition: PixelForwardLayer.h:43
PixelForwardLayer::SubTurbineCrossings::SubTurbineCrossings
SubTurbineCrossings(int ci, int ni, float nd)
Definition: PixelForwardLayer.h:38
PixelForwardLayer::computeWindowSize
static float computeWindowSize(const GeomDet *det, const TrajectoryStateOnSurface &tsos, const MeasurementEstimator &est)
Definition: PixelForwardLayer.cc:207
PixelForwardLayer::computeCrossings
SubTurbineCrossings computeCrossings(const TrajectoryStateOnSurface &startingState, PropagationDirection propDir) const __attribute__((hot))
Definition: PixelForwardLayer.cc:157
ForwardDetLayer
Definition: ForwardDetLayer.h:22
PeriodicBinFinderInPhi< float >
GeomDetEnumerators::subDetGeom
constexpr SubDetector subDetGeom[21]
Definition: GeomDetEnumerators.h:40
ForwardDetLayer.h
PixelForwardLayer::SubTurbineCrossings::isValid
bool isValid
Definition: PixelForwardLayer.h:40
PropagationDirection
PropagationDirection
Definition: PropagationDirection.h:4
PixelForwardLayer::searchNeighbors
void searchNeighbors(const TrajectoryStateOnSurface &tsos, const Propagator &prop, const MeasurementEstimator &est, const SubTurbineCrossings &crossings, float window, std::vector< DetGroup > &result) const __attribute__((hot))
Definition: PixelForwardLayer.cc:108
GeomDetEnumerators::PixelEndcap
Definition: GeomDetEnumerators.h:12
mps_fire.result
result
Definition: mps_fire.py:311
PixelForwardLayer::SubTurbineCrossings::nextIndex
int nextIndex
Definition: PixelForwardLayer.h:42
PixelForwardLayer::theBasicComps
std::vector< const GeomDet * > theBasicComps
Definition: PixelForwardLayer.h:65
GeometricSearchDet
Definition: GeometricSearchDet.h:17
PixelForwardLayer::subDetector
SubDetector subDetector() const override
The type of detector (PixelBarrel, PixelEndcap, TIB, TOB, TID, TEC, CSC, DT, RPCBarrel,...
Definition: PixelForwardLayer.h:30
PixelForwardLayer::components
const std::vector< const GeometricSearchDet * > & components() const override __attribute__((cold))
Returns basic components, if any.
Definition: PixelForwardLayer.h:22
PixelForwardLayer::basicComponents
const std::vector< const GeomDet * > & basicComponents() const override
Definition: PixelForwardLayer.h:20
PixelForwardLayer::theBinFinder
BinFinderType theBinFinder
Definition: PixelForwardLayer.h:62