summaryrefslogtreecommitdiffstats
path: root/src/H5C2private.h
diff options
context:
space:
mode:
authorJohn Mainzer <mainzer@hdfgroup.org>2008-02-25 10:01:56 (GMT)
committerJohn Mainzer <mainzer@hdfgroup.org>2008-02-25 10:01:56 (GMT)
commit738078322dd2b189ec1233c9ea59f218c2008740 (patch)
tree81ac2180a5f6eed1d65198de2abf2c6569bf48bb /src/H5C2private.h
parentcd571e4a45e5af71ae608388141e6b28a16f8171 (diff)
downloadhdf5-738078322dd2b189ec1233c9ea59f218c2008740.zip
hdf5-738078322dd2b189ec1233c9ea59f218c2008740.tar.gz
hdf5-738078322dd2b189ec1233c9ea59f218c2008740.tar.bz2
[svn-r14642] Folded initial version of Mike M's journal entry logging code into
the journaling branch. Added several new errors, and made many edits to Mike's code (don't worry Mike -- changes I made were on items I neglected to discuss with you). Serial test on Phoenix only.
Diffstat (limited to 'src/H5C2private.h')
-rw-r--r--src/H5C2private.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/src/H5C2private.h b/src/H5C2private.h
index b70e968..a829ed5 100644
--- a/src/H5C2private.h
+++ b/src/H5C2private.h
@@ -1408,5 +1408,56 @@ H5_DLL herr_t H5C2_unprotect(H5C2_t * cache_ptr,
H5_DLL herr_t H5C2_validate_resize_config(H5C2_auto_size_ctl_t * config_ptr,
unsigned int tests);
+
+/*****************************************************************************/
+/****************** journal buffer function definitions: *********************/
+/*****************************************************************************/
+
+typedef struct H5C2_jbrb_t H5C2_jbrb_t;
+
+H5_DLL herr_t H5C2_jb__flush_full_buffers(H5C2_jbrb_t * struct_ptr);
+
+H5_DLL herr_t H5C2_jb__flush(H5C2_jbrb_t * struct_ptr);
+
+H5_DLL herr_t H5C2_jb__write_to_buffer(H5C2_jbrb_t * struct_ptr,
+ size_t size,
+ const char * data);
+
+H5_DLL herr_t H5C2_jb__init(H5C2_jbrb_t * struct_ptr,
+ char * HDF5_file_name,
+ char * journal_file_name,
+ size_t buf_size,
+ int num_bufs,
+ hbool_t use_aio,
+ hbool_t human_readable);
+
+H5_DLL herr_t H5C2_jb__start_transaction(H5C2_jbrb_t * struct_ptr,
+ unsigned long trans_num);
+
+H5_DLL herr_t H5C2_jb__journal_entry(H5C2_jbrb_t * struct_ptr,
+ unsigned long trans_num,
+ haddr_t base_addr,
+ size_t length,
+ char * body);
+
+H5_DLL herr_t H5C2_jb__end_transaction(H5C2_jbrb_t * struct_ptr,
+ unsigned long trans_num);
+
+H5_DLL herr_t H5C2_jb__comment(H5C2_jbrb_t * struct_ptr,
+ char * comment_ptr);
+
+H5_DLL herr_t H5C2_jb__get_last_transaction_on_disk(H5C2_jbrb_t * struct_ptr,
+ unsigned long * trans_num_ptr);
+
+H5_DLL herr_t H5C2_jb__trunc(H5C2_jbrb_t * struct_ptr);
+
+H5_DLL herr_t H5C2_jb__takedown(H5C2_jbrb_t * struct_ptr);
+
+H5_DLL herr_t H5C2_jb__reconfigure(H5C2_jbrb_t * struct_ptr,
+ size_t new_buf_size,
+ int new_num_bufs,
+ hbool_t new_use_aio);
+
+
#endif /* !_H5C2private_H */