#include <algorithm>
#include <cmath>
#include <cstdint>
#include <cstdio>
#include <limits>
#include <alpaka/alpaka.hpp>
#include "DataFormats/Math/interface/approx_atan2.h"
#include "DataFormats/TrackingRecHitSoA/interface/TrackingRecHitsSoA.h"
#include "Geometry/CommonTopologies/interface/SimplePixelTopology.h"
#include "HeterogeneousCore/AlpakaInterface/interface/VecArray.h"
#include "HeterogeneousCore/AlpakaInterface/interface/traits.h"
#include "HeterogeneousCore/AlpakaInterface/interface/workdivision.h"
#include "CACell.h"
#include "CAStructures.h"
Go to the source code of this file.
Classes | |
struct | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::CellCutsT< TrackerTraits > |
Namespaces | |
ALPAKA_ACCELERATOR_NAMESPACE | |
ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets | |
Typedefs | |
using | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::PhiBinner = typename TrackingRecHitSoA< TrackerTraits >::PhiBinner |
Functions | |
template<typename TrackerTraits , typename TAcc > | |
ALPAKA_FN_ACC ALPAKA_FN_INLINE void | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::__attribute__ ((always_inline)) doubletsFromHisto(const TAcc &acc |
ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::ALPAKA_ASSERT_OFFLOAD (offsets) | |
const uint32_t | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::blockDimensionX (alpaka::getWorkDiv< alpaka::Block, alpaka::Elems >(acc)[dimIndexX]) |
ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::for (uint32_t j=firstElementIdxY;j< ntot;j++) | |
const uint32_t | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::gridDimensionY (alpaka::getWorkDiv< alpaka::Grid, alpaka::Elems >(acc)[dimIndexY]) |
ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::if (threadIdxLocalY==0 &&threadIdxLocalX==0) | |
const uint32_t | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::threadIdxLocalX (alpaka::getIdx< alpaka::Block, alpaka::Threads >(acc)[dimIndexX]) |
const uint32_t | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::threadIdxLocalY (alpaka::getIdx< alpaka::Block, alpaka::Threads >(acc)[dimIndexY]) |
Variables | |
ALPAKA_FN_ACC ALPAKA_FN_INLINE void uint32_t const uint32_t CACellT< TrackerTraits > uint32_t CellNeighborsVector< TrackerTraits > * | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::cellNeighbors |
ALPAKA_FN_ACC ALPAKA_FN_INLINE void uint32_t const uint32_t CACellT< TrackerTraits > * | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::cells |
ALPAKA_FN_ACC ALPAKA_FN_INLINE void uint32_t const uint32_t CACellT< TrackerTraits > uint32_t CellNeighborsVector< TrackerTraits > CellTracksVector< TrackerTraits > * | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::cellTracks |
ALPAKA_FN_ACC ALPAKA_FN_INLINE void uint32_t const uint32_t CACellT< TrackerTraits > uint32_t CellNeighborsVector< TrackerTraits > CellTracksVector< TrackerTraits > HitsConstView< TrackerTraits > OuterHitOfCell< TrackerTraits > CellCutsT< TrackerTraits > const & | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::cuts |
constexpr uint32_t | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::dimIndexX = 1u |
constexpr uint32_t | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::dimIndexY = 0u |
const bool | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::doPtCut = cuts.doPtCut_ |
const bool | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::doZ0Cut = cuts.doZ0Cut_ |
uint32_t | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::endElementIdxY = endElementIdxNoStrideY |
const auto &uint32_t | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::firstElementIdxY = firstElementIdxNoStrideY |
const float | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::hardPtCut = cuts.ptCut_ |
ALPAKA_FN_ACC ALPAKA_FN_INLINE void uint32_t const uint32_t CACellT< TrackerTraits > uint32_t CellNeighborsVector< TrackerTraits > CellTracksVector< TrackerTraits > HitsConstView< TrackerTraits > | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::hh |
auto & | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::innerLayerCumulativeSize = alpaka::declareSharedVar<uint32_t[TrackerTraits::nPairs], __COUNTER__>(acc) |
ALPAKA_FN_ACC ALPAKA_FN_INLINE void uint32_t const uint32_t CACellT< TrackerTraits > uint32_t CellNeighborsVector< TrackerTraits > CellTracksVector< TrackerTraits > HitsConstView< TrackerTraits > OuterHitOfCell< TrackerTraits > | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::isOuterHitOfCell |
auto | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::layerSize = [=](uint8_t li) { return offsets[li + 1] - offsets[li]; } |
ALPAKA_FN_ACC ALPAKA_FN_INLINE void uint32_t const uint32_t | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::maxNumOfDoublets |
const float | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::minRadius = hardPtCut * 87.78f |
const float | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::minRadius2T4 = 4.f * minRadius * minRadius |
ALPAKA_FN_ACC ALPAKA_FN_INLINE void uint32_t const uint32_t CACellT< TrackerTraits > uint32_t * | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::nCells |
ALPAKA_FN_ACC ALPAKA_FN_INLINE void uint32_t | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::nPairs |
auto & | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::ntot = alpaka::declareSharedVar<uint32_t, __COUNTER__>(acc) |
uint32_t const *__restrict__ | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::offsets = hh.hitsLayerStart().data() |
const auto &uint32_t | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::pairLayerId = 0 |
auto const &__restrict__ | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::phiBinner = hh.phiBinner() |
const float | ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::z0cut = cuts.z0Cut_ |