Realm
A distributed, event-based tasking library
Loading...
Searching...
No Matches
Realm::PendingCompletion Class Reference

#include <gasnetex_internal.h>

Collaboration diagram for Realm::PendingCompletion:

Public Types

typedef char Storage_unaligned[TOTAL_CAPACITY]
 

Public Member Functions

 PendingCompletion ()
 
void * add_local_completion (size_t bytes, bool late_ok=false)
 
void * add_remote_completion (size_t bytes)
 
bool mark_ready (unsigned exp_local, unsigned exp_remote)
 
bool has_local_completions ()
 
bool has_remote_completions ()
 
bool invoke_local_completions ()
 
bool invoke_remote_completions ()
 
 REALM_ALIGNED_TYPE_CONST (Storage_aligned, Storage_unaligned, Realm::CompletionCallbackBase::ALIGNMENT)
 

Public Attributes

int index
 
PendingCompletionnext_free
 
PendingCompletionManagermanager
 
Realm::atomic< unsigned > state
 
Realm::atomic< unsigned > local_left
 
Realm::atomic< unsigned > remote_left
 
size_t local_bytes
 
size_t remote_bytes
 
Storage_aligned storage
 

Static Public Attributes

static const unsigned LOCAL_PENDING_BIT = 1
 
static const unsigned REMOTE_PENDING_BIT = 2
 
static const unsigned READY_BIT = 4
 
static const size_t TOTAL_CAPACITY = 256
 

Member Typedef Documentation

◆ Storage_unaligned

typedef char Realm::PendingCompletion::Storage_unaligned[TOTAL_CAPACITY]

Constructor & Destructor Documentation

◆ PendingCompletion()

Realm::PendingCompletion::PendingCompletion ( )

Member Function Documentation

◆ add_local_completion()

void * Realm::PendingCompletion::add_local_completion ( size_t  bytes,
bool  late_ok = false 
)

◆ add_remote_completion()

void * Realm::PendingCompletion::add_remote_completion ( size_t  bytes)

◆ has_local_completions()

bool Realm::PendingCompletion::has_local_completions ( )

◆ has_remote_completions()

bool Realm::PendingCompletion::has_remote_completions ( )

◆ invoke_local_completions()

bool Realm::PendingCompletion::invoke_local_completions ( )

◆ invoke_remote_completions()

bool Realm::PendingCompletion::invoke_remote_completions ( )

◆ mark_ready()

bool Realm::PendingCompletion::mark_ready ( unsigned  exp_local,
unsigned  exp_remote 
)

◆ REALM_ALIGNED_TYPE_CONST()

Realm::PendingCompletion::REALM_ALIGNED_TYPE_CONST ( Storage_aligned  ,
Storage_unaligned  ,
Realm::CompletionCallbackBase::ALIGNMENT   
)

Member Data Documentation

◆ index

int Realm::PendingCompletion::index

◆ local_bytes

size_t Realm::PendingCompletion::local_bytes

◆ local_left

Realm::atomic<unsigned> Realm::PendingCompletion::local_left

◆ LOCAL_PENDING_BIT

const unsigned Realm::PendingCompletion::LOCAL_PENDING_BIT = 1
static

◆ manager

PendingCompletionManager* Realm::PendingCompletion::manager

◆ next_free

PendingCompletion* Realm::PendingCompletion::next_free

◆ READY_BIT

const unsigned Realm::PendingCompletion::READY_BIT = 4
static

◆ remote_bytes

size_t Realm::PendingCompletion::remote_bytes

◆ remote_left

Realm::atomic<unsigned> Realm::PendingCompletion::remote_left

◆ REMOTE_PENDING_BIT

const unsigned Realm::PendingCompletion::REMOTE_PENDING_BIT = 2
static

◆ state

Realm::atomic<unsigned> Realm::PendingCompletion::state

◆ storage

Storage_aligned Realm::PendingCompletion::storage

◆ TOTAL_CAPACITY

const size_t Realm::PendingCompletion::TOTAL_CAPACITY = 256
static

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