summaryrefslogtreecommitdiffstats
path: root/src/H5VLcallback.c
Commit message (Collapse)AuthorAgeFilesLines
* Refactor all the 'H5VL_*_optional' callbacks to move the type of operation outQuincey Koziol2020-01-041-765/+1064
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Trivial parameter renaming in VOL API calls.Dana Robinson2019-12-161-16/+16
|
* Revert "Merge branch 'hdf5_1_12' of ↵Jerome Soumagne2019-12-091-16/+16
| | | | | | | https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into hdf5_1_12" This reverts commit 9f9336a5bd541752f472bab4c93da8de89f862cd, reversing changes made to 437a1919e7ba60fe75a33a466d264183a0255319.
* Fix bugs in H5VL file comparison code. Add short circuit success toNeil Fortner2019-12-061-4/+4
| | | | H5VL_cmp_connector_cls().
* Implement file comparison VOL callback. Other changes to allowNeil Fortner2019-12-061-0/+68
| | | | | references to work with non-native connectors. There is a bug somewhere.
* Merge branch 'hdf5_1_12' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 ↵Richard Warren2019-12-061-7/+7
|\ | | | | | | into hdf5_1_12
| * Implement H5VLget_file_type() to return a copy of a datatype with theNeil Fortner2019-12-061-7/+7
| | | | | | | | | | | | | | | | | | | | | | location set to be in a file. Only meant to be used by VOL connectors. Implement H5VLpeek_connector_id() to support connectors querying their own IDs. Fix app_ref with connector IDs in a couple places (external VOLs registered as default through ENV should be visible to the application). Modify vlen and reference interfaces to work with arbitrary VOL connectors. Implement file "post open" specific callback, to enable connectors to update their file structs after a wrap context has been set.
* | Merged HDFFV-10929_2GB_testing to hdf5_1_12Richard Warren2019-12-061-16/+16
|/
* Unify code between H5Lcopy and H5LmoveJordan Henderson2019-10-101-3/+3
|
* Fix H5VL_blob_get to return size of blobJerome Soumagne2019-10-081-29/+259
| | | | | | | | | | | | | | | | | | | | 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
* Add 'blob' callbacks to VOL, along with a native implementation to store themQuincey Koziol2019-10-081-0/+119
| | | | | | | 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.
* Added the map (H5M) APIDana Robinson2019-08-131-0/+111
|
* Added H5Fdelete call and VOL support (but no VFD/native implementation).Dana Robinson2019-06-111-1/+1
|
* Refactor group creation parameters to take them out of the group creationQuincey Koziol2019-04-251-11/+14
| | | | property list and pass them as normal function parameters.
* Refactor link creation parameters from being passing as properties in theQuincey Koziol2019-04-251-15/+26
| | | | link creation property list to vararg function parameters.
* Refactor attribute creation parameters to move parameters out of creationQuincey Koziol2019-04-251-13/+16
| | | | property list and into function parameters.
* Refactor dataset creation parameters out of the dataset creation propertyQuincey Koziol2019-04-251-10/+13
| | | | list and pass them as regular function parameters.
* Add an 'unwrap' VOL callback, so that connectors can unwrap an underlyingQuincey Koziol2019-04-211-48/+117
| | | | object without closing it. (Especially needed for pass-through connectors)
* Merge remote-tracking branch 'origin/develop' into env_vol_loadQuincey Koziol2019-04-031-1/+1
|\
| * Added an H5MM_memcpy call that checks for buffer overlap.Dana Robinson2019-03-161-1/+1
| |
* | Specify the default VOL connector to use with an environment variable.Quincey Koziol2019-03-101-30/+15
|/ | | | | | | | This implicitly adds support for changing the VOL connector for command-line tools or any application linked with the library. Also, add 'make check-vol' support for all directories, clearing up necessary issues in testing scripts, etc.
* Revise "management" VOL callbacks into 'info' and object 'wrap / retrieval'Quincey Koziol2019-02-231-22/+22
| | | | classes.
* Merge branch 'develop' into c_stdlib_posix_call_cleanupDana Robinson2019-02-191-5/+6
|\
| * Add ID type (of eventual hid_t) to the VOL "wrap" callback.Quincey Koziol2019-02-071-5/+6
| |
* | C and POSIX call cleanupDana Robinson2019-01-111-1/+1
|/
* Remove H5VL_FILE_CACHE_VOL_CONN from file specific callbacks, as it turns outQuincey Koziol2018-12-171-46/+0
| | | | | | not to be necessary. Also, correct _MSC_VER #ifdef
* Further va_list improvements.Dana Robinson2018-12-171-50/+50
|
* Update API tracing info for VOL functions and regenerate trace macros for VOLQuincey Koziol2018-11-281-19/+23
| | | | API calls.
* Added 'notify' callback for async requests; switched VOL class and infoQuincey Koziol2018-11-281-21/+163
| | | | | | comparison to return comparison value as parameter, so they can return error values; "cancelled" -> "canceled"; switched order of 'wrap_object' and 'free_wrap_ctx' management callbacks.
* Switch loc_params to VOL callbacks to pass struct by pointer instead of byQuincey Koziol2018-11-221-84/+84
| | | | value.
* Add info_to_str and str_to_info "management" callbacks for serializing andQuincey Koziol2018-11-211-1/+114
| | | | deserializing a connector's info object.
* Add VOL connector info to the flie access property list returned fromQuincey Koziol2018-11-181-17/+133
| | | | H5Fget_access_plist(). Also, other misc. cleanups, etc.
* Fix a few error messagesQuincey Koziol2018-11-121-4/+4
|
* Switch switch remainder of API routines to use VOL callbacks.Quincey Koziol2018-11-101-18/+32
|
* Switch driver | plugin => connector.Quincey Koziol2018-11-041-575/+575
|
* Refactor, standardize, and revise the async request callbacks.Quincey Koziol2018-11-041-45/+396
|
* Refactor and standardize named datatype VOL callbacks.Quincey Koziol2018-11-011-57/+287
|
* Refactor and standardize object VOL callbacks.Quincey Koziol2018-11-011-62/+249
|
* Refactor and standardize the link VOL callbacks. Also fix error stack forQuincey Koziol2018-11-011-57/+308
| | | | testing.
* Refactor and standardize group VOL callbacks.Quincey Koziol2018-11-011-59/+282
|
* Refactor and standarize file object callbacks, including some fixes on theQuincey Koziol2018-10-311-132/+261
| | | | dataset callbacks.
* Convert dataset callbacks to standard form, for wrapping object IDs, etc.Quincey Koziol2018-10-291-116/+462
| | | | Also, fix a few attribute issues that I missed.
* Convert attribute VOL callbacks to a standard form that sets up the wrapperQuincey Koziol2018-10-291-76/+334
| | | | object info in a single place.
* Clean up va_list properly on error.Quincey Koziol2018-10-281-30/+136
|
* Move all callback-related routines into the callback source file, standardizingQuincey Koziol2018-10-281-412/+2587
| | | | their coding style
* Squashed commit of private branch changes to support stackable VOL plugins.Quincey Koziol2018-10-251-0/+1890
modified: test/dsets.c