35 #ifndef COROSYNC_CMAP_H_DEFINED 36 #define COROSYNC_CMAP_H_DEFINED 69 #define CMAP_KEYNAME_MAXLEN 255 73 #define CMAP_KEYNAME_MINLEN 3 78 #define CMAP_TRACK_ADD 4 79 #define CMAP_TRACK_DELETE 1 80 #define CMAP_TRACK_MODIFY 2 87 #define CMAP_TRACK_PREFIX 8 125 cmap_track_handle_t cmap_track_handle,
127 const char *key_name,
139 cmap_handle_t *handle);
146 cmap_handle_t handle);
155 cmap_handle_t handle,
164 cmap_handle_t handle,
173 cmap_handle_t handle,
174 const void **context);
183 cmap_handle_t handle,
184 const void *context);
195 cmap_handle_t handle,
196 const char *key_name,
240 cmap_handle_t handle,
241 const char *key_name,
310 cmap_handle_t handle,
311 cmap_iter_handle_t iter_handle,
339 cmap_handle_t handle,
340 const char *key_name,
344 cmap_track_handle_t *cmap_track_handle);
cs_error_t cmap_set_uint64(cmap_handle_t handle, const char *key_name, uint64_t value)
cs_error_t cmap_get_uint8(cmap_handle_t handle, const char *key_name, uint8_t *u8)
cs_error_t cmap_set_uint32(cmap_handle_t handle, const char *key_name, uint32_t value)
cs_error_t cmap_set(cmap_handle_t handle, const char *key_name, const void *value, size_t value_len, cmap_value_types_t type)
Store value in cmap.
cs_error_t cmap_track_add(cmap_handle_t handle, const char *key_name, int32_t track_type, cmap_notify_fn_t notify_fn, void *user_data, cmap_track_handle_t *cmap_track_handle)
Add tracking function for given key_name.
cs_error_t cmap_iter_next(cmap_handle_t handle, cmap_iter_handle_t iter_handle, char key_name[], size_t *value_len, cmap_value_types_t *type)
Return next item in iterator iter.
cmap_handle_t cmap_handle
cs_error_t cmap_initialize(cmap_handle_t *handle)
Create a new cmap connection.
cs_error_t cmap_get_uint16(cmap_handle_t handle, const char *key_name, uint16_t *u16)
cs_error_t cmap_iter_init(cmap_handle_t handle, const char *prefix, cmap_iter_handle_t *cmap_iter_handle)
Initialize iterator with given prefix.
cs_error_t cmap_get_int64(cmap_handle_t handle, const char *key_name, int64_t *i64)
cs_error_t cmap_inc(cmap_handle_t handle, const char *key_name)
Increment value of key_name if it is [u]int* type.
cs_error_t cmap_track_delete(cmap_handle_t handle, cmap_track_handle_t track_handle)
Delete track created previously by cmap_track_add.
Structure passed as new_value and old_value in change callback.
void(* cmap_notify_fn_t)(cmap_handle_t cmap_handle, cmap_track_handle_t cmap_track_handle, int32_t event, const char *key_name, struct cmap_notify_value new_value, struct cmap_notify_value old_value, void *user_data)
Prototype for notify callback function.
cs_error_t cmap_iter_finalize(cmap_handle_t handle, cmap_iter_handle_t iter_handle)
Finalize iterator.
cs_error_t cmap_get(cmap_handle_t handle, const char *key_name, void *value, size_t *value_len, cmap_value_types_t *type)
Retrieve value of key key_name and store it in user preallocated value pointer.
cs_error_t cmap_get_double(cmap_handle_t handle, const char *key_name, double *dbl)
cs_error_t cmap_set_double(cmap_handle_t handle, const char *key_name, double value)
cs_error_t cmap_get_uint32(cmap_handle_t handle, const char *key_name, uint32_t *u32)
cs_error_t cmap_get_float(cmap_handle_t handle, const char *key_name, float *flt)
cs_error_t cmap_get_uint64(cmap_handle_t handle, const char *key_name, uint64_t *u64)
cs_error_t
The cs_error_t enum.
uint64_t cmap_track_handle_t
cs_dispatch_flags_t
The cs_dispatch_flags_t enum.
cs_error_t cmap_set_string(cmap_handle_t handle, const char *key_name, const char *value)
cs_error_t cmap_set_uint8(cmap_handle_t handle, const char *key_name, uint8_t value)
cs_error_t cmap_get_string(cmap_handle_t handle, const char *key_name, char **str)
Shortcut for cmap_get for string type.
cs_error_t cmap_delete(cmap_handle_t handle, const char *key_name)
Deletes key from cmap database.
cs_error_t cmap_dispatch(cmap_handle_t handle, cs_dispatch_flags_t dispatch_types)
Dispatch data from service.
uint64_t cmap_iter_handle_t
cs_error_t cmap_fd_get(cmap_handle_t handle, int *fd)
Get a file descriptor on which to poll.
cs_error_t cmap_set_int64(cmap_handle_t handle, const char *key_name, int64_t value)
cs_error_t cmap_get_int8(cmap_handle_t handle, const char *key_name, int8_t *i8)
cmap_value_types_t
Possible types of value.
cs_error_t cmap_set_int32(cmap_handle_t handle, const char *key_name, int32_t value)
cs_error_t cmap_context_set(cmap_handle_t handle, const void *context)
cmap_context_set
cs_error_t cmap_finalize(cmap_handle_t handle)
Close the cmap handle.
cs_error_t cmap_get_int32(cmap_handle_t handle, const char *key_name, int32_t *i32)
cs_error_t cmap_dec(cmap_handle_t handle, const char *key_name)
Decrement value of key_name if it is [u]int* type.
cs_error_t cmap_set_uint16(cmap_handle_t handle, const char *key_name, uint16_t value)
cs_error_t cmap_context_get(cmap_handle_t handle, const void **context)
cmap_context_get
cs_error_t cmap_set_int8(cmap_handle_t handle, const char *key_name, int8_t value)
cs_error_t cmap_get_int16(cmap_handle_t handle, const char *key_name, int16_t *i16)
cs_error_t cmap_set_int16(cmap_handle_t handle, const char *key_name, int16_t value)
cs_error_t cmap_set_float(cmap_handle_t handle, const char *key_name, float value)