26#ifndef __DAOS_EVENT_H__
27#define __DAOS_EVENT_H__
29#if defined(__cplusplus)
33#include <daos_types.h>
34#include <daos_errno.h>
36#if !defined(container_of)
41# define container_of(ptr, type, member) \
42 ((type *)((char *)(ptr)-(char *)(&((type *)0)->member)))
59#define DAOS_EQ_DESTROY_FORCE 1
91 int64_t timeout,
unsigned int nevents, daos_event_t **events);
115 unsigned int nevents, daos_event_t **events);
139daos_event_init(daos_event_t *ev,
daos_handle_t eqh, daos_event_t *parent);
156daos_event_fini(daos_event_t *ev);
169daos_event_next(daos_event_t *parent, daos_event_t *child);
190daos_event_test(
struct daos_event *ev, int64_t timeout,
bool *flag);
192typedef int (*daos_event_comp_cb_t)(
void *, daos_event_t *, int);
207daos_event_register_comp_cb(
struct daos_event *ev, daos_event_comp_cb_t cb,
231daos_event_parent_barrier(
struct daos_event *ev);
244daos_event_abort(daos_event_t *ev);
246#if defined(__cplusplus)