Insert< UpperLength > Struct Template Reference

Insert&lt; UpperLength &gt; Struct Template Reference#

Composable Kernel: ck::Insert< UpperLength > Struct Template Reference

#include <multi_index_transform.hpp>

Public Types

using UpLengths = decltype(make_tuple(UpperLength{}))

Public Member Functions

__host__ __device__ constexpr Insert ()=default
__host__ __device__ constexpr Insert (const UpperLength &up_length)
__host__ __device__ constexpr auto GetUpperLengths () const
template<typename LowIdx, typename UpIdx>
__host__ __device__ constexpr void CalculateLowerIndex (LowIdx &, const UpIdx &) const
__host__ __device__ void Print () const

Static Public Member Functions

__host__ static __device__ constexpr index_t GetNumOfLowerDimension ()
__host__ static __device__ constexpr index_t GetNumOfUpperDimension ()
template<typename LowIdxDiff, typename UpIdxDiff, typename LowIdx, typename UpIdx, index_t Hack>
__host__ static __device__ void UpdateLowerIndex (LowIdxDiff &, const UpIdxDiff &, LowIdx &, const UpIdx &, Number< Hack >)
__host__ static __device__ constexpr bool IsLinearTransform ()
__host__ static __device__ constexpr bool IsValidUpperIndexAlwaysMappedToValidLowerIndex ()
template<typename UpIdx>
__host__ static __device__ constexpr bool IsValidUpperIndexMappedToValidLowerIndex (const UpIdx &)
__host__ static __device__ constexpr bool IsKnownAtCompileTime ()

Public Attributes

UpLengths up_lengths_

Member Typedef Documentation

◆ UpLengths

template<typename UpperLength>
using ck::Insert< UpperLength >::UpLengths = decltype(make_tuple(UpperLength{}))

Constructor & Destructor Documentation

◆ Insert() [1/2]

template<typename UpperLength>
__host__ __device__ constexpr ck::Insert< UpperLength >::Insert ( )
constexprdefault

◆ Insert() [2/2]

template<typename UpperLength>
__host__ __device__ constexpr ck::Insert< UpperLength >::Insert ( const UpperLength & up_length)
inlineconstexpr

Member Function Documentation

◆ CalculateLowerIndex()

template<typename UpperLength>
template<typename LowIdx, typename UpIdx>
__host__ __device__ constexpr void ck::Insert< UpperLength >::CalculateLowerIndex ( LowIdx & ,
const UpIdx &  ) const
inlineconstexpr

◆ GetNumOfLowerDimension()

template<typename UpperLength>
__host__ static __device__ constexpr index_t ck::Insert< UpperLength >::GetNumOfLowerDimension ( )
inlinestaticconstexpr

◆ GetNumOfUpperDimension()

template<typename UpperLength>
__host__ static __device__ constexpr index_t ck::Insert< UpperLength >::GetNumOfUpperDimension ( )
inlinestaticconstexpr

◆ GetUpperLengths()

template<typename UpperLength>
__host__ __device__ constexpr auto ck::Insert< UpperLength >::GetUpperLengths ( ) const
inlineconstexpr

◆ IsKnownAtCompileTime()

template<typename UpperLength>
__host__ static __device__ constexpr bool ck::Insert< UpperLength >::IsKnownAtCompileTime ( )
inlinestaticconstexpr

◆ IsLinearTransform()

template<typename UpperLength>
__host__ static __device__ constexpr bool ck::Insert< UpperLength >::IsLinearTransform ( )
inlinestaticconstexpr

◆ IsValidUpperIndexAlwaysMappedToValidLowerIndex()

template<typename UpperLength>
__host__ static __device__ constexpr bool ck::Insert< UpperLength >::IsValidUpperIndexAlwaysMappedToValidLowerIndex ( )
inlinestaticconstexpr

◆ IsValidUpperIndexMappedToValidLowerIndex()

template<typename UpperLength>
template<typename UpIdx>
__host__ static __device__ constexpr bool ck::Insert< UpperLength >::IsValidUpperIndexMappedToValidLowerIndex ( const UpIdx & )
inlinestaticconstexpr

◆ Print()

template<typename UpperLength>
__host__ __device__ void ck::Insert< UpperLength >::Print ( ) const
inline

◆ UpdateLowerIndex()

template<typename UpperLength>
template<typename LowIdxDiff, typename UpIdxDiff, typename LowIdx, typename UpIdx, index_t Hack>
__host__ static __device__ void ck::Insert< UpperLength >::UpdateLowerIndex ( LowIdxDiff & ,
const UpIdxDiff & ,
LowIdx & ,
const UpIdx & ,
Number< Hack >  )
inlinestatic

Member Data Documentation

◆ up_lengths_

template<typename UpperLength>
UpLengths ck::Insert< UpperLength >::up_lengths_

The documentation for this struct was generated from the following file: