StaticBufferTupleOfVector< AddressSpace, S, NumOfVector, ScalarPerVector, InvalidElementUseNumericalZeroValue, type > Struct Template Reference#
Public Types |
Public Member Functions |
Static Public Member Functions |
Static Public Attributes |
List of all members
ck::StaticBufferTupleOfVector< AddressSpace, S, NumOfVector, ScalarPerVector, InvalidElementUseNumericalZeroValue, type > Struct Template Reference
#include <static_buffer.hpp>
Inheritance diagram for ck::StaticBufferTupleOfVector< AddressSpace, S, NumOfVector, ScalarPerVector, InvalidElementUseNumericalZeroValue, type >:
Public Types | |
| using | V = typename vector_type<S, ScalarPerVector>::type |
| using | base = StaticallyIndexedArray<vector_type<S, ScalarPerVector>, NumOfVector> |
Public Member Functions | |
| __host__ __device__ constexpr | StaticBufferTupleOfVector () |
| template<index_t I> | |
| __host__ __device__ constexpr const S & | operator[] (Number< I > i) const |
| template<index_t I> | |
| __host__ __device__ constexpr S & | operator() (Number< I > i) |
| template<typename X, index_t I, typename enable_if< has_same_scalar_type< S, X >::value||!is_native_type< S >(), bool >::type = false> | |
| __host__ __device__ constexpr auto | GetAsType (Number< I > i) const |
| template<typename X, index_t I, typename enable_if< has_same_scalar_type< S, X >::value||!is_native_type< S >(), bool >::type = false> | |
| __host__ __device__ constexpr void | SetAsType (Number< I > i, X x) |
| template<index_t I> | |
| __host__ __device__ constexpr const auto & | GetVectorTypeReference (Number< I > i) const |
| template<index_t I> | |
| __host__ __device__ constexpr auto & | GetVectorTypeReference (Number< I > i) |
| __host__ __device__ void | Clear () |
Static Public Member Functions | |
| __host__ static __device__ constexpr AddressSpaceEnum | GetAddressSpace () |
| __host__ static __device__ constexpr bool | IsStaticBuffer () |
| __host__ static __device__ constexpr bool | IsDynamicBuffer () |
| __host__ static __device__ constexpr index_t | Size () |
Static Public Attributes | |
| static constexpr auto | s_per_v = Number<ScalarPerVector>{} |
| static constexpr auto | num_of_v_ = Number<NumOfVector>{} |
| static constexpr auto | s_per_buf = s_per_v * num_of_v_ |
Member Typedef Documentation
◆ base
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
| using ck::StaticBufferTupleOfVector< AddressSpace, S, NumOfVector, ScalarPerVector, InvalidElementUseNumericalZeroValue, type >::base = StaticallyIndexedArray<vector_type<S, ScalarPerVector>, NumOfVector> |
◆ V
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
| using ck::StaticBufferTupleOfVector< AddressSpace, S, NumOfVector, ScalarPerVector, InvalidElementUseNumericalZeroValue, type >::V = typename vector_type<S, ScalarPerVector>::type |
Constructor & Destructor Documentation
◆ StaticBufferTupleOfVector()
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
|
inlineconstexpr |
Member Function Documentation
◆ Clear()
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
|
inline |
◆ GetAddressSpace()
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
|
inlinestaticconstexpr |
◆ GetAsType()
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
template<typename X, index_t I, typename enable_if< has_same_scalar_type< S, X >::value||!is_native_type< S >(), bool >::type = false>
|
inlineconstexpr |
◆ GetVectorTypeReference() [1/2]
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
template<index_t I>
|
inlineconstexpr |
◆ GetVectorTypeReference() [2/2]
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
template<index_t I>
|
inlineconstexpr |
◆ IsDynamicBuffer()
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
|
inlinestaticconstexpr |
◆ IsStaticBuffer()
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
|
inlinestaticconstexpr |
◆ operator()()
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
template<index_t I>
|
inlineconstexpr |
◆ operator[]()
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
template<index_t I>
|
inlineconstexpr |
◆ SetAsType()
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
template<typename X, index_t I, typename enable_if< has_same_scalar_type< S, X >::value||!is_native_type< S >(), bool >::type = false>
|
inlineconstexpr |
◆ Size()
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
|
inlinestaticconstexpr |
Member Data Documentation
◆ num_of_v_
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
|
staticconstexpr |
◆ s_per_buf
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
|
staticconstexpr |
◆ s_per_v
template<AddressSpaceEnum AddressSpace, typename S, index_t NumOfVector, index_t ScalarPerVector, bool InvalidElementUseNumericalZeroValue, typename enable_if< is_scalar_type< S >::value, bool >::type = false>
|
staticconstexpr |
The documentation for this struct was generated from the following file: