12#ifndef __DAOS_CONT_H__
13#define __DAOS_CONT_H__
15#if defined(__cplusplus)
34#define DAOS_COO_RO (1U << 0)
35#define DAOS_COO_RW (1U << 1)
36#define DAOS_COO_NOSLIP (1U << 2)
37#define DAOS_COO_FORCE (1U << 3)
39#define DAOS_COO_NBITS (4)
40#define DAOS_COO_MASK ((1U << DAOS_COO_NBITS) - 1)
465 void *
const buffers[],
size_t sizes[],
daos_event_t *ev);
481 void const *
const values[],
size_t const sizes[],
574#define DAOS_SNAPSHOT_MAX_LEN 128
683#if defined(__cplusplus)
686#define daos_cont_open daos_cont_open_cpp
700 uuid_unparse(cont, str);
704#define daos_cont_destroy daos_cont_destroy_cpp
716 uuid_unparse(cont, str);
720#define daos_cont_create daos_cont_create_cpp
730 return daos_cont_create1(poh, uuid, cont_prop, ev);
737#define daos_cont_open(poh, co, ...) \
741 const char *__str = NULL; \
742 if (d_is_string(co)) { \
743 __str = (const char *)(co); \
744 } else if (d_is_uuid(co)) { \
745 uuid_unparse((unsigned char *)(co), _str); \
748 _ret = daos_cont_open2((poh), __str, __VA_ARGS__); \
756#define daos_cont_destroy(poh, co, ...) \
760 const char *__str = NULL; \
761 if (d_is_string(co)) { \
762 __str = (const char *)(co); \
763 } else if (d_is_uuid(co)) { \
764 uuid_unparse((unsigned char *)(co), _str); \
767 _ret = daos_cont_destroy2((poh), __str, __VA_ARGS__); \
775#define daos_cont_create(poh, co, ...) \
779 if (d_is_uuid(co)) { \
780 _u = (uuid_t *)((unsigned char *)(co)); \
781 _ret = daos_cont_create((poh), _u, \
784 _u = (uuid_t *)(co); \
785 _ret = daos_cont_create2((poh), _u, \
int daos_cont_create_snap(daos_handle_t coh, daos_epoch_t *epoch, char *name, daos_event_t *ev)
int daos_cont_set_attr(daos_handle_t coh, int n, char const *const names[], void const *const values[], size_t const sizes[], daos_event_t *ev)
int daos_cont_delete_acl(daos_handle_t coh, enum daos_acl_principal_type type, d_string_t name, daos_event_t *ev)
int daos_cont_destroy2(daos_handle_t poh, const char *cont, int force, daos_event_t *ev)
int daos_cont_del_attr(daos_handle_t coh, int n, char const *const names[], daos_event_t *ev)
int daos_cont_create2(daos_handle_t poh, uuid_t *uuid, daos_prop_t *cont_prop, daos_event_t *ev)
int daos_cont_list_attr(daos_handle_t coh, char *buffer, size_t *size, daos_event_t *ev)
int daos_cont_update_acl(daos_handle_t coh, struct daos_acl *acl, daos_event_t *ev)
int daos_cont_local2global(daos_handle_t coh, d_iov_t *glob)
int daos_cont_set_owner(daos_handle_t coh, d_string_t user, d_string_t group, daos_event_t *ev)
int daos_cont_overwrite_acl(daos_handle_t coh, struct daos_acl *acl, daos_event_t *ev)
#define daos_cont_open(poh, co,...)
int daos_cont_close(daos_handle_t coh, daos_event_t *ev)
int daos_cont_destroy_snap(daos_handle_t coh, daos_epoch_range_t epr, daos_event_t *ev)
int daos_cont_list_snap(daos_handle_t coh, int *nr, daos_epoch_t *epochs, char **names, daos_anchor_t *anchor, daos_event_t *ev)
int daos_cont_create_snap_opt(daos_handle_t coh, daos_epoch_t *epoch, char *name, enum daos_snapshot_opts opts, daos_event_t *ev)
#define daos_cont_destroy(poh, co,...)
d_rank_list_t * daos_rank_list_parse(const char *str, const char *sep)
int daos_cont_aggregate(daos_handle_t coh, daos_epoch_t epoch, daos_event_t *ev)
int daos_cont_alloc_oids(daos_handle_t coh, daos_size_t num_oids, uint64_t *oid, daos_event_t *ev)
int daos_cont_global2local(daos_handle_t poh, d_iov_t glob, daos_handle_t *coh)
int daos_cont_open2(daos_handle_t poh, const char *cont, unsigned int flags, daos_handle_t *coh, daos_cont_info_t *info, daos_event_t *ev)
int daos_cont_create_with_label(daos_handle_t poh, const char *label, daos_prop_t *cont_prop, uuid_t *uuid, daos_event_t *ev)
int daos_cont_get_attr(daos_handle_t coh, int n, char const *const names[], void *const buffers[], size_t sizes[], daos_event_t *ev)
int daos_cont_rollback(daos_handle_t coh, daos_epoch_t epoch, daos_event_t *ev)
int daos_cont_get_acl(daos_handle_t container, daos_prop_t **acl_prop, daos_event_t *ev)
#define daos_cont_create(poh, co,...)
int daos_cont_status_clear(daos_handle_t coh, daos_event_t *ev)
int daos_cont_set_prop(daos_handle_t coh, daos_prop_t *prop, daos_event_t *ev)
int daos_cont_subscribe(daos_handle_t coh, daos_epoch_t *epoch, daos_event_t *ev)
int daos_cont_query(daos_handle_t container, daos_cont_info_t *info, daos_prop_t *cont_prop, daos_event_t *ev)
daos_epoch_t ci_lsnapshot