cutlass::AlignedBuffer< T, N, Align > Struct Template Reference

Modifies semantics of cutlass::Array<> to provide guaranteed alignment.

`#include <aligned_buffer.h>`

## Public Types

using | Storage = uint8_t
| Internal storage type. More...
typedef T | value_type
typedef size_t | size_type
typedef ptrdiff_t | difference_type
typedef value_type * | pointer
typedef value_type const * | const_pointer
using | Array = Array< T, N >
using | reference = typename Array::reference
using | const_reference = typename Array::const_reference

## Public Member Functions

CUTLASS_HOST_DEVICE pointer | data ()
CUTLASS_HOST_DEVICE const_pointer | data () const
CUTLASS_HOST_DEVICE Storage * | raw_data ()
CUTLASS_HOST_DEVICE Storage const * | raw_data () const
CUTLASS_HOST_DEVICE constexpr bool | empty () const
CUTLASS_HOST_DEVICE constexpr size_type | size () const
CUTLASS_HOST_DEVICE constexpr size_type | max_size () const

## Static Public Attributes

static int const | kCount = N
| Number of logical elements held in buffer. More...
static int const | kAlign = Align
| Alignment requirement in bytes. More...
static int const | kBytes
| Number of storage elements. More...

## Member Typedef Documentation

template<typename T, int N, int Align = 16>

using cutlass::AlignedBuffer< T, N, Align >::Array = Array<T, N>

template<typename T, int N, int Align = 16>

typedef value_type const* cutlass::AlignedBuffer< T, N, Align >::const_pointer

template<typename T, int N, int Align = 16>

using cutlass::AlignedBuffer< T, N, Align >::const_reference = typename Array::const_reference

template<typename T, int N, int Align = 16>

typedef ptrdiff_t cutlass::AlignedBuffer< T, N, Align >::difference_type

template<typename T, int N, int Align = 16>

typedef value_type* cutlass::AlignedBuffer< T, N, Align >::pointer

template<typename T, int N, int Align = 16>

using cutlass::AlignedBuffer< T, N, Align >::reference = typename Array::reference

template<typename T, int N, int Align = 16>

typedef size_t cutlass::AlignedBuffer< T, N, Align >::size_type

template<typename T, int N, int Align = 16>

using cutlass::AlignedBuffer< T, N, Align >::Storage = uint8_t

template<typename T, int N, int Align = 16>

typedef T cutlass::AlignedBuffer< T, N, Align >::value_type

## Member Function Documentation

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE pointer cutlass::AlignedBuffer< T, N, Align >::data | ( |  | ) |

inline

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE const_pointer cutlass::AlignedBuffer< T, N, Align >::data | ( |  | ) | const

inline

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE constexpr bool cutlass::AlignedBuffer< T, N, Align >::empty | ( |  | ) | const

inline

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE constexpr size_type cutlass::AlignedBuffer< T, N, Align >::max_size | ( |  | ) | const

inline

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE Storage* cutlass::AlignedBuffer< T, N, Align >::raw_data | ( |  | ) |

inline

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE Storage const* cutlass::AlignedBuffer< T, N, Align >::raw_data | ( |  | ) | const

inline

template<typename T, int N, int Align = 16>

CUTLASS_HOST_DEVICE constexpr size_type cutlass::AlignedBuffer< T, N, Align >::size | ( |  | ) | const

inline

## Member Data Documentation

template<typename T, int N, int Align = 16>

int const cutlass::AlignedBuffer< T, N, Align >::kAlign = Align

static

template<typename T, int N, int Align = 16>

int const cutlass::AlignedBuffer< T, N, Align >::kBytes

static

Initial value:
=
(sizeof_bits<T>::value * N + 7) / 8
template<typename T, int N, int Align = 16>

int const cutlass::AlignedBuffer< T, N, Align >::kCount = N

static

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

- aligned_buffer.h