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

#include <prealm.h>

Inheritance diagram for PRealm::Event:
Collaboration diagram for PRealm::Event:

Public Member Functions

 Event (void)
 
 Event (::realm_id_t i)
 
 Event (const Realm::Event &e)
 
 Event (const Event &rhs)=default
 
 Event (Event &&rhs)=default
 
Eventoperator= (const Realm::Event &e)
 
Eventoperator= (const Event &e)=default
 
Eventoperator= (Event &&rhs)=default
 
bool is_barrier (void) const
 
void wait (void) const
 
void wait_faultaware (bool &poisoned) const
 
- Public Member Functions inherited from Realm::Event
 Event ()=default
 
constexpr Event (id_t id)
 
constexpr operator id_t () const
 
bool operator< (const Event &rhs) const
 
bool operator== (const Event &rhs) const
 
bool operator!= (const Event &rhs) const
 
bool exists (void) const
 
bool has_triggered (void) const
 
void wait (void) const
 
void external_wait (void) const
 
bool external_timedwait (long long max_ns) const
 
bool has_triggered_faultaware (bool &poisoned) const
 
void wait_faultaware (bool &poisoned) const
 
void external_wait_faultaware (bool &poisoned) const
 
bool external_timedwait_faultaware (bool &poisoned, long long max_ns) const
 
void subscribe (void) const
 
void cancel_operation (const void *reason_data, size_t reason_size) const
 
void set_operation_priority (int new_priority) const
 

Static Public Member Functions

static Event merge_events (const Event *wait_for, size_t num_events)
 
static Event merge_events (Event ev1, Event ev2, Event ev3=NO_EVENT, Event ev4=NO_EVENT, Event ev5=NO_EVENT, Event ev6=NO_EVENT)
 
static Event merge_events (const std::set< Event > &wait_for)
 
static Event merge_events (const span< const Event > &wait_for)
 
static Event merge_events_ignorefaults (const Event *wait_for, size_t num_events)
 
static Event merge_events_ignorefaults (const span< const Event > &wait_for)
 
static Event merge_events_ignorefaults (const std::set< Event > &wait_for)
 
static Event ignorefaults (Event wait_for)
 
- Static Public Member Functions inherited from Realm::Event
static Event merge_events_ignorefaults (const Event *wait_for, size_t num_events)
 
static Event merge_events_ignorefaults (const span< const Event > &wait_for)
 
static Event merge_events_ignorefaults (const std::set< Event > &wait_for)
 
static Event ignorefaults (Event wait_for)
 
static void advise_event_ordering (Event happens_before, Event happens_after)
 
static void advise_event_ordering (const Event *happens_before, size_t num_events, Event happens_after, bool all_must_trigger=true)
 
static void advise_event_ordering (const span< Event > &happens_before, Event happens_after, bool all_must_trigger=true)
 
static Event merge_events (const Event *wait_for, size_t num_events)
 
static Event merge_events (Event ev1, Event ev2, Event ev3=NO_EVENT, Event ev4=NO_EVENT, Event ev5=NO_EVENT, Event ev6=NO_EVENT)
 
static Event merge_events (const std::set< Event > &wait_for)
 
static Event merge_events (const span< const Event > &wait_for)
 

Static Public Attributes

static const Event NO_EVENT
 
- Static Public Attributes inherited from Realm::Event
static const Event NO_EVENT
 The value should be usued to initialize an event handle. NO_EVENT is always in has triggered state .
 

Additional Inherited Members

- Public Types inherited from Realm::Event
typedef ::realm_id_t id_t
 
- Public Attributes inherited from Realm::Event
id_t id {REALM_NO_EVENT}
 

Constructor & Destructor Documentation

◆ Event() [1/5]

PRealm::Event::Event ( void  )
inline

◆ Event() [2/5]

PRealm::Event::Event ( ::realm_id_t  i)
inline

◆ Event() [3/5]

PRealm::Event::Event ( const Realm::Event e)
inline

◆ Event() [4/5]

PRealm::Event::Event ( const Event rhs)
default

◆ Event() [5/5]

PRealm::Event::Event ( Event &&  rhs)
default

Member Function Documentation

◆ ignorefaults()

static Event PRealm::Event::ignorefaults ( Event  wait_for)
static

◆ is_barrier()

bool PRealm::Event::is_barrier ( void  ) const

◆ merge_events() [1/4]

static Event PRealm::Event::merge_events ( const Event wait_for,
size_t  num_events 
)
static

◆ merge_events() [2/4]

static Event PRealm::Event::merge_events ( const span< const Event > &  wait_for)
static

◆ merge_events() [3/4]

static Event PRealm::Event::merge_events ( const std::set< Event > &  wait_for)
static

◆ merge_events() [4/4]

static Event PRealm::Event::merge_events ( Event  ev1,
Event  ev2,
Event  ev3 = NO_EVENT,
Event  ev4 = NO_EVENT,
Event  ev5 = NO_EVENT,
Event  ev6 = NO_EVENT 
)
static

◆ merge_events_ignorefaults() [1/3]

static Event PRealm::Event::merge_events_ignorefaults ( const Event wait_for,
size_t  num_events 
)
static

◆ merge_events_ignorefaults() [2/3]

static Event PRealm::Event::merge_events_ignorefaults ( const span< const Event > &  wait_for)
static

◆ merge_events_ignorefaults() [3/3]

static Event PRealm::Event::merge_events_ignorefaults ( const std::set< Event > &  wait_for)
static

◆ operator=() [1/3]

Event & PRealm::Event::operator= ( const Event e)
default

◆ operator=() [2/3]

Event & PRealm::Event::operator= ( const Realm::Event e)
inline

◆ operator=() [3/3]

Event & PRealm::Event::operator= ( Event &&  rhs)
default

◆ wait()

void PRealm::Event::wait ( void  ) const

◆ wait_faultaware()

void PRealm::Event::wait_faultaware ( bool &  poisoned) const

Member Data Documentation

◆ NO_EVENT

const Event PRealm::Event::NO_EVENT
static

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