13#if defined(__cplusplus)
25#include <cart/types.h>
27#include <daos_errno.h>
30#define DAOS_SYS_NAME_MAX 15
33#define DAOS_SYS_INFO_STRING_MAX 63
39typedef uint64_t daos_size_t;
40typedef uint64_t daos_off_t;
42#define crt_proc_daos_key_t crt_proc_d_iov_t
43#define crt_proc_daos_size_t crt_proc_uint64_t
44#define crt_proc_daos_epoch_t crt_proc_uint64_t
47#define DAOS_HKEY_MAX 32
50 DAOS_ANCHOR_TYPE_ZERO = 0,
51 DAOS_ANCHOR_TYPE_HKEY = 1,
52 DAOS_ANCHOR_TYPE_KEY = 2,
53 DAOS_ANCHOR_TYPE_EOF = 3,
56#define DAOS_ANCHOR_BUF_MAX 104
63 uint8_t da_buf[DAOS_ANCHOR_BUF_MAX];
66#define DAOS_ANCHOR_INIT { .da_type = DAOS_ANCHOR_TYPE_ZERO, \
69 .da_sub_anchors = 0, \
77#define DAOS_HDL_INVAL ((daos_handle_t){0})
78#define DAOS_TX_NONE DAOS_HDL_INVAL
83 return hdl.cookie == 0;
89 return !daos_handle_is_inval(hdl);
103#define DAOS_PC_RO (1U << 0)
104#define DAOS_PC_RW (1U << 1)
105#define DAOS_PC_EX (1U << 2)
107#define DAOS_PC_NBITS 3
108#define DAOS_PC_MASK ((1U << DAOS_PC_NBITS) - 1)
113typedef uint64_t daos_epoch_t;
123#define DAOS_EPOCH_MAX (~0ULL)
125typedef d_iov_t daos_key_t;
142#define DAOS_EQ_WAIT -1
144#define DAOS_EQ_NOWAIT 0
148 DAOS_EQR_COMPLETED = (1),
150 DAOS_EQR_WAITING = (1 << 1),
152 DAOS_EQR_ALL = (DAOS_EQR_COMPLETED | DAOS_EQR_WAITING),
188 DAOS_HTYPE_ARRAY = 9,
208#define DAOS_ATTR_NAME_MAX 511
210#if defined(__cplusplus)
struct daos_event::@22 ev_private