corosync 3.1.7
Data Structures | Macros | Typedefs | Enumerations | Functions
cmap.h File Reference
#include <corosync/corotypes.h>
#include <corosync/hdb.h>
Include dependency graph for cmap.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  cmap_notify_value
 Structure passed as new_value and old_value in change callback. More...
 

Macros

#define CMAP_KEYNAME_MAXLEN   255
 
#define CMAP_KEYNAME_MINLEN   3
 
#define CMAP_TRACK_ADD   4
 
#define CMAP_TRACK_DELETE   1
 
#define CMAP_TRACK_MODIFY   2
 
#define CMAP_TRACK_PREFIX   8
 Whole prefix is tracked, instead of key only (so "totem." tracking means that "totem.nodeid", "totem.version", ... applies). More...
 

Typedefs

typedef uint64_t cmap_handle_t
 
typedef uint64_t cmap_iter_handle_t
 
typedef uint64_t cmap_track_handle_t
 
typedef 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. More...
 

Enumerations

enum  cmap_value_types_t {
  CMAP_VALUETYPE_INT8 = 1 , CMAP_VALUETYPE_UINT8 = 2 , CMAP_VALUETYPE_INT16 = 3 , CMAP_VALUETYPE_UINT16 = 4 ,
  CMAP_VALUETYPE_INT32 = 5 , CMAP_VALUETYPE_UINT32 = 6 , CMAP_VALUETYPE_INT64 = 7 , CMAP_VALUETYPE_UINT64 = 8 ,
  CMAP_VALUETYPE_FLOAT = 9 , CMAP_VALUETYPE_DOUBLE = 10 , CMAP_VALUETYPE_STRING = 11 , CMAP_VALUETYPE_BINARY = 12
}
 Possible types of value. More...
 
enum  cmap_map_t { CMAP_MAP_DEFAULT = 0 , CMAP_MAP_ICMAP = 0 , CMAP_MAP_STATS = 1 }
 

Functions

cs_error_t cmap_initialize (cmap_handle_t *handle)
 Create a new cmap connection. More...
 
cs_error_t cmap_initialize_map (cmap_handle_t *handle, cmap_map_t map)
 Create a new cmap connection on a specified map. More...
 
cs_error_t cmap_finalize (cmap_handle_t handle)
 Close the cmap handle. More...
 
cs_error_t cmap_fd_get (cmap_handle_t handle, int *fd)
 Get a file descriptor on which to poll. More...
 
cs_error_t cmap_dispatch (cmap_handle_t handle, cs_dispatch_flags_t dispatch_types)
 Dispatch data from service. More...
 
cs_error_t cmap_context_get (cmap_handle_t handle, const void **context)
 cmap_context_get More...
 
cs_error_t cmap_context_set (cmap_handle_t handle, const void *context)
 cmap_context_set More...
 
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. More...
 
cs_error_t cmap_set_int8 (cmap_handle_t handle, const char *key_name, int8_t value)
 
cs_error_t cmap_set_uint8 (cmap_handle_t handle, const char *key_name, uint8_t value)
 
cs_error_t cmap_set_int16 (cmap_handle_t handle, const char *key_name, int16_t value)
 
cs_error_t cmap_set_uint16 (cmap_handle_t handle, const char *key_name, uint16_t value)
 
cs_error_t cmap_set_int32 (cmap_handle_t handle, const char *key_name, int32_t value)
 
cs_error_t cmap_set_uint32 (cmap_handle_t handle, const char *key_name, uint32_t value)
 
cs_error_t cmap_set_int64 (cmap_handle_t handle, const char *key_name, int64_t value)
 
cs_error_t cmap_set_uint64 (cmap_handle_t handle, const char *key_name, uint64_t value)
 
cs_error_t cmap_set_float (cmap_handle_t handle, const char *key_name, float value)
 
cs_error_t cmap_set_double (cmap_handle_t handle, const char *key_name, double value)
 
cs_error_t cmap_set_string (cmap_handle_t handle, const char *key_name, const char *value)
 
cs_error_t cmap_delete (cmap_handle_t handle, const char *key_name)
 Deletes key from cmap database. More...
 
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. More...
 
cs_error_t cmap_get_int8 (cmap_handle_t handle, const char *key_name, int8_t *i8)
 
cs_error_t cmap_get_uint8 (cmap_handle_t handle, const char *key_name, uint8_t *u8)
 
cs_error_t cmap_get_int16 (cmap_handle_t handle, const char *key_name, int16_t *i16)
 
cs_error_t cmap_get_uint16 (cmap_handle_t handle, const char *key_name, uint16_t *u16)
 
cs_error_t cmap_get_int32 (cmap_handle_t handle, const char *key_name, int32_t *i32)
 
cs_error_t cmap_get_uint32 (cmap_handle_t handle, const char *key_name, uint32_t *u32)
 
cs_error_t cmap_get_int64 (cmap_handle_t handle, const char *key_name, int64_t *i64)
 
cs_error_t cmap_get_uint64 (cmap_handle_t handle, const char *key_name, uint64_t *u64)
 
cs_error_t cmap_get_float (cmap_handle_t handle, const char *key_name, float *flt)
 
cs_error_t cmap_get_double (cmap_handle_t handle, const char *key_name, double *dbl)
 
cs_error_t cmap_get_string (cmap_handle_t handle, const char *key_name, char **str)
 Shortcut for cmap_get for string type. More...
 
cs_error_t cmap_inc (cmap_handle_t handle, const char *key_name)
 Increment value of key_name if it is [u]int* type. More...
 
cs_error_t cmap_dec (cmap_handle_t handle, const char *key_name)
 Decrement value of key_name if it is [u]int* type. More...
 
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. More...
 
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. More...
 
cs_error_t cmap_iter_finalize (cmap_handle_t handle, cmap_iter_handle_t iter_handle)
 Finalize iterator. More...
 
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. More...
 
cs_error_t cmap_track_delete (cmap_handle_t handle, cmap_track_handle_t track_handle)
 Delete track created previously by cmap_track_add. More...