summaryrefslogtreecommitdiff
path: root/src/persistence_client_library_tree_helper.h
diff options
context:
space:
mode:
authorIngo Huerner <ingo.huerner@xse.de>2015-01-23 15:48:34 +0100
committerIngo Huerner <ingo.huerner@xse.de>2015-01-23 15:48:34 +0100
commit16239ca64c53eab04050a8a0672ef2520dad5773 (patch)
tree8068d472efba3d56642f13184a4b59323fa23084 /src/persistence_client_library_tree_helper.h
parent84210e9a13cf8b6b7496d0ed1615377a142cfe53 (diff)
downloadpersistence-client-library-16239ca64c53eab04050a8a0672ef2520dad5773.tar.gz
Further code improvements
Diffstat (limited to 'src/persistence_client_library_tree_helper.h')
-rw-r--r--src/persistence_client_library_tree_helper.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/persistence_client_library_tree_helper.h b/src/persistence_client_library_tree_helper.h
index 60ae99f..290a5ce 100644
--- a/src/persistence_client_library_tree_helper.h
+++ b/src/persistence_client_library_tree_helper.h
@@ -36,6 +36,9 @@ extern jsw_rbtree_t *gFileHandleTree;
/// tree to store OSS file handle information
extern jsw_rbtree_t *gOssFileHandleTree;
+/// the rb tree
+extern jsw_rbtree_t *gRb_tree_bl;
+
/// key handle data union definition
typedef union KeyHandleData_u_
@@ -84,6 +87,14 @@ typedef struct _FileHandleTreeItem_s
} FileHandleTreeItem_s;
+/// structure definition for a key value item
+typedef struct _key_value_s
+{
+ unsigned int key;
+ char* value;
+}key_value_s;
+
+
/**
* @brief Compare function for file handle tree item
@@ -141,5 +152,34 @@ void* kh_key_val_dup(void *p);
void kh_key_val_rel(void *p );
+/**
+ * @brief Compare function for key tree item
+ *
+ * @param p1 pointer to the first item to compare
+ * @param p2 pointer to the second item to compare
+ *
+ * @return 0 if key is equal; -1 if p1 < p2; 1 if p1 > p2
+ */
+int key_val_cmp(const void *p1, const void *p2 );
+
+
+/**
+ * @brief Duplicate function for key tree item
+ *
+ * @param p the pointer of the item to duplicate
+ *
+ * @return pointer to the duplicated item, on failure NULL
+ */
+void* key_val_dup(void *p);
+
+
+/**
+ * @brief Release function for key tree item
+ *
+ * @param p pointer tp the item to release
+ */
+void key_val_rel(void *p);
+
+
#endif /* PERSISTENCE_CLIENT_LIBRARY_TREE_HELPER_H */