Creating and manipulating HDF5 datasets to support append- and read-only operations on table data (H5PT)
HDF5 Packet Table API Reference
The HDF5 Packet Table API is designed to allow records to be appended to and read from a table. Packet Table datasets are chunked, allowing them to grow as needed.
The Packet Table API, with the H5PT prefix, is not to be confused with the H5TB Table API (H5TB prefix). The H5TB APIs are stateless (H5TB Tables do not need to be opened or closed) but H5PT Packet Tables require less performance overhead. Also, H5TB Tables support insertions and deletions, while H5PT Packet Tables support only append operations. H5TB functions should not be called on tables created with the H5PT API, or vice versa.
Packet Tables are datasets in an HDF5 file, so while their contents should not be changed outside of the H5PT API calls, the datatypes of Packet Tables can be queried using H5D_GET_TYPE. Packet Tables can also be given attributes using the normal HDF5 APIs.
The following line includes the HDF5 Packet Table package, H5PT, in C applications:
Without this include, an application will not have access to these functions.
- H5PT_APPEND — Appends packets to the end of a packet table.
- H5PT_CLOSE — Closes an open packet table.
- H5PT_CREATE — Creates a packet table to store fixed-length or variable-length packets.
- H5PT_CREATE_FL — Creates a packet table to store fixed-length packets.
- H5PT_CREATE_INDEX — Resets a packet table's index to the first packet.
- H5PT_FREE_VLEN_BUFF — Releases memory allocated in the process of reading variable-length packets.
- H5PT_GET_DATASET — Returns the backend dataset of this packet table.
- H5PT_GET_INDEX — Gets the current record index for a packet table
- H5PT_GET_NEXT — Reads packets from a packet table starting at the current index.
- H5PT_GET_NUM_PACKETS — Returns the number of packets in a packet table.
- H5PT_GET_TYPE — Returns the backend datatype of this packet table.
- H5PT_IS_VALID — Determines whether an indentifier points to a packet table.
- H5PT_IS_VARLEN — Determines whether a packet table contains variable-length or fixed-length packets.
- H5PT_OPEN — Opens an existing packet table.
- H5PT_READ_PACKETS — Reads a number of packets from a packet table.
- H5PT_SET_INDEX — Sets a packet table's index.