Encodes the property values in a property list into a binary buffer
Procedure:
H5P_ENCODE1 ( plist_id, buf, nalloc )
Signature:
herr_t H5Pencode1 ( hid_t plist_id, void *buf, size_t *nalloc )
Parameters:
hid_t plist_id | IN: Identifier of the property list to be encoded |
void *buf | OUT: Buffer into which the property list will be encoded If the provided buffer is NULL , the size of the buffer required is returned through nalloc ; the function does nothing more. |
size_t *nalloc | OUT: The size of the required buffer |
Description:
H5P_ENCODE1 encodes the property list plist_id
into the binary buffer buf
.
If the required buffer size is unknown, buf
can be passed in as NULL
and the function will set the required buffer size in nalloc
. The buffer can then be created and the property list encoded with a subsequent H5P_ENCODE1 call.
If the buffer passed in is not big enough to hold the encoded properties, the H5P_ENCODE1 call can be expected to fail with a segmentation fault.
Properties that do not have encode callbacks will be skipped. There is currently no mechanism to register an encode callback for a user-defined property, so user-defined properties cannot currently be encoded.
Some properties cannot be encoded, particularly properties that are reliant on local context.
Returns:
Returns a non-negative value if successful; otherwise returns a negative value.
History:
Release | Change |
---|
1.12.0 | H5P_ENCODE renamed to H5P_ENCODE1 and deprecated. |
1.10.0 | Function introduced in this release. |
--- Last Modified: March 17, 2020 | 02:26 PM