AI Engine API User Guide (AIE) 2023.1
Loading...
Searching...
No Matches
aie::detail::sync::sync_data_impl< Direction, T[Elems], NumBuffers, NumReaders, NumWriters, std::index_sequence< Is... > > Class Template Reference

#include <sync_buffer.hpp>

Public Types

using value_type = T
 

Public Member Functions

constexpr sync_data_impl (buffer_ptr< Is > ...ptrs, buffer_mutex< Is > &...mutexes)
 
value_typeacquire ()
 
constexpr size_t bytes () const
 
constexpr unsigned current_index () const
 
void release ()
 
constexpr size_t size () const
 

Static Public Attributes

static constexpr unsigned num_buffers = NumBuffers
 
static constexpr unsigned num_readers = NumReaders
 
static constexpr unsigned num_writers = NumWriters
 

Member Typedef Documentation

◆ value_type

template<direction Direction, typename T , size_t Elems, unsigned NumBuffers, unsigned NumReaders, unsigned NumWriters, size_t... Is>
using aie::detail::sync::sync_data_impl< Direction, T[Elems], NumBuffers, NumReaders, NumWriters, std::index_sequence< Is... > >::value_type = T

Constructor & Destructor Documentation

◆ sync_data_impl()

template<direction Direction, typename T , size_t Elems, unsigned NumBuffers, unsigned NumReaders, unsigned NumWriters, size_t... Is>
constexpr aie::detail::sync::sync_data_impl< Direction, T[Elems], NumBuffers, NumReaders, NumWriters, std::index_sequence< Is... > >::sync_data_impl ( buffer_ptr< Is > ...  ptrs,
buffer_mutex< Is > &...  mutexes 
)
inlineconstexpr

Member Function Documentation

◆ acquire()

template<direction Direction, typename T , size_t Elems, unsigned NumBuffers, unsigned NumReaders, unsigned NumWriters, size_t... Is>
value_type * aie::detail::sync::sync_data_impl< Direction, T[Elems], NumBuffers, NumReaders, NumWriters, std::index_sequence< Is... > >::acquire ( )
inline

◆ bytes()

template<direction Direction, typename T , size_t Elems, unsigned NumBuffers, unsigned NumReaders, unsigned NumWriters, size_t... Is>
constexpr size_t aie::detail::sync::sync_data_impl< Direction, T[Elems], NumBuffers, NumReaders, NumWriters, std::index_sequence< Is... > >::bytes ( ) const
inlineconstexpr

◆ current_index()

template<direction Direction, typename T , size_t Elems, unsigned NumBuffers, unsigned NumReaders, unsigned NumWriters, size_t... Is>
constexpr unsigned aie::detail::sync::sync_data_impl< Direction, T[Elems], NumBuffers, NumReaders, NumWriters, std::index_sequence< Is... > >::current_index ( ) const
inlineconstexpr

◆ release()

template<direction Direction, typename T , size_t Elems, unsigned NumBuffers, unsigned NumReaders, unsigned NumWriters, size_t... Is>
void aie::detail::sync::sync_data_impl< Direction, T[Elems], NumBuffers, NumReaders, NumWriters, std::index_sequence< Is... > >::release ( )
inline

◆ size()

template<direction Direction, typename T , size_t Elems, unsigned NumBuffers, unsigned NumReaders, unsigned NumWriters, size_t... Is>
constexpr size_t aie::detail::sync::sync_data_impl< Direction, T[Elems], NumBuffers, NumReaders, NumWriters, std::index_sequence< Is... > >::size ( ) const
inlineconstexpr

Member Data Documentation

◆ num_buffers

template<direction Direction, typename T , size_t Elems, unsigned NumBuffers, unsigned NumReaders, unsigned NumWriters, size_t... Is>
constexpr unsigned aie::detail::sync::sync_data_impl< Direction, T[Elems], NumBuffers, NumReaders, NumWriters, std::index_sequence< Is... > >::num_buffers = NumBuffers
staticconstexpr

◆ num_readers

template<direction Direction, typename T , size_t Elems, unsigned NumBuffers, unsigned NumReaders, unsigned NumWriters, size_t... Is>
constexpr unsigned aie::detail::sync::sync_data_impl< Direction, T[Elems], NumBuffers, NumReaders, NumWriters, std::index_sequence< Is... > >::num_readers = NumReaders
staticconstexpr

◆ num_writers

template<direction Direction, typename T , size_t Elems, unsigned NumBuffers, unsigned NumReaders, unsigned NumWriters, size_t... Is>
constexpr unsigned aie::detail::sync::sync_data_impl< Direction, T[Elems], NumBuffers, NumReaders, NumWriters, std::index_sequence< Is... > >::num_writers = NumWriters
staticconstexpr

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