19 template<
typename TDim,
typename TIdx>
34 template<
typename TDim,
typename TIdx>
35 struct DimType<gb::IdxGbLinear<TDim, TIdx>>
41 template<
typename TDim,
typename TIdx>
42 struct GetIdx<gb::IdxGbLinear<TDim, TIdx>, origin::Grid, unit::Blocks>
45 template<
typename TWorkDiv>
49 return mapIdx<TDim::value>(
51 getWorkDiv<Grid, Blocks>(workDiv));
55 template<
typename TIdx>
56 struct GetIdx<gb::IdxGbLinear<DimInt<1u>, TIdx>, origin::Grid, unit::Blocks>
59 template<
typename TWorkDiv>
62 return idx.m_gridBlockIdx;
67 template<
typename TDim,
typename TIdx>
68 struct IdxType<gb::IdxGbLinear<TDim, TIdx>>
General ND index provider based on a linear index.
TIdx const m_gridBlockIdx
IdxGbLinear(TIdx const &teamOffset=static_cast< TIdx >(0u))
The alpaka accelerator library.
std::integral_constant< std::size_t, N > DimInt
Tag used in class inheritance hierarchies that describes that a specific interface (TInterface) is im...
The dimension getter type trait.
static auto getIdx(gb::IdxGbLinear< DimInt< 1u >, TIdx > const &idx, TWorkDiv const &) -> Vec< DimInt< 1u >, TIdx >
static auto getIdx(gb::IdxGbLinear< TDim, TIdx > const &idx, TWorkDiv const &workDiv) -> Vec< TDim, TIdx >