diff options
Diffstat (limited to 'src/H5Dprivate.h')
-rw-r--r-- | src/H5Dprivate.h | 37 |
1 files changed, 28 insertions, 9 deletions
diff --git a/src/H5Dprivate.h b/src/H5Dprivate.h index f1180a3..5849598 100644 --- a/src/H5Dprivate.h +++ b/src/H5Dprivate.h @@ -28,6 +28,7 @@ #include "H5Sprivate.h" /* Dataspaces */ #include "H5Zprivate.h" /* Data filters */ + /**************************/ /* Library Private Macros */ /**************************/ @@ -43,12 +44,14 @@ /* ======== Dataset creation property names ======== */ #define H5D_CRT_LAYOUT_NAME "layout" /* Storage layout */ -#define H5D_CRT_CHUNK_DIM_NAME "chunk_ndims" /* Chunk dimensionality */ -#define H5D_CRT_CHUNK_SIZE_NAME "chunk_size" /* Chunk size */ #define H5D_CRT_FILL_VALUE_NAME "fill_value" /* Fill value */ #define H5D_CRT_ALLOC_TIME_STATE_NAME "alloc_time_state" /* Space allocation time state */ #define H5D_CRT_EXT_FILE_LIST_NAME "efl" /* External file list */ -#define H5D_CRT_DATA_PIPELINE_NAME "pline" /* Data filter pipeline */ + +/* ======== Dataset access property names ======== */ +#define H5D_ACS_DATA_CACHE_NUM_SLOTS_NAME "rdcc_nslots" /* Size of raw data chunk cache(slots) */ +#define H5D_ACS_DATA_CACHE_BYTE_SIZE_NAME "rdcc_nbytes" /* Size of raw data chunk cache(bytes) */ +#define H5D_ACS_PREEMPT_READ_CHUNKS_NAME "rdcc_w0" /* Preemption read chunks first */ /* ======== Data transfer properties ======== */ #define H5D_XFER_MAX_TEMP_BUF_NAME "max_temp_buf" /* Maximum temp buffer size */ @@ -82,9 +85,13 @@ #define H5D_XFER_COLL_CHUNK_LINK_NUM_FALSE_NAME "coll_chunk_link_false" #define H5D_XFER_COLL_CHUNK_MULTI_RATIO_COLL_NAME "coll_chunk_multi_coll" #define H5D_XFER_COLL_CHUNK_MULTI_RATIO_IND_NAME "coll_chunk_multi_ind" +#define H5D_XFER_COLL_CHUNK_LINK_TO_MULTI "coll_chunk_link_mul"/* Internal transferring from link to multiple chunk */ +#define H5D_XFER_COLL_CHUNK_LINK_TO_MULTI_OPT "coll_chunk_link_mul_opt"/* Internal transferring from link opt to multiple chunk opt*/ + /* Definitions for all collective chunk instrumentation properties */ #define H5D_XFER_COLL_CHUNK_SIZE sizeof(unsigned) #define H5D_XFER_COLL_CHUNK_DEF 1 +#define H5D_XFER_COLL_CHUNK_FIX 0 #endif /* H5_HAVE_INSTRUMENTED_LIBRARY */ /* Default temporary buffer size */ @@ -99,6 +106,7 @@ #define H5D_VLEN_FREE NULL #define H5D_VLEN_FREE_INFO NULL + /****************************/ /* Library Private Typedefs */ /****************************/ @@ -126,25 +134,34 @@ typedef struct H5D_dxpl_cache_t { /* Typedef for cached dataset creation property list information */ typedef struct H5D_dcpl_cache_t { H5O_fill_t fill; /* Fill value info (H5D_CRT_FILL_VALUE_NAME) */ - H5O_pline_t pline; /* I/O pipeline info (H5D_CRT_DATA_PIPELINE_NAME) */ + H5O_pline_t pline; /* I/O pipeline info (H5O_CRT_PIPELINE_NAME) */ H5O_efl_t efl; /* External file list info (H5D_CRT_EXT_FILE_LIST_NAME) */ } H5D_dcpl_cache_t; +/* Callback information for copying datasets */ +typedef struct H5D_copy_file_ud_t { + H5O_copy_file_ud_common_t common; /* Shared information (must be first) */ + struct H5S_extent_t *src_space_extent; /* Copy of dataspace extent for dataset */ + H5T_t *src_dtype; /* Copy of datatype for dataset */ +} H5D_copy_file_ud_t; + + /*****************************/ /* Library Private Variables */ /*****************************/ + /******************************/ /* Library Private Prototypes */ /******************************/ H5_DLL herr_t H5D_init(void); -H5_DLL H5D_t *H5D_open(const H5G_loc_t *loc, hid_t dxpl_id); +H5_DLL H5D_t *H5D_open(const H5G_loc_t *loc, hid_t dapl_id, hid_t dxpl_id); H5_DLL herr_t H5D_close(H5D_t *dataset); H5_DLL H5O_loc_t *H5D_oloc(H5D_t *dataset); H5_DLL H5G_name_t *H5D_nameof(H5D_t *dataset); H5_DLL H5T_t *H5D_typeof(const H5D_t *dset); -H5_DLL herr_t H5D_flush(const H5F_t *f, hid_t dxpl_id, unsigned flags); +H5_DLL herr_t H5D_flush(const H5F_t *f, hid_t dxpl_id); /* Functions that operate on vlen data */ H5_DLL herr_t H5D_vlen_reclaim(hid_t type_id, H5S_t *space, hid_t plist_id, @@ -152,13 +169,15 @@ H5_DLL herr_t H5D_vlen_reclaim(hid_t type_id, H5S_t *space, hid_t plist_id, /* Functions that operate on contiguous storage */ H5_DLL herr_t H5D_contig_delete(H5F_t *f, hid_t dxpl_id, - const H5O_layout_t *layout); + const H5O_storage_t *store); /* Functions that operate on chunked storage */ -H5_DLL herr_t H5D_chunk_delete(H5F_t *f, hid_t dxpl_id, H5O_layout_t *layout); +H5_DLL herr_t H5D_chunk_idx_reset(H5O_storage_chunk_t *storage, hbool_t reset_addr); +H5_DLL herr_t H5D_chunk_delete(H5F_t *f, hid_t dxpl_id, H5O_t *oh, + H5O_storage_t *store); /* Functions that operate on indexed storage */ -H5_DLL herr_t H5D_istore_debug(H5F_t *f, hid_t dxpl_id, haddr_t addr, FILE * stream, +H5_DLL herr_t H5D_btree_debug(H5F_t *f, hid_t dxpl_id, haddr_t addr, FILE * stream, int indent, int fwidth, unsigned ndims); #endif /* _H5Dprivate_H */ |