Code

store: Store "data-store" information alongside metrics.
[sysdb.git] / src / core / store-private.h
index 0df3c7ba041c5eae961e116231c87605e46b0a47..6dc68c0c1fe6f837a55c61b1c92b5208d342cf58 100644 (file)
@@ -78,10 +78,22 @@ typedef struct {
 #define SVC(obj) ((sdb_service_t *)(obj))
 #define CONST_SVC(obj) ((const sdb_service_t *)(obj))
 
+typedef struct {
+       sdb_store_obj_t super;
+
+       sdb_avltree_t *attributes;
+       struct {
+               char *type;
+               char *id;
+       } store;
+} sdb_metric_t;
+#define METRIC(obj) ((sdb_metric_t *)(obj))
+
 typedef struct {
        sdb_store_obj_t super;
 
        sdb_avltree_t *services;
+       sdb_avltree_t *metrics;
        sdb_avltree_t *attributes;
 } sdb_host_t;
 #define HOST(obj) ((sdb_host_t *)(obj))
@@ -112,6 +124,13 @@ typedef struct {
 } attr_cond_t;
 #define ATTR_C(obj) ((attr_cond_t *)(obj))
 
+typedef struct {
+       sdb_store_cond_t super;
+       int field;
+       sdb_store_expr_t *expr;
+} obj_cond_t;
+#define OBJ_C(obj) ((obj_cond_t *)(obj))
+
 /*
  * matchers
  */