summaryrefslogtreecommitdiffstats
path: root/src/H5Fquery.c
diff options
context:
space:
mode:
authorNeil Fortner <fortnern@gmail.com>2023-04-28 23:58:25 (GMT)
committerGitHub <noreply@github.com>2023-04-28 23:58:25 (GMT)
commit3236fb79cedcbe8fed2f421db1ae15f630b5b90f (patch)
treeb4751d6d020d057f4a43f3c89186418cdd1ac0cf /src/H5Fquery.c
parent4497feb5756d76479fb36fef999692c0909f8340 (diff)
downloadhdf5-3236fb79cedcbe8fed2f421db1ae15f630b5b90f.zip
hdf5-3236fb79cedcbe8fed2f421db1ae15f630b5b90f.tar.gz
hdf5-3236fb79cedcbe8fed2f421db1ae15f630b5b90f.tar.bz2
Implement selection I/O with type conversion (#2823)
Initial implementation of selection I/O with type conversion. Allows Parallel collective I/O with type conversion, as long as selection I/O is enabled.
Diffstat (limited to 'src/H5Fquery.c')
-rw-r--r--src/H5Fquery.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/H5Fquery.c b/src/H5Fquery.c
index 469df58..72b173f 100644
--- a/src/H5Fquery.c
+++ b/src/H5Fquery.c
@@ -1372,3 +1372,30 @@ H5F_get_file_locking(const H5F_t *f)
FUNC_LEAVE_NOAPI(f->shared->use_file_locking)
} /* end H5F_get_file_locking */
+
+/*-------------------------------------------------------------------------
+ * Function: H5F_has_vector_select_io
+ *
+ * Purpose: Determine if vector or selection I/O is supported by this file
+ *
+ * Return: TRUE/FALSE
+ *
+ *-------------------------------------------------------------------------
+ */
+hbool_t
+H5F_has_vector_select_io(const H5F_t *f, hbool_t is_write)
+{
+ hbool_t ret_value; /* Return value */
+
+ FUNC_ENTER_NOAPI_NOINIT_NOERR
+
+ HDassert(f);
+ HDassert(f->shared);
+
+ if (is_write)
+ ret_value = (f->shared->lf->cls->write_vector != NULL || f->shared->lf->cls->write_selection != NULL);
+ else
+ ret_value = (f->shared->lf->cls->read_vector != NULL || f->shared->lf->cls->read_selection != NULL);
+
+ FUNC_LEAVE_NOAPI(ret_value)
+} /* end H5F_has_vector_select_io */