summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/H5F.c27
-rw-r--r--src/H5FDmpio.h2
-rw-r--r--src/H5Fprivate.h1
3 files changed, 29 insertions, 1 deletions
diff --git a/src/H5F.c b/src/H5F.c
index db39416..06cd4e7 100644
--- a/src/H5F.c
+++ b/src/H5F.c
@@ -2507,6 +2507,33 @@ H5F_sizeof_size(H5F_t *f)
/*-------------------------------------------------------------------------
+ * Function: H5F_get_intent
+ *
+ * Purpose: Quick and dirty routine to retrieve the file's 'driver_id' value
+ * (Mainly added to stop non-file routines from poking about in the
+ * H5F_t data structure)
+ *
+ * Return: 'driver_id' on success/abort on failure (shouldn't fail)
+ *
+ * Programmer: Quincey Koziol <koziol@ncsa.uiuc.edu>
+ * October 10, 2000
+ *
+ * Modifications:
+ *
+ *-------------------------------------------------------------------------
+ */
+hid_t
+H5F_get_driver_id(H5F_t *f)
+{
+ FUNC_ENTER(H5F_get_driver_id, 0);
+
+ assert(f);
+
+ FUNC_LEAVE(f->shared->lf->driver_id);
+}
+
+
+/*-------------------------------------------------------------------------
* Function: H5F_block_read
*
* Purpose: Reads some data from a file/server/etc into a buffer.
diff --git a/src/H5FDmpio.h b/src/H5FDmpio.h
index e7df072..c0f8068 100644
--- a/src/H5FDmpio.h
+++ b/src/H5FDmpio.h
@@ -44,7 +44,7 @@ typedef struct H5FD_mpio_dxpl_t {
#endif
#define IS_H5FD_MPIO(f) /* (H5F_t *f) */ \
- (H5FD_MPIO==f->shared->lf->driver_id)
+ (H5FD_MPIO==H5F_get_driver_id(f))
/* Function prototypes */
__DLL__ hid_t H5FD_mpio_init(void);
diff --git a/src/H5Fprivate.h b/src/H5Fprivate.h
index d643f9e..d007614 100644
--- a/src/H5Fprivate.h
+++ b/src/H5Fprivate.h
@@ -307,6 +307,7 @@ struct H5S_t;
/* Private functions, not part of the publicly documented API */
__DLL__ herr_t H5F_init(void);
__DLL__ uintn H5F_get_intent(H5F_t *f);
+__DLL__ hid_t H5F_get_driver_id(H5F_t *f);
/* Functions that operate on array storage */
__DLL__ herr_t H5F_arr_create(H5F_t *f,