summaryrefslogtreecommitdiffstats
path: root/src/H5VLconnector.h
diff options
context:
space:
mode:
authorJerome Soumagne <jsoumagne@hdfgroup.org>2019-09-19 19:55:03 (GMT)
committerJerome Soumagne <jsoumagne@hdfgroup.org>2019-10-08 19:30:24 (GMT)
commitfa6fdde1bfb8a29cfc86a4b441c49a63f15fd109 (patch)
treef177a35a87255c46747e497c4281d4843967eee6 /src/H5VLconnector.h
parenteaa65c862b09b399fc4727e664b56b648cfb37d2 (diff)
downloadhdf5-fa6fdde1bfb8a29cfc86a4b441c49a63f15fd109.zip
hdf5-fa6fdde1bfb8a29cfc86a4b441c49a63f15fd109.tar.gz
hdf5-fa6fdde1bfb8a29cfc86a4b441c49a63f15fd109.tar.bz2
Fix H5VL_blob_get to return size of blob
Fix const in blob API Add H5HG_HEAP_ID_SIZE macro to return native blob size Add maximum size for blobs Fix blob API callbacks to pass VOL file object Add public wrappers for blob VOL API Implement passthrough blob callbacks Update H5Tvlen after callback changes Update trace information for H5VL blob routines Fix public header inclusion in native and passthru headers
Diffstat (limited to 'src/H5VLconnector.h')
-rw-r--r--src/H5VLconnector.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/H5VLconnector.h b/src/H5VLconnector.h
index c554dab..1221d88 100644
--- a/src/H5VLconnector.h
+++ b/src/H5VLconnector.h
@@ -37,6 +37,8 @@
#define H5VL_CAP_FLAG_NONE 0 /* No special connector capabilities */
#define H5VL_CAP_FLAG_THREADSAFE 0x01 /* Connector is threadsafe */
+/* The maximum size allowed for blobs */
+#define H5VL_MAX_BLOB_ID_SIZE (16) /* Allow for 128-bits blob IDs */
/*******************/
/* Public Typedefs */
@@ -365,10 +367,10 @@ typedef struct H5VL_request_class_t {
/* 'blob' routines */
typedef struct H5VL_blob_class_t {
- herr_t (*put)(void *blob, size_t size, void *ctx, void *id);
- herr_t (*get)(const void *id, void *ctx, void *blob);
- herr_t (*specific)(void *id, H5VL_blob_specific_t specific_type, va_list arguments);
- herr_t (*optional)(void *id, va_list arguments);
+ herr_t (*put)(void *obj, const void *buf, size_t size, void *blob_id, void *ctx);
+ herr_t (*get)(void *obj, const void *blob_id, void *buf, size_t *size, void *ctx);
+ herr_t (*specific)(void *obj, void *blob_id, H5VL_blob_specific_t specific_type, va_list arguments);
+ herr_t (*optional)(void *obj, void *blob_id, va_list arguments);
} H5VL_blob_class_t;
/*