Sequence< Is > Struct Template Reference

Sequence&lt; Is &gt; Struct Template Reference#

Composable Kernel: ck::Sequence< Is > Struct Template Reference

#include <sequence.hpp>

Public Types

using Type = Sequence
using data_type = index_t

Public Member Functions

template<typename I>
__host__ __device__ constexpr auto operator[] (I i) const

Static Public Member Functions

__host__ static __device__ constexpr auto Size ()
__host__ static __device__ constexpr auto GetSize ()
__host__ static __device__ constexpr index_t At (index_t I)
template<index_t I>
__host__ static __device__ constexpr auto At (Number< I >)
template<index_t I>
__host__ static __device__ constexpr auto Get (Number< I >)
template<index_t... IRs>
__host__ static __device__ constexpr auto ReorderGivenNew2Old (Sequence< IRs... >)
template<typename MapOld2New>
__host__ static __device__ constexpr auto ReorderGivenOld2New (MapOld2New)
__host__ static __device__ constexpr auto Reverse ()
__host__ static __device__ constexpr auto Front ()
__host__ static __device__ constexpr auto Back ()
__host__ static __device__ constexpr auto PopFront ()
__host__ static __device__ constexpr auto PopBack ()
template<index_t... Xs>
__host__ static __device__ constexpr auto PushFront (Sequence< Xs... >)
template<index_t... Xs>
__host__ static __device__ constexpr auto PushFront (Number< Xs >...)
template<index_t... Xs>
__host__ static __device__ constexpr auto PushBack (Sequence< Xs... >)
template<index_t... Xs>
__host__ static __device__ constexpr auto PushBack (Number< Xs >...)
template<index_t... Ns>
__host__ static __device__ constexpr auto Extract (Number< Ns >...)
template<index_t... Ns>
__host__ static __device__ constexpr auto Extract (Sequence< Ns... >)
template<index_t I, index_t X>
__host__ static __device__ constexpr auto Modify (Number< I >, Number< X >)
template<typename F>
__host__ static __device__ constexpr auto Transform (F f)
__host__ static __device__ void Print ()

Static Public Attributes

static constexpr index_t mSize = sizeof...(Is)

Member Typedef Documentation

◆ data_type

template<index_t... Is>
using ck::Sequence< Is >::data_type = index_t

◆ Type

template<index_t... Is>
using ck::Sequence< Is >::Type = Sequence

Member Function Documentation

◆ At() [1/2]

template<index_t... Is>
__host__ static __device__ constexpr index_t ck::Sequence< Is >::At ( index_t I)
inlinestaticconstexpr

◆ At() [2/2]

template<index_t... Is>
template<index_t I>
__host__ static __device__ constexpr auto ck::Sequence< Is >::At ( Number< I > )
inlinestaticconstexpr

◆ Back()

template<index_t... Is>
__host__ static __device__ constexpr auto ck::Sequence< Is >::Back ( )
inlinestaticconstexpr

◆ Extract() [1/2]

template<index_t... Is>
template<index_t... Ns>
__host__ static __device__ constexpr auto ck::Sequence< Is >::Extract ( Number< Ns > ...)
inlinestaticconstexpr

◆ Extract() [2/2]

template<index_t... Is>
template<index_t... Ns>
__host__ static __device__ constexpr auto ck::Sequence< Is >::Extract ( Sequence< Ns... > )
inlinestaticconstexpr

◆ Front()

template<index_t... Is>
__host__ static __device__ constexpr auto ck::Sequence< Is >::Front ( )
inlinestaticconstexpr

◆ Get()

template<index_t... Is>
template<index_t I>
__host__ static __device__ constexpr auto ck::Sequence< Is >::Get ( Number< I > )
inlinestaticconstexpr

◆ GetSize()

template<index_t... Is>
__host__ static __device__ constexpr auto ck::Sequence< Is >::GetSize ( )
inlinestaticconstexpr

◆ Modify()

template<index_t... Is>
template<index_t I, index_t X>
__host__ static __device__ constexpr auto ck::Sequence< Is >::Modify ( Number< I > ,
Number< X >  )
inlinestaticconstexpr

◆ operator[]()

template<index_t... Is>
template<typename I>
__host__ __device__ constexpr auto ck::Sequence< Is >::operator[] ( I i) const
inlineconstexpr

◆ PopBack()

template<index_t... Is>
__host__ static __device__ constexpr auto ck::Sequence< Is >::PopBack ( )
inlinestaticconstexpr

◆ PopFront()

template<index_t... Is>
__host__ static __device__ constexpr auto ck::Sequence< Is >::PopFront ( )
inlinestaticconstexpr

◆ Print()

template<index_t... Is>
__host__ static __device__ void ck::Sequence< Is >::Print ( )
inlinestatic

◆ PushBack() [1/2]

template<index_t... Is>
template<index_t... Xs>
__host__ static __device__ constexpr auto ck::Sequence< Is >::PushBack ( Number< Xs > ...)
inlinestaticconstexpr

◆ PushBack() [2/2]

template<index_t... Is>
template<index_t... Xs>
__host__ static __device__ constexpr auto ck::Sequence< Is >::PushBack ( Sequence< Xs... > )
inlinestaticconstexpr

◆ PushFront() [1/2]

template<index_t... Is>
template<index_t... Xs>
__host__ static __device__ constexpr auto ck::Sequence< Is >::PushFront ( Number< Xs > ...)
inlinestaticconstexpr

◆ PushFront() [2/2]

template<index_t... Is>
template<index_t... Xs>
__host__ static __device__ constexpr auto ck::Sequence< Is >::PushFront ( Sequence< Xs... > )
inlinestaticconstexpr

◆ ReorderGivenNew2Old()

template<index_t... Is>
template<index_t... IRs>
__host__ static __device__ constexpr auto ck::Sequence< Is >::ReorderGivenNew2Old ( Sequence< IRs... > )
inlinestaticconstexpr

◆ ReorderGivenOld2New()

template<index_t... Is>
template<typename MapOld2New>
__host__ static __device__ constexpr auto ck::Sequence< Is >::ReorderGivenOld2New ( MapOld2New )
inlinestaticconstexpr

◆ Reverse()

template<index_t... Is>
__host__ static __device__ constexpr auto ck::Sequence< Is >::Reverse ( )
inlinestaticconstexpr

◆ Size()

template<index_t... Is>
__host__ static __device__ constexpr auto ck::Sequence< Is >::Size ( )
inlinestaticconstexpr

◆ Transform()

template<index_t... Is>
template<typename F>
__host__ static __device__ constexpr auto ck::Sequence< Is >::Transform ( F f)
inlinestaticconstexpr

Member Data Documentation

◆ mSize

template<index_t... Is>
index_t ck::Sequence< Is >::mSize = sizeof...(Is)
staticconstexpr

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