insert< UpperLength > Struct Template Reference

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

Composable Kernel: ck_tile::insert< UpperLength > Struct Template Reference
ck_tile::insert< UpperLength > Struct Template Reference

#include <coordinate_transform.hpp>

Inheritance diagram for ck_tile::insert< UpperLength >:
ck_tile::base_transform< 0, 1 >

Public Types

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

Public Member Functions

CK_TILE_HOST_DEVICE constexpr insert ()=default
CK_TILE_HOST_DEVICE constexpr insert (const UpperLength &up_length)
CK_TILE_HOST_DEVICE constexpr auto get_upper_lengths () const
template<typename LowIdx, typename UpIdx>
CK_TILE_HOST_DEVICE constexpr void calculate_lower_index (LowIdx &, const UpIdx &) const

Static Public Member Functions

static CK_TILE_HOST_DEVICE constexpr index_t get_num_of_lower_dimension ()
static CK_TILE_HOST_DEVICE constexpr index_t get_num_of_upper_dimension ()
template<typename LowIdxDiff, typename UpIdxDiff, typename LowIdx, typename UpIdx>
static CK_TILE_HOST_DEVICE void update_lower_index (LowIdxDiff &, const UpIdxDiff &, LowIdx &, const UpIdx &)
static CK_TILE_HOST_DEVICE constexpr bool IsLinearTransform ()
static CK_TILE_HOST_DEVICE constexpr bool is_valid_upper_index_always_mapped_to_valid_lower_index ()
template<typename UpIdx>
static CK_TILE_HOST_DEVICE constexpr bool is_valid_upper_index_mapped_to_valid_lower_index (const UpIdx &)
static CK_TILE_HOST_DEVICE constexpr bool is_known_at_compile_time ()
Static Public Member Functions inherited from ck_tile::base_transform< 0, 1 >
static CK_TILE_HOST_DEVICE constexpr auto get_type_enum ()
static CK_TILE_HOST_DEVICE constexpr index_t get_num_of_lower_dimension ()
static CK_TILE_HOST_DEVICE constexpr index_t get_num_of_upper_dimension ()
static CK_TILE_HOST_DEVICE constexpr auto calculate_upper_dimension_safe_vector_length_strides (const LowVectorLengths &, const LowVectorStrides &)

Public Attributes

UpLengths up_lengths_

Member Typedef Documentation

◆ UpLengths

template<typename UpperLength>
using ck_tile::insert< UpperLength >::UpLengths = decltype(make_tuple(UpperLength{}))

Constructor & Destructor Documentation

◆ insert() [1/2]

template<typename UpperLength>
CK_TILE_HOST_DEVICE constexpr ck_tile::insert< UpperLength >::insert ( )
constexprdefault

◆ insert() [2/2]

template<typename UpperLength>
CK_TILE_HOST_DEVICE constexpr ck_tile::insert< UpperLength >::insert ( const UpperLength & up_length)
inlineconstexpr

Member Function Documentation

◆ calculate_lower_index()

template<typename UpperLength>
template<typename LowIdx, typename UpIdx>
CK_TILE_HOST_DEVICE constexpr void ck_tile::insert< UpperLength >::calculate_lower_index ( LowIdx & ,
const UpIdx &  ) const
inlineconstexpr

◆ get_num_of_lower_dimension()

template<typename UpperLength>
CK_TILE_HOST_DEVICE constexpr index_t ck_tile::insert< UpperLength >::get_num_of_lower_dimension ( )
inlinestaticconstexpr

◆ get_num_of_upper_dimension()

template<typename UpperLength>
CK_TILE_HOST_DEVICE constexpr index_t ck_tile::insert< UpperLength >::get_num_of_upper_dimension ( )
inlinestaticconstexpr

◆ get_upper_lengths()

template<typename UpperLength>
CK_TILE_HOST_DEVICE constexpr auto ck_tile::insert< UpperLength >::get_upper_lengths ( ) const
inlineconstexpr

◆ is_known_at_compile_time()

template<typename UpperLength>
CK_TILE_HOST_DEVICE constexpr bool ck_tile::insert< UpperLength >::is_known_at_compile_time ( )
inlinestaticconstexpr

◆ is_valid_upper_index_always_mapped_to_valid_lower_index()

template<typename UpperLength>
CK_TILE_HOST_DEVICE constexpr bool ck_tile::insert< UpperLength >::is_valid_upper_index_always_mapped_to_valid_lower_index ( )
inlinestaticconstexpr

◆ is_valid_upper_index_mapped_to_valid_lower_index()

template<typename UpperLength>
template<typename UpIdx>
CK_TILE_HOST_DEVICE constexpr bool ck_tile::insert< UpperLength >::is_valid_upper_index_mapped_to_valid_lower_index ( const UpIdx & )
inlinestaticconstexpr

◆ IsLinearTransform()

template<typename UpperLength>
CK_TILE_HOST_DEVICE constexpr bool ck_tile::insert< UpperLength >::IsLinearTransform ( )
inlinestaticconstexpr

◆ update_lower_index()

template<typename UpperLength>
template<typename LowIdxDiff, typename UpIdxDiff, typename LowIdx, typename UpIdx>
CK_TILE_HOST_DEVICE void ck_tile::insert< UpperLength >::update_lower_index ( LowIdxDiff & ,
const UpIdxDiff & ,
LowIdx & ,
const UpIdx &  )
inlinestatic

Member Data Documentation

◆ up_lengths_

template<typename UpperLength>
UpLengths ck_tile::insert< UpperLength >::up_lengths_

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