summaryrefslogtreecommitdiffstats
path: root/src/H5Fprivate.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/H5Fprivate.h')
-rw-r--r--src/H5Fprivate.h181
1 files changed, 39 insertions, 142 deletions
diff --git a/src/H5Fprivate.h b/src/H5Fprivate.h
index 168a156..ce18ef5 100644
--- a/src/H5Fprivate.h
+++ b/src/H5Fprivate.h
@@ -323,149 +323,48 @@ typedef struct H5F_t H5F_t;
# define H5F_OVERFLOW_HSIZET2OFFT(X) 0
#endif
-/* ========= File Creation properties ============ */
-/* Definitions for the size of the file user block in bytes */
-#define H5F_CRT_USER_BLOCK_NAME "block_size"
-#define H5F_CRT_USER_BLOCK_SIZE sizeof(hsize_t)
-#define H5F_CRT_USER_BLOCK_DEF 0
-/* Definitions for the 1/2 rank for symbol table leaf nodes */
-#define H5F_CRT_SYM_LEAF_NAME "symbol_leaf"
-#define H5F_CRT_SYM_LEAF_SIZE sizeof(unsigned)
-#define H5F_CRT_SYM_LEAF_DEF 4
-/* Definitions for the 1/2 rank for btree internal nodes */
-#define H5F_CRT_BTREE_RANK_NAME "btree_rank"
-#define H5F_CRT_BTREE_RANK_SIZE sizeof(unsigned[H5B_NUM_BTREE_ID])
-#define H5F_CRT_BTREE_RANK_DEF {HDF5_BTREE_SNODE_IK_DEF,HDF5_BTREE_ISTORE_IK_DEF}
-/* Definitions for byte number in an address */
-#define H5F_CRT_ADDR_BYTE_NUM_NAME "addr_byte_num"
-#define H5F_CRT_ADDR_BYTE_NUM_SIZE sizeof(size_t)
-#define H5F_CRT_ADDR_BYTE_NUM_DEF sizeof(haddr_t)
-/* Definitions for byte number for object size */
-#define H5F_CRT_OBJ_BYTE_NUM_NAME "obj_byte_num"
-#define H5F_CRT_OBJ_BYTE_NUM_SIZE sizeof(size_t)
-#define H5F_CRT_OBJ_BYTE_NUM_DEF sizeof(hsize_t)
-/* Definitions for version number of the superblock */
-#define H5F_CRT_SUPER_VERS_NAME "super_version"
-#define H5F_CRT_SUPER_VERS_SIZE sizeof(unsigned)
-#define H5F_CRT_SUPER_VERS_DEF HDF5_SUPERBLOCK_VERSION_DEF
-/* Definitions for free-space version number */
-#define H5F_CRT_FREESPACE_VERS_NAME "free_space_version"
-#define H5F_CRT_FREESPACE_VERS_SIZE sizeof(unsigned)
-#define H5F_CRT_FREESPACE_VERS_DEF HDF5_FREESPACE_VERSION
-/* Definitions for object directory version number */
-#define H5F_CRT_OBJ_DIR_VERS_NAME "obj_dir_version"
-#define H5F_CRT_OBJ_DIR_VERS_SIZE sizeof(unsigned)
-#define H5F_CRT_OBJ_DIR_VERS_DEF HDF5_OBJECTDIR_VERSION
-/* Definitions for shared-header format version */
-#define H5F_CRT_SHARE_HEAD_VERS_NAME "share_head_version"
-#define H5F_CRT_SHARE_HEAD_VERS_SIZE sizeof(unsigned)
-#define H5F_CRT_SHARE_HEAD_VERS_DEF HDF5_SHAREDHEADER_VERSION
+/* Sizes of object addresses & sizes in the file (in bytes) */
+#define H5F_OBJ_ADDR_SIZE sizeof(haddr_t)
+#define H5F_OBJ_SIZE_SIZE sizeof(hsize_t)
/* File-wide default character encoding can not yet be set via the file
* creation property list and is always ASCII. */
-#define H5F_CRT_DEFAULT_CSET H5T_CSET_ASCII
+#define H5F_DEFAULT_CSET H5T_CSET_ASCII
+
+/* ========= File Creation properties ============ */
+#define H5F_CRT_USER_BLOCK_NAME "block_size" /* Size of the file user block in bytes */
+#define H5F_CRT_SYM_LEAF_NAME "symbol_leaf" /* 1/2 rank for symbol table leaf nodes */
+#define H5F_CRT_BTREE_RANK_NAME "btree_rank" /* 1/2 rank for btree internal nodes */
+#define H5F_CRT_ADDR_BYTE_NUM_NAME "addr_byte_num" /* Byte number in an address */
+#define H5F_CRT_OBJ_BYTE_NUM_NAME "obj_byte_num" /* Byte number for object size */
+#define H5F_CRT_SUPER_VERS_NAME "super_version" /* Version number of the superblock */
+#define H5F_CRT_FREESPACE_VERS_NAME "free_space_version" /* Free-space version number */
+#define H5F_CRT_OBJ_DIR_VERS_NAME "obj_dir_version" /* Object directory version number */
+#define H5F_CRT_SHARE_HEAD_VERS_NAME "share_head_version" /* Shared-header format version */
/* ========= File Access properties ============ */
-/* Definitions for the initial metadata cache resize configuration */
-#define H5F_ACS_META_CACHE_INIT_CONFIG_NAME "mdc_initCacheCfg"
-#define H5F_ACS_META_CACHE_INIT_CONFIG_SIZE sizeof(H5AC_cache_config_t)
-#define H5F_ACS_META_CACHE_INIT_CONFIG_DEF H5AC__DEFAULT_CACHE_CONFIG
-
-/* Definitions for size of raw data chunk cache(elements) */
-#define H5F_ACS_DATA_CACHE_ELMT_SIZE_NAME "rdcc_nelmts"
-#define H5F_ACS_DATA_CACHE_ELMT_SIZE_SIZE sizeof(size_t)
-#define H5F_ACS_DATA_CACHE_ELMT_SIZE_DEF 521
-
-/* Definition for size of raw data chunk cache(bytes) */
-#define H5F_ACS_DATA_CACHE_BYTE_SIZE_NAME "rdcc_nbytes"
-#define H5F_ACS_DATA_CACHE_BYTE_SIZE_SIZE sizeof(size_t)
-#define H5F_ACS_DATA_CACHE_BYTE_SIZE_DEF (1024*1024)
-
-/* Definition for preemption read chunks first */
-#define H5F_ACS_PREEMPT_READ_CHUNKS_NAME "rdcc_w0"
-#define H5F_ACS_PREEMPT_READ_CHUNKS_SIZE sizeof(double)
-#define H5F_ACS_PREEMPT_READ_CHUNKS_DEF 0.75
-
-/* Definition for threshold for alignment */
-#define H5F_ACS_ALIGN_THRHD_NAME "threshold"
-#define H5F_ACS_ALIGN_THRHD_SIZE sizeof(hsize_t)
-#define H5F_ACS_ALIGN_THRHD_DEF 1
-
-/* Definition for alignment */
-#define H5F_ACS_ALIGN_NAME "align"
-#define H5F_ACS_ALIGN_SIZE sizeof(hsize_t)
-#define H5F_ACS_ALIGN_DEF 1
-
-/* Definition for minimum metadata allocation block size (when
- aggregating metadata allocations. */
-#define H5F_ACS_META_BLOCK_SIZE_NAME "meta_block_size"
-#define H5F_ACS_META_BLOCK_SIZE_SIZE sizeof(hsize_t)
-#define H5F_ACS_META_BLOCK_SIZE_DEF 2048
-
-/* Definition for maximum sieve buffer size (when data sieving
- is allowed by file driver */
-#define H5F_ACS_SIEVE_BUF_SIZE_NAME "sieve_buf_size"
-#define H5F_ACS_SIEVE_BUF_SIZE_SIZE sizeof(size_t)
-#define H5F_ACS_SIEVE_BUF_SIZE_DEF (64*1024)
-
-/* Definition for minimum "small data" allocation block size (when
- aggregating "small" raw data allocations. */
-#define H5F_ACS_SDATA_BLOCK_SIZE_NAME "sdata_block_size"
-#define H5F_ACS_SDATA_BLOCK_SIZE_SIZE sizeof(hsize_t)
-#define H5F_ACS_SDATA_BLOCK_SIZE_DEF 2048
-
-/* Definition for garbage-collect references */
-#define H5F_ACS_GARBG_COLCT_REF_NAME "gc_ref"
-#define H5F_ACS_GARBG_COLCT_REF_SIZE sizeof(unsigned)
-#define H5F_ACS_GARBG_COLCT_REF_DEF 0
-
-/* Definition for file driver ID */
-#define H5F_ACS_FILE_DRV_ID_NAME "driver_id"
-#define H5F_ACS_FILE_DRV_ID_SIZE sizeof(hid_t)
-#define H5F_ACS_FILE_DRV_ID_DEF H5FD_SEC2
-
-/* Definition for file driver info */
-#define H5F_ACS_FILE_DRV_INFO_NAME "driver_info"
-#define H5F_ACS_FILE_DRV_INFO_SIZE sizeof(void*)
-#define H5F_ACS_FILE_DRV_INFO_DEF NULL
-
-/* Definition for file close degree */
-#define H5F_CLOSE_DEGREE_NAME "close_degree"
-#define H5F_CLOSE_DEGREE_SIZE sizeof(H5F_close_degree_t)
-#define H5F_CLOSE_DEGREE_DEF H5F_CLOSE_DEFAULT
-
-/* Definition for offset position in file for family file driver */
-#define H5F_ACS_FAMILY_OFFSET_NAME "family_offset"
-#define H5F_ACS_FAMILY_OFFSET_SIZE sizeof(hsize_t)
-#define H5F_ACS_FAMILY_OFFSET_DEF 0
-
-/* Definition for new member size of family driver. It's private
- * property only used by h5repart */
-#define H5F_ACS_FAMILY_NEWSIZE_NAME "family_newsize"
-#define H5F_ACS_FAMILY_NEWSIZE_SIZE sizeof(hsize_t)
-#define H5F_ACS_FAMILY_NEWSIZE_DEF 0
-
-/* Definition for whether to convert family to sec2 driver. It's private
- * property only used by h5repart */
-#define H5F_ACS_FAMILY_TO_SEC2_NAME "family_to_sec2"
-#define H5F_ACS_FAMILY_TO_SEC2_SIZE sizeof(hbool_t)
-#define H5F_ACS_FAMILY_TO_SEC2_DEF FALSE
-
-/* Definition for data type in multi file driver */
-#define H5F_ACS_MULTI_TYPE_NAME "multi_type"
-#define H5F_ACS_MULTI_TYPE_SIZE sizeof(H5FD_mem_t)
-#define H5F_ACS_MULTI_TYPE_DEF H5FD_MEM_DEFAULT
-
-/* Definition for 'use latest format version' flag */
-#define H5F_ACS_LATEST_FORMAT_NAME "latest_format"
-#define H5F_ACS_LATEST_FORMAT_SIZE sizeof(hbool_t)
-#define H5F_ACS_LATEST_FORMAT_DEF FALSE
+#define H5F_ACS_META_CACHE_INIT_CONFIG_NAME "mdc_initCacheCfg" /* Initial metadata cache resize configuration */
+#define H5F_ACS_DATA_CACHE_ELMT_SIZE_NAME "rdcc_nelmts" /* Size of raw data chunk cache(elements) */
+#define H5F_ACS_DATA_CACHE_BYTE_SIZE_NAME "rdcc_nbytes" /* Size of raw data chunk cache(bytes) */
+#define H5F_ACS_PREEMPT_READ_CHUNKS_NAME "rdcc_w0" /* Preemption read chunks first */
+#define H5F_ACS_ALIGN_THRHD_NAME "threshold" /* Threshold for alignment */
+#define H5F_ACS_ALIGN_NAME "align" /* Alignment */
+#define H5F_ACS_META_BLOCK_SIZE_NAME "meta_block_size" /* Minimum metadata allocation block size (when aggregating metadata allocations) */
+#define H5F_ACS_SIEVE_BUF_SIZE_NAME "sieve_buf_size" /* Maximum sieve buffer size (when data sieving is allowed by file driver) */
+#define H5F_ACS_SDATA_BLOCK_SIZE_NAME "sdata_block_size" /* Minimum "small data" allocation block size (when aggregating "small" raw data allocations) */
+#define H5F_ACS_GARBG_COLCT_REF_NAME "gc_ref" /* Garbage-collect references */
+#define H5F_ACS_FILE_DRV_ID_NAME "driver_id" /* File driver ID */
+#define H5F_ACS_FILE_DRV_INFO_NAME "driver_info" /* File driver info */
+#define H5F_ACS_CLOSE_DEGREE_NAME "close_degree" /* File close degree */
+#define H5F_ACS_FAMILY_OFFSET_NAME "family_offset" /* Offset position in file for family file driver */
+#define H5F_ACS_FAMILY_NEWSIZE_NAME "family_newsize" /* New member size of family driver. (private property only used by h5repart) */
+#define H5F_ACS_FAMILY_TO_SEC2_NAME "family_to_sec2" /* Whether to convert family to sec2 driver. (private property only used by h5repart) */
+#define H5F_ACS_MULTI_TYPE_NAME "multi_type" /* Data type in multi file driver */
+#define H5F_ACS_LATEST_FORMAT_NAME "latest_format" /* 'Use latest format version' flag */
/* ======================== File Mount properties ====================*/
-/* Definition for whether absolute symlinks local to file. */
-#define H5F_MNT_SYM_LOCAL_NAME "local"
-#define H5F_MNT_SYM_LOCAL_SIZE sizeof(hbool_t)
-#define H5F_MNT_SYM_LOCAL_DEF FALSE
+#define H5F_MNT_SYM_LOCAL_NAME "local" /* Whether absolute symlinks local to file. */
+
#ifdef H5_HAVE_PARALLEL
/* Which process writes metadata */
@@ -530,11 +429,8 @@ H5_DLL void H5F_addr_encode(const H5F_t *, uint8_t** /*in,out*/, haddr_t);
H5_DLL void H5F_addr_decode(const H5F_t *, const uint8_t** /*in,out*/,
haddr_t* /*out*/);
-/* Callback functions for file access class */
-H5_DLL herr_t H5F_acs_create(hid_t fapl_id, void *close_data);
-H5_DLL herr_t H5F_acs_close(hid_t fapl_id, void *close_data);
-H5_DLL herr_t H5F_acs_copy(hid_t new_fapl_id, hid_t old_fapl_id,
- void *close_data);
+/* File access property list callbacks */
+H5_DLL herr_t H5P_facc_close(hid_t dxpl_id, void *close_data);
/* Shared file list related routines */
H5_DLL herr_t H5F_sfile_assert_num(unsigned n);
@@ -546,4 +442,5 @@ H5_DLL herr_t H5F_fake_free(H5F_t *f);
/* Debugging functions */
H5_DLL herr_t H5F_debug(H5F_t *f, hid_t dxpl_id, FILE * stream, int indent, int fwidth);
-#endif
+#endif /* _H5Fprivate_H */
+