61 constexpr operator id_t()
const {
return id; }
165 Event ev6 = NO_EVENT);
192 Event happens_after,
bool all_must_trigger =
true);
194 Event happens_after,
bool all_must_trigger =
true);
225 void trigger(
Event wait_on = Event::NO_EVENT,
bool ignore_faults =
false)
const;
252 const void *initial_value = 0,
253 size_t initial_value_size = 0);
271 const void *initial_value = 0,
272 size_t initial_value_size = 0);
281 size_t num_participants);
320 const void *reduce_value = 0,
size_t reduce_value_size = 0)
const;
414#include "realm/event.inl"
Barrier alter_arrival_count(int delta) const
void destroy_barrier(void)
Barrier advance_barrier(void) const
static const Barrier NO_BARRIER
Definition event.h:249
void arrive(unsigned count=1, Event wait_on=Event::NO_EVENT, const void *reduce_value=0, size_t reduce_value_size=0) const
static Barrier create_barrier(const Barrier::ParticipantInfo *expected_arrivals, size_t num_participants, ReductionOpID redop_id=0, const void *initial_value=0, size_t initial_value_size=0)
timestamp_t timestamp
Definition event.h:247
static Barrier create_barrier(unsigned expected_arrivals, ReductionOpID redop_id=0, const void *initial_value=0, size_t initial_value_size=0)
Barrier get_previous_phase(void) const
Barrier set_arrival_pattern(const Barrier::ParticipantInfo *expected_arrivals, size_t num_participants)
bool get_result(void *value, size_t value_size) const
::realm_barrier_timestamp_t timestamp_t
Definition event.h:245
static const ::realm_event_gen_t MAX_PHASES
Definition event.h:285
::realm_id_t id_t
Definition event.h:340
bool operator!=(const CompletionQueue &rhs) const
id_t id
Definition event.h:342
bool operator<(const CompletionQueue &rhs) const
size_t pop_events(Event *events, size_t max_events)
bool operator==(const CompletionQueue &rhs) const
void add_event(Event event)
void add_event_faultaware(Event event)
static const CompletionQueue NO_QUEUE
Definition event.h:347
static CompletionQueue create_completion_queue(size_t max_size)
Event get_nonempty_event(void)
void destroy(Event wait_on=Event::NO_EVENT)
bool has_triggered(void) const
static const Event NO_EVENT
The value should be usued to initialize an event handle. NO_EVENT is always in has triggered state .
Definition event.h:71
void set_operation_priority(int new_priority) const
bool has_triggered_faultaware(bool &poisoned) const
static Event merge_events_ignorefaults(const span< const Event > &wait_for)
static void advise_event_ordering(const Event *happens_before, size_t num_events, Event happens_after, bool all_must_trigger=true)
bool operator!=(const Event &rhs) const
bool operator==(const Event &rhs) const
::realm_id_t id_t
Definition event.h:52
void external_wait(void) const
constexpr Event(id_t id)
Definition event.h:57
static void advise_event_ordering(Event happens_before, Event happens_after)
void subscribe(void) const
static Event ignorefaults(Event wait_for)
static Event merge_events(const std::set< Event > &wait_for)
bool operator<(const Event &rhs) const
bool external_timedwait(long long max_ns) const
void external_wait_faultaware(bool &poisoned) const
bool external_timedwait_faultaware(bool &poisoned, long long max_ns) const
static Event merge_events_ignorefaults(const Event *wait_for, size_t num_events)
static Event merge_events_ignorefaults(const std::set< Event > &wait_for)
static Event merge_events(const span< const Event > &wait_for)
void cancel_operation(const void *reason_data, size_t reason_size) const
static void advise_event_ordering(const span< Event > &happens_before, Event happens_after, bool all_must_trigger=true)
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 Event *wait_for, size_t num_events)
void wait_faultaware(bool &poisoned) const
void trigger(Event wait_on=Event::NO_EVENT, bool ignore_faults=false) const
static const UserEvent NO_USER_EVENT
Definition event.h:233
constexpr UserEvent(id_t id)
Definition event.h:208
static UserEvent create_user_event(void)
#define REALM_PUBLIC_API
Definition compiler_support.h:217
Definition activemsg.h:38
::realm_address_space_t AddressSpace
Definition memory.h:31
::realm_reduction_op_id_t ReductionOpID
Definition event.h:38
unsigned long long realm_id_t
Definition realm_c.h:64
unsigned long long realm_barrier_timestamp_t
Definition realm_c.h:78
int realm_reduction_op_id_t
Definition realm_c.h:74
#define REALM_NO_EVENT
Definition realm_c.h:167
unsigned count
Definition event.h:257
AddressSpace address_space
Definition event.h:256