| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
| |
generic fallback for VOL connectors that don't implement operation
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
of the va_list, so it's at least possible for another connector to know what
the operation is and decide whether to implement it or not.
Added a new VOL sub-class called "introspect" where callbacks that report
information about the connector or container can be placed. Added an
'opt_query' callback to this sub-class, for a connector to report back
to the library whether a particular optional callback operation is supported.
Also added a 'get_conn_cls' introspection callback, to retrieve the H5VL_class_t
of a connector (either the "current" connector, H5VL_GET_CONN_LVL_CURR, or
the terminal connector, H5VL_GET_CONN_LVL_TERM).
Moved the "post open" operation from a file 'specific' operation to a file
'optional' operation, now that it's possible to detect (with the 'opt_query'
introspection callback) whether a VOL connector implements an optional
operation, without just returning an error.
Added new internal VOL helper routines: H5VL_object_is_native, to determine
if an object is in (or is a) native file, and H5VL_file_is_same, to determine
if two objects are in (or are) the same terminal VOL connector's container.
(And moved the special handling for FILE_IS_EQUAL operation out of internal VOL
callback routine into H5VL_file_is_same)
Made new dataset 'get' operation for H5Dvlen_get_buf_size, aligning it better
with other 'get' operations in API.
Fixed several issues with pass-through connectors, which are now passing the
'make check-passthrough-vol' tests again.
A bunch of warning and style cleanups as well.
|
|
|
|
| |
Remove H5F__get_file_id() and use only private routine instead
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
in the global heap, and changed the VL datatype conversion code to use blobs.
Move encode/decode of sequence lengths into VL datatype callbacks, from native
VOL blob routines.
|
| |
|
| |
|
|
|
|
| |
H5VL_NATIVE_DATASET_GET_CHUNK_INFO_BY_COORD per a review comment.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Description:
- Added functions to query chunk information:
H5Dget_num_chunks(dset_id, fspace_id, *nchunks)
Gets the number of written chunks that intersect with the given
dataspace. However, in this version, the intersection is not
yet completed. Thus, the number of all written chunks will be
returned.
H5Dget_chunk_info_by_coord(dset_id, *offset, *filter_mask, *addr, *size)
Given a chunk's logical coordinates, returns the chunk's filter,
address, and size.
H5Dget_chunk_info(dset_id, fspace_id, index, *offset, *filter_mask, *addr, *size)
Given a chunk's index, returns the chunk's logical coordinates, filter,
address, and size. The chunk belongs to a set of chunks that have
nonempty intersection with the specified dataspace. However, in
this version, the intersection is not yet completed, and the index
is of all the written chunks.
These functions comply with VOL.
- Fixed some oversights found in the library for the tests in chunk_info.c
to work correctly. The returned value from a callback function was not
checked in H5EA_iterate(), H5FA_iterate(), and H5D__none_idx_iterate().
This oversight caused a callback function to continue iterating even though
it's supposed to stop.
Platforms tested:
Linux/64 (jelly)
Linux/64 (platypus)
Darwin (osx1011test)
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| | |
moved the attribute code over.
|
|\ \
| |/
| |
| | |
https://bitbucket.hdfgroup.org/scm/~jake.smith/hdf5 into dset_ohdr_minimize
|
|/
|
|
| |
typedef and a set of #defines.
|
|
|
|
|
|
| |
variables during testing, including connecting native, pass-through, and
dynamically loaded VOL connectors. Also bring native and pass-through
VOL connectors into alignment, removing the "H5VLnative_private.h" header.
|
| |
|
|\
| |
| |
| | |
stackable_vol
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This brings the H5VL code in line with the H5I code regarding
naming, parameter order, etc.
Several public API calls were affected by this change.
These changed names to reflect their use with VOL drivers:
H5VLregister() --> H5VLregister_driver()
H5VLregister_by_name() --> H5VLregister_driver_by_name()
H5VLunregister() --> H5VLunregister_driver()
H5VLis_registered() --> H5VLis_driver_registered()
This call was renamed to match H5Iregister(). The order of the first
two parameters also reversed and the object pointer is now const.
H5VLobject_register() --> H5VLregister()
|
|/
|
|
| |
modified: test/dsets.c
|
|
|