ttg_parsec::detail::ttg_data_copy_t Struct Referenceabstract
Inheritance diagram for ttg_parsec::detail::ttg_data_copy_t:
ttg_parsec::detail::ttg_data_copy_self_t ttg_parsec::TTValue< Fn > ttg_parsec::TTValue< DerivedT > ttg_parsec::detail::ttg_data_value_copy_t< ValueT > Fn

Documentation

Definition at line 57 of file ttg_data_copy.h.

Public Member Functions

 ttg_data_copy_t ()
 
 ttg_data_copy_t (const ttg_data_copy_t &c)
 
 ttg_data_copy_t (ttg_data_copy_t &&c)
 
ttg_data_copy_toperator= (ttg_data_copy_t &&c)
 
ttg_data_copy_toperator= (const ttg_data_copy_t &c)
 
virtual ~ttg_data_copy_t ()=default
 
bool is_mutable () const
 
void mark_mutable ()
 
template<bool Atomic = true>
int increment_readers ()
 
void reset_readers ()
 
template<bool Atomic = true>
int decrement_readers ()
 
int num_readers () const
 
virtual void * get_ptr ()=0
 
parsec_task_t * get_next_task () const
 
void set_next_task (parsec_task_t *task)
 
int32_t add_ref ()
 
int32_t drop_ref ()
 
bool has_ref ()
 
int32_t num_ref () const
 
- Public Member Functions inherited from ttg_parsec::detail::ttg_data_copy_self_t
 ttg_data_copy_self_t (ttg_data_copy_t *dc)
 

Static Public Attributes

static constexpr int mutable_tag = std::numeric_limits<int>::min()
 

Protected Attributes

parsec_task_t * m_next_task = nullptr
 
int32_t m_readers = 1
 
std::atomic< int32_t > m_refs = 1
 

Additional Inherited Members

- Public Attributes inherited from ttg_parsec::detail::ttg_data_copy_self_t
parsec_list_item_t super
 
ttg_data_copy_tself
 

Constructor & Destructor Documentation

◆ ttg_data_copy_t() [1/3]

ttg_parsec::detail::ttg_data_copy_t::ttg_data_copy_t ( )
inline

Definition at line 63 of file ttg_data_copy.h.

◆ ttg_data_copy_t() [2/3]

ttg_parsec::detail::ttg_data_copy_t::ttg_data_copy_t ( const ttg_data_copy_t c)
inline

Definition at line 67 of file ttg_data_copy.h.

◆ ttg_data_copy_t() [3/3]

ttg_parsec::detail::ttg_data_copy_t::ttg_data_copy_t ( ttg_data_copy_t &&  c)
inline

Definition at line 75 of file ttg_data_copy.h.

◆ ~ttg_data_copy_t()

virtual ttg_parsec::detail::ttg_data_copy_t::~ttg_data_copy_t ( )
virtualdefault

Member Function Documentation

◆ add_ref()

int32_t ttg_parsec::detail::ttg_data_copy_t::add_ref ( )
inline

Definition at line 170 of file ttg_data_copy.h.

◆ decrement_readers()

template<bool Atomic = true>
int ttg_parsec::detail::ttg_data_copy_t::decrement_readers ( )
inline

Definition at line 143 of file ttg_data_copy.h.

◆ drop_ref()

int32_t ttg_parsec::detail::ttg_data_copy_t::drop_ref ( )
inline

Definition at line 174 of file ttg_data_copy.h.

◆ get_next_task()

parsec_task_t* ttg_parsec::detail::ttg_data_copy_t::get_next_task ( ) const
inline

Definition at line 162 of file ttg_data_copy.h.

◆ get_ptr()

virtual void* ttg_parsec::detail::ttg_data_copy_t::get_ptr ( )
pure virtual

◆ has_ref()

bool ttg_parsec::detail::ttg_data_copy_t::has_ref ( )
inline

Definition at line 178 of file ttg_data_copy.h.

◆ increment_readers()

template<bool Atomic = true>
int ttg_parsec::detail::ttg_data_copy_t::increment_readers ( )
inline

Definition at line 120 of file ttg_data_copy.h.

◆ is_mutable()

bool ttg_parsec::detail::ttg_data_copy_t::is_mutable ( ) const
inline

Definition at line 107 of file ttg_data_copy.h.

◆ mark_mutable()

void ttg_parsec::detail::ttg_data_copy_t::mark_mutable ( )
inline

Definition at line 112 of file ttg_data_copy.h.

◆ num_readers()

int ttg_parsec::detail::ttg_data_copy_t::num_readers ( ) const
inline

Definition at line 155 of file ttg_data_copy.h.

◆ num_ref()

int32_t ttg_parsec::detail::ttg_data_copy_t::num_ref ( ) const
inline

Definition at line 182 of file ttg_data_copy.h.

◆ operator=() [1/2]

ttg_data_copy_t& ttg_parsec::detail::ttg_data_copy_t::operator= ( const ttg_data_copy_t c)
inline

Definition at line 95 of file ttg_data_copy.h.

◆ operator=() [2/2]

ttg_data_copy_t& ttg_parsec::detail::ttg_data_copy_t::operator= ( ttg_data_copy_t &&  c)
inline

Definition at line 84 of file ttg_data_copy.h.

◆ reset_readers()

void ttg_parsec::detail::ttg_data_copy_t::reset_readers ( )
inline

Reset the number of readers to read-only with a single reader.

Definition at line 133 of file ttg_data_copy.h.

◆ set_next_task()

void ttg_parsec::detail::ttg_data_copy_t::set_next_task ( parsec_task_t *  task)
inline

Definition at line 166 of file ttg_data_copy.h.

Member Data Documentation

◆ m_next_task

parsec_task_t* ttg_parsec::detail::ttg_data_copy_t::m_next_task = nullptr
protected

Definition at line 191 of file ttg_data_copy.h.

◆ m_readers

int32_t ttg_parsec::detail::ttg_data_copy_t::m_readers = 1
protected

Definition at line 192 of file ttg_data_copy.h.

◆ m_refs

std::atomic<int32_t> ttg_parsec::detail::ttg_data_copy_t::m_refs = 1
protected

Definition at line 193 of file ttg_data_copy.h.

◆ mutable_tag

constexpr int ttg_parsec::detail::ttg_data_copy_t::mutable_tag = std::numeric_limits<int>::min()
staticconstexpr

Definition at line 61 of file ttg_data_copy.h.


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