#include <GPUCACell.h>
Public Types | |
using | CellNeighbors = caStructures::CellNeighborsT< TrackerTraits > |
using | CellNeighborsVector = caStructures::CellNeighborsVectorT< TrackerTraits > |
using | CellTracks = caStructures::CellTracksT< TrackerTraits > |
using | CellTracksVector = caStructures::CellTracksVectorT< TrackerTraits > |
using | hindex_type = typename TrackerTraits::hindex_type |
using | HitContainer = typename TrackSoA< TrackerTraits >::HitContainer |
using | HitsConstView = TrackingRecHitSoAConstView< TrackerTraits > |
using | OuterHitOfCell = caStructures::OuterHitOfCellT< TrackerTraits > |
using | OuterHitOfCellContainer = caStructures::OuterHitOfCellContainerT< TrackerTraits > |
using | PtrAsInt = unsigned long long |
using | Quality = pixelTrack::Quality |
enum | StatusBit : uint16_t { StatusBit::kUsed = 1, StatusBit::kInTrack = 2, StatusBit::kKilled = 1 << 15 } |
using | tindex_type = typename TrackerTraits::tindex_type |
using | TmpTuple = cms::cuda::VecArray< uint32_t, TrackerTraits::maxDepth > |
Public Member Functions | |
__device__ | __attribute__ ((always_inline)) void init(CellNeighborsVector &cellNeighbors |
__device__ | __attribute__ ((always_inline)) int addOuterNeighbor(typename TrackerTraits |
__device__ | __attribute__ ((always_inline)) int addTrack(tindex_type t |
__device__ | __attribute__ ((always_inline)) CellTracks &tracks() |
__device__ | __attribute__ ((always_inline)) CellTracks const &tracks() const |
__device__ | __attribute__ ((always_inline)) CellNeighbors &outerNeighbors() |
__device__ | __attribute__ ((always_inline)) CellNeighbors const &outerNeighbors() const |
__device__ | __attribute__ ((always_inline)) float inner_x(const HitsConstView &hh) const |
__device__ | __attribute__ ((always_inline)) float outer_x(const HitsConstView &hh) const |
__device__ | __attribute__ ((always_inline)) float inner_y(const HitsConstView &hh) const |
__device__ | __attribute__ ((always_inline)) float outer_y(const HitsConstView &hh) const |
__device__ | __attribute__ ((always_inline)) float inner_z(const HitsConstView &hh) const |
__device__ | __attribute__ ((always_inline)) float outer_z(const HitsConstView &hh) const |
__device__ | __attribute__ ((always_inline)) float inner_r(const HitsConstView &hh) const |
__device__ | __attribute__ ((always_inline)) float outer_r(const HitsConstView &hh) const |
__device__ | __attribute__ ((always_inline)) auto inner_iphi(const HitsConstView &hh) const |
__device__ | __attribute__ ((always_inline)) auto outer_iphi(const HitsConstView &hh) const |
__device__ | __attribute__ ((always_inline)) float inner_detIndex(const HitsConstView &hh) const |
__device__ | __attribute__ ((always_inline)) float outer_detIndex(const HitsConstView &hh) const |
__device__ | __attribute__ ((always_inline)) static bool areAlignedRZ(float r1 |
assert (outerNeighbors().empty()) | |
assert (tracks().empty()) | |
__device__ bool | check_alignment (const HitsConstView &hh, GPUCACellT const &otherCell, const float ptmin, const float hardCurvCut, const float caThetaCutBarrel, const float caThetaCutForward, const float dcaCutInnerTriplet, const float dcaCutOuterTriplet) const |
GPUCACellT ()=default | |
constexpr unsigned int | inner_hit_id () const |
constexpr unsigned int | outer_hit_id () const |
__device__ void | print_cell () const |
return | tracks ().push_back(t) |
Static Public Attributes | |
static constexpr auto | bad = pixelTrack::Quality::bad |
static constexpr auto | invalidHitId = std::numeric_limits<hindex_type>::max() |
static constexpr auto | maxCellsPerHit = TrackerTraits::maxCellsPerHit |
Definition at line 22 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::CellNeighbors = caStructures::CellNeighborsT<TrackerTraits> |
Definition at line 29 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::CellNeighborsVector = caStructures::CellNeighborsVectorT<TrackerTraits> |
Definition at line 31 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::CellTracks = caStructures::CellTracksT<TrackerTraits> |
Definition at line 30 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::CellTracksVector = caStructures::CellTracksVectorT<TrackerTraits> |
Definition at line 32 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::hindex_type = typename TrackerTraits::hindex_type |
Definition at line 35 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::HitContainer = typename TrackSoA<TrackerTraits>::HitContainer |
Definition at line 41 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::HitsConstView = TrackingRecHitSoAConstView<TrackerTraits> |
Definition at line 34 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::OuterHitOfCell = caStructures::OuterHitOfCellT<TrackerTraits> |
Definition at line 28 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::OuterHitOfCellContainer = caStructures::OuterHitOfCellContainerT<TrackerTraits> |
Definition at line 27 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::PtrAsInt = unsigned long long |
Definition at line 24 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::Quality = pixelTrack::Quality |
Definition at line 42 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::tindex_type = typename TrackerTraits::tindex_type |
Definition at line 36 of file GPUCACell.h.
using GPUCACellT< TrackerTraits >::TmpTuple = cms::cuda::VecArray<uint32_t, TrackerTraits::maxDepth> |
Definition at line 39 of file GPUCACell.h.
|
strong |
Enumerator | |
---|---|
kUsed | |
kInTrack | |
kKilled |
Definition at line 45 of file GPUCACell.h.
|
default |
|
inline |
|
inline |
Definition at line 72 of file GPUCACell.h.
References cms::cudacompat::__threadfence(), cms::cudacompat::atomicCAS(), caHitNtupletGeneratorKernels::cellNeighbors, relativeConstraints::empty, mps_fire::i, submitPVValidationJobs::t, GPUCACellT< TrackerTraits >::theOuterNeighbors, and SiPixelPI::zero.
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 116 of file GPUCACell.h.
References GPUCACellT< TrackerTraits >::theOuterNeighbors.
|
inline |
Definition at line 117 of file GPUCACell.h.
References GPUCACellT< TrackerTraits >::theOuterNeighbors.
|
inline |
|
inline |
Definition at line 119 of file GPUCACell.h.
References GPUCACellT< TrackerTraits >::hh, and GPUCACellT< TrackerTraits >::theOuterHitId.
|
inline |
|
inline |
Definition at line 121 of file GPUCACell.h.
References GPUCACellT< TrackerTraits >::hh, and GPUCACellT< TrackerTraits >::theOuterHitId.
|
inline |
|
inline |
Definition at line 124 of file GPUCACell.h.
References GPUCACellT< TrackerTraits >::hh, and GPUCACellT< TrackerTraits >::theOuterHitId.
|
inline |
|
inline |
Definition at line 127 of file GPUCACell.h.
References GPUCACellT< TrackerTraits >::hh, and GPUCACellT< TrackerTraits >::theOuterHitId.
|
inline |
|
inline |
Definition at line 130 of file GPUCACell.h.
References GPUCACellT< TrackerTraits >::hh, and GPUCACellT< TrackerTraits >::theOuterHitId.
|
inline |
|
inline |
Definition at line 135 of file GPUCACell.h.
References GPUCACellT< TrackerTraits >::hh, and GPUCACellT< TrackerTraits >::theOuterHitId.
|
inline |
GPUCACellT< TrackerTraits >::assert | ( | outerNeighbors().empty() | ) |
GPUCACellT< TrackerTraits >::assert | ( | tracks().empty() | ) |
|
inline |
Definition at line 149 of file GPUCACell.h.
References particleFlowDisplacedVertexCandidate_cfi::dcaCut, HLT_2022v15_cff::dcaCutInnerTriplet, HLT_2022v15_cff::dcaCutOuterTriplet, HLT_2022v15_cff::hardCurvCut, GPUCACellT< TrackerTraits >::hh, PixelPluginsPhase0_cfi::isBarrel, GPUCACellT< TrackerTraits >::ptmin, diffTwoXMLs::r1, GPUCACellT< TrackerTraits >::ri, GPUCACellT< TrackerTraits >::ro, GPUCACellT< TrackerTraits >::z1, GPUCACellT< TrackerTraits >::zi, and GPUCACellT< TrackerTraits >::zo.
|
inline |
Definition at line 139 of file GPUCACell.h.
|
inline |
|
inline |
Definition at line 142 of file GPUCACell.h.
References GPUCACellT< TrackerTraits >::theLayerPairId_, and GPUCACellT< TrackerTraits >::theOuterHitId.
return GPUCACellT< TrackerTraits >::tracks | ( | ) |
|
static |
Definition at line 43 of file GPUCACell.h.
__device__ CellTracksVector & GPUCACellT< TrackerTraits >::cellTracks |
Definition at line 50 of file GPUCACell.h.
float GPUCACellT< TrackerTraits >::distance_13_squared = radius_diff * radius_diff + (z1 - zo) * (z1 - zo) |
Definition at line 187 of file GPUCACell.h.
__device__ CellTracksVector const HitsConstView& GPUCACellT< TrackerTraits >::hh |
Definition at line 50 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::__attribute__(), and GPUCACellT< TrackerTraits >::check_alignment().
__device__ CellTracksVector const HitsConstView int hindex_type GPUCACellT< TrackerTraits >::innerHitId |
Definition at line 50 of file GPUCACell.h.
|
static |
Definition at line 37 of file GPUCACell.h.
__device__ CellTracksVector const HitsConstView int GPUCACellT< TrackerTraits >::layerPairId |
Definition at line 50 of file GPUCACell.h.
|
static |
Definition at line 26 of file GPUCACell.h.
__device__ CellTracksVector const HitsConstView int hindex_type hindex_type GPUCACellT< TrackerTraits >::outerHitId |
Definition at line 54 of file GPUCACell.h.
float GPUCACellT< TrackerTraits >::pMin = ptmin * std::sqrt(distance_13_squared) |
Definition at line 189 of file GPUCACell.h.
__device__ float float float float float const float GPUCACellT< TrackerTraits >::ptmin |
Definition at line 185 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::check_alignment().
__device__ float float GPUCACellT< TrackerTraits >::ri |
Definition at line 185 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::check_alignment().
__device__ float float float float GPUCACellT< TrackerTraits >::ro |
Definition at line 185 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::check_alignment().
float GPUCACellT< TrackerTraits >::tan_12_13_half_mul_distance_13_squared = fabs(z1 * (ri - ro) + zi * (ro - r1) + zo * (r1 - ri)) |
Definition at line 192 of file GPUCACell.h.
GPUCACellT< TrackerTraits >::theFishboneId = invalidHitId |
Definition at line 59 of file GPUCACell.h.
GPUCACellT< TrackerTraits >::theInnerR = hh[innerHitId].rGlobal() |
Definition at line 63 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::__attribute__().
GPUCACellT< TrackerTraits >::theInnerZ = hh[innerHitId].zGlobal() |
Definition at line 62 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::__attribute__().
GPUCACellT< TrackerTraits >::theLayerPairId_ = layerPairId |
Definition at line 57 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::print_cell().
GPUCACellT< TrackerTraits >::theOuterHitId = outerHitId |
Definition at line 56 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::__attribute__(), GPUCACellT< TrackerTraits >::outer_hit_id(), and GPUCACellT< TrackerTraits >::print_cell().
GPUCACellT< TrackerTraits >::theOuterNeighbors = &cellNeighbors[0] |
Definition at line 66 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::__attribute__().
GPUCACellT< TrackerTraits >::theStatus_ = 0 |
Definition at line 58 of file GPUCACell.h.
__device__ float float float float float const float const float GPUCACellT< TrackerTraits >::thetaCut |
Definition at line 185 of file GPUCACell.h.
GPUCACellT< TrackerTraits >::theTracks = &cellTracks[0] |
Definition at line 67 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::__attribute__().
__device__ float GPUCACellT< TrackerTraits >::z1 |
Definition at line 185 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::check_alignment().
__device__ float float float GPUCACellT< TrackerTraits >::zi |
Definition at line 185 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::check_alignment().
__device__ float float float float float GPUCACellT< TrackerTraits >::zo |
Definition at line 185 of file GPUCACell.h.
Referenced by GPUCACellT< TrackerTraits >::check_alignment().