Please, help us to better serve our user community by answering the following short survey: https://www.hdfgroup.org/website-survey/
HDF5  1.15.0
API Reference
H5Opublic.h File Reference
#include "H5public.h"
#include "H5Ipublic.h"
+ Include dependency graph for H5Opublic.h:
+ This graph shows which files directly or indirectly include this file:

Data Structures

struct  H5O_hdr_info_t
 
struct  H5O_info2_t
 
struct  H5O_native_info_t
 
struct  H5O_stat_t
 
struct  H5O_info1_t
 

Macros

#define H5O_COPY_SHALLOW_HIERARCHY_FLAG   (0x0001u)
 
#define H5O_COPY_EXPAND_SOFT_LINK_FLAG   (0x0002u)
 
#define H5O_COPY_EXPAND_EXT_LINK_FLAG   (0x0004u)
 
#define H5O_COPY_EXPAND_REFERENCE_FLAG   (0x0008u)
 
#define H5O_COPY_WITHOUT_ATTR_FLAG   (0x0010u)
 
#define H5O_COPY_PRESERVE_NULL_FLAG   (0x0020u)
 
#define H5O_COPY_MERGE_COMMITTED_DTYPE_FLAG   (0x0040u)
 
#define H5O_COPY_ALL   (0x007Fu)
 
#define H5O_SHMESG_NONE_FLAG   0x0000
 
#define H5O_SHMESG_SDSPACE_FLAG   ((unsigned)1 << 0x0001)
 
#define H5O_SHMESG_DTYPE_FLAG   ((unsigned)1 << 0x0003)
 
#define H5O_SHMESG_FILL_FLAG   ((unsigned)1 << 0x0005)
 
#define H5O_SHMESG_PLINE_FLAG   ((unsigned)1 << 0x000b)
 
#define H5O_SHMESG_ATTR_FLAG   ((unsigned)1 << 0x000c)
 
#define H5O_SHMESG_ALL_FLAG
 
#define H5O_HDR_CHUNK0_SIZE   0x03
 
#define H5O_HDR_ATTR_CRT_ORDER_TRACKED   0x04
 
#define H5O_HDR_ATTR_CRT_ORDER_INDEXED   0x08
 
#define H5O_HDR_ATTR_STORE_PHASE_CHANGE   0x10
 
#define H5O_HDR_STORE_TIMES   0x20
 
#define H5O_HDR_ALL_FLAGS
 
#define H5O_SHMESG_MAX_NINDEXES   8
 
#define H5O_SHMESG_MAX_LIST_SIZE   5000
 
#define H5O_INFO_BASIC   0x0001u
 
#define H5O_INFO_TIME   0x0002u
 
#define H5O_INFO_NUM_ATTRS   0x0004u
 
#define H5O_INFO_ALL   (H5O_INFO_BASIC | H5O_INFO_TIME | H5O_INFO_NUM_ATTRS)
 
#define H5O_NATIVE_INFO_HDR   0x0008u
 
#define H5O_NATIVE_INFO_META_SIZE   0x0010u
 
#define H5O_NATIVE_INFO_ALL   (H5O_NATIVE_INFO_HDR | H5O_NATIVE_INFO_META_SIZE)
 
#define H5O_IS_TOKEN_UNDEF(token)   (!HDmemcmp(&(token), &(H5O_TOKEN_UNDEF), sizeof(H5O_token_t)))
 
#define H5O_TOKEN_UNDEF   (H5OPEN H5O_TOKEN_UNDEF_g)
 
#define H5O_INFO_HDR   0x0008u
 
#define H5O_INFO_META_SIZE   0x0010u
 
#define H5O_INFO_ALL   (H5O_INFO_BASIC | H5O_INFO_TIME | H5O_INFO_NUM_ATTRS | H5O_INFO_HDR | H5O_INFO_META_SIZE)
 

Typedefs

typedef uint32_t H5O_msg_crt_idx_t
 
typedef herr_t(* H5O_iterate2_t) (hid_t obj, const char *name, const H5O_info2_t *info, void *op_data)
 
typedef H5O_mcdt_search_ret_t(* H5O_mcdt_search_cb_t) (void *op_data)
 
typedef herr_t(* H5O_iterate1_t) (hid_t obj, const char *name, const H5O_info1_t *info, void *op_data)
 

Enumerations

enum  H5O_type_t {
  H5O_TYPE_UNKNOWN = -1 , H5O_TYPE_GROUP , H5O_TYPE_DATASET , H5O_TYPE_NAMED_DATATYPE ,
  H5O_TYPE_MAP , H5O_TYPE_NTYPES , H5O_TYPE_UNKNOWN = -1 , H5O_TYPE_GROUP ,
  H5O_TYPE_DATASET , H5O_TYPE_NAMED_DATATYPE , H5O_TYPE_MAP , H5O_TYPE_NTYPES
}
 
enum  H5O_mcdt_search_ret_t {
  H5O_MCDT_SEARCH_ERROR = -1 , H5O_MCDT_SEARCH_CONT , H5O_MCDT_SEARCH_STOP , H5O_MCDT_SEARCH_ERROR = -1 ,
  H5O_MCDT_SEARCH_CONT , H5O_MCDT_SEARCH_STOP
}
 

Functions

hid_t H5Oopen (hid_t loc_id, const char *name, hid_t lapl_id)
 Opens an object in an HDF5 file by location identifier and path name. More...
 
hid_t H5Oopen_async (hid_t loc_id, const char *name, hid_t lapl_id, hid_t es_id)
 
hid_t H5Oopen_by_token (hid_t loc_id, H5O_token_t token)
 Opens an object in an HDF5 file using its VOL independent token. More...
 
hid_t H5Oopen_by_idx (hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, hid_t lapl_id)
 Opens the nth object in a group. More...
 
hid_t H5Oopen_by_idx_async (hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, hid_t lapl_id, hid_t es_id)
 
htri_t H5Oexists_by_name (hid_t loc_id, const char *name, hid_t lapl_id)
 Determines whether a link resolves to an actual object. More...
 
herr_t H5Oget_info3 (hid_t loc_id, H5O_info2_t *oinfo, unsigned fields)
 Retrieves the metadata for an object specified by an identifier. More...
 
herr_t H5Oget_info_by_name3 (hid_t loc_id, const char *name, H5O_info2_t *oinfo, unsigned fields, hid_t lapl_id)
 Retrieves the metadata for an object, identifying the object by location and relative name. More...
 
herr_t H5Oget_info_by_name_async (hid_t loc_id, const char *name, H5O_info2_t *oinfo, unsigned fields, hid_t lapl_id, hid_t es_id)
 
herr_t H5Oget_info_by_idx3 (hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5O_info2_t *oinfo, unsigned fields, hid_t lapl_id)
 Retrieves the metadata for an object, identifying the object by an index position. More...
 
herr_t H5Oget_native_info (hid_t loc_id, H5O_native_info_t *oinfo, unsigned fields)
 Retrieve native file format information about an object. More...
 
herr_t H5Oget_native_info_by_name (hid_t loc_id, const char *name, H5O_native_info_t *oinfo, unsigned fields, hid_t lapl_id)
 Retrieve native file format information about an object given its name. More...
 
herr_t H5Oget_native_info_by_idx (hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5O_native_info_t *oinfo, unsigned fields, hid_t lapl_id)
 Retrieve native file format information about an object according to the order of an index. More...
 
herr_t H5Olink (hid_t obj_id, hid_t new_loc_id, const char *new_name, hid_t lcpl_id, hid_t lapl_id)
 Creates a hard link to an object in an HDF5 file. More...
 
herr_t H5Oincr_refcount (hid_t object_id)
 Increments an object reference count. More...
 
herr_t H5Odecr_refcount (hid_t object_id)
 Decrements an object reference count. More...
 
herr_t H5Ocopy (hid_t src_loc_id, const char *src_name, hid_t dst_loc_id, const char *dst_name, hid_t ocpypl_id, hid_t lcpl_id)
 Copies an object in an HDF5 file. More...
 
herr_t H5Ocopy_async (hid_t src_loc_id, const char *src_name, hid_t dst_loc_id, const char *dst_name, hid_t ocpypl_id, hid_t lcpl_id, hid_t es_id)
 
herr_t H5Oset_comment (hid_t obj_id, const char *comment)
 Sets comment for specified object. More...
 
herr_t H5Oset_comment_by_name (hid_t loc_id, const char *name, const char *comment, hid_t lapl_id)
 Sets comment for specified object. More...
 
ssize_t H5Oget_comment (hid_t obj_id, char *comment, size_t bufsize)
 Retrieves comment for specified object. More...
 
ssize_t H5Oget_comment_by_name (hid_t loc_id, const char *name, char *comment, size_t bufsize, hid_t lapl_id)
 Retrieves comment for specified object. More...
 
herr_t H5Ovisit3 (hid_t obj_id, H5_index_t idx_type, H5_iter_order_t order, H5O_iterate2_t op, void *op_data, unsigned fields)
 Recursively visits all objects accessible from a specified object. More...
 
herr_t H5Ovisit_by_name3 (hid_t loc_id, const char *obj_name, H5_index_t idx_type, H5_iter_order_t order, H5O_iterate2_t op, void *op_data, unsigned fields, hid_t lapl_id)
 Recursively visits all objects accessible from a specified object. More...
 
herr_t H5Oclose (hid_t object_id)
 Closes an object in an HDF5 file. More...
 
herr_t H5Oclose_async (hid_t object_id, hid_t es_id)
 
herr_t H5Oflush (hid_t obj_id)
 Flushes all buffers associated with an HDF5 object to disk. More...
 
herr_t H5Oflush_async (hid_t obj_id, hid_t es_id)
 
herr_t H5Orefresh (hid_t oid)
 Refreshes all buffers associated with an HDF5 object. More...
 
herr_t H5Orefresh_async (hid_t oid, hid_t es_id)
 
herr_t H5Odisable_mdc_flushes (hid_t object_id)
 Prevents metadata entries for an HDF5 object from being flushed from the metadata cache to storage. More...
 
herr_t H5Oenable_mdc_flushes (hid_t object_id)
 Enables flushing of dirty metadata entries from a file’s metadata cache. More...
 
herr_t H5Oare_mdc_flushes_disabled (hid_t object_id, hbool_t *are_disabled)
 Retrieves comment for specified object. More...
 
herr_t H5Otoken_cmp (hid_t loc_id, const H5O_token_t *token1, const H5O_token_t *token2, int *cmp_value)
 Compares two VOL connector object tokens. More...
 
herr_t H5Otoken_to_str (hid_t loc_id, const H5O_token_t *token, char **token_str)
 Serializes a connector's object token into a string. More...
 
herr_t H5Otoken_from_str (hid_t loc_id, const char *token_str, H5O_token_t *token)
 Deserializes a string into a connector object token. More...
 
hid_t H5Oopen_by_addr (hid_t loc_id, haddr_t addr)
 Opens an object using its address within an HDF5 file. More...
 
herr_t H5Oget_info1 (hid_t loc_id, H5O_info1_t *oinfo)
 Retrieves the metadata for an object specified by an identifier. More...
 
herr_t H5Oget_info_by_name1 (hid_t loc_id, const char *name, H5O_info1_t *oinfo, hid_t lapl_id)
 Retrieves the metadata for an object, identifying the object by location and relative name. More...
 
herr_t H5Oget_info_by_idx1 (hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5O_info1_t *oinfo, hid_t lapl_id)
 Retrieves the metadata for an object, identifying the object by an index position. More...
 
herr_t H5Oget_info2 (hid_t loc_id, H5O_info1_t *oinfo, unsigned fields)
 Retrieves the metadata for an object specified by an identifier. More...
 
herr_t H5Oget_info_by_name2 (hid_t loc_id, const char *name, H5O_info1_t *oinfo, unsigned fields, hid_t lapl_id)
 Retrieves the metadata for an object, identifying the object by location and relative name. More...
 
herr_t H5Oget_info_by_idx2 (hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5O_info1_t *oinfo, unsigned fields, hid_t lapl_id)
 Retrieves the metadata for an object, identifying the object by an index position. More...
 
herr_t H5Ovisit1 (hid_t obj_id, H5_index_t idx_type, H5_iter_order_t order, H5O_iterate1_t op, void *op_data)
 Recursively visits all objects accessible from a specified object. More...
 
herr_t H5Ovisit_by_name1 (hid_t loc_id, const char *obj_name, H5_index_t idx_type, H5_iter_order_t order, H5O_iterate1_t op, void *op_data, hid_t lapl_id)
 Recursively visits all objects starting from a specified object. More...
 
herr_t H5Ovisit2 (hid_t obj_id, H5_index_t idx_type, H5_iter_order_t order, H5O_iterate1_t op, void *op_data, unsigned fields)
 Recursively visits all objects accessible from a specified object. More...
 
herr_t H5Ovisit_by_name2 (hid_t loc_id, const char *obj_name, H5_index_t idx_type, H5_iter_order_t order, H5O_iterate1_t op, void *op_data, unsigned fields, hid_t lapl_id)
 Recursively visits all objects starting from a specified object. More...
 

Variables

const H5O_token_t H5O_TOKEN_UNDEF_g
 

Macro Definition Documentation

◆ H5O_COPY_ALL

#define H5O_COPY_ALL   (0x007Fu)

All object copying flags (for internal checking)

◆ H5O_COPY_EXPAND_EXT_LINK_FLAG

#define H5O_COPY_EXPAND_EXT_LINK_FLAG   (0x0004u)

Expand external links into new objects

◆ H5O_COPY_EXPAND_REFERENCE_FLAG

#define H5O_COPY_EXPAND_REFERENCE_FLAG   (0x0008u)

Copy objects that are pointed by references

◆ H5O_COPY_EXPAND_SOFT_LINK_FLAG

#define H5O_COPY_EXPAND_SOFT_LINK_FLAG   (0x0002u)

Expand soft links into new objects

◆ H5O_COPY_MERGE_COMMITTED_DTYPE_FLAG

#define H5O_COPY_MERGE_COMMITTED_DTYPE_FLAG   (0x0040u)

Merge committed datatypes in dest file

◆ H5O_COPY_PRESERVE_NULL_FLAG

#define H5O_COPY_PRESERVE_NULL_FLAG   (0x0020u)

Copy NULL messages (empty space)

◆ H5O_COPY_SHALLOW_HIERARCHY_FLAG

#define H5O_COPY_SHALLOW_HIERARCHY_FLAG   (0x0001u)

Copy only immediate members

◆ H5O_COPY_WITHOUT_ATTR_FLAG

#define H5O_COPY_WITHOUT_ATTR_FLAG   (0x0010u)

Copy object without copying attributes

◆ H5O_HDR_ALL_FLAGS

#define H5O_HDR_ALL_FLAGS
Value:
H5O_HDR_ATTR_STORE_PHASE_CHANGE | H5O_HDR_STORE_TIMES)
#define H5O_HDR_ATTR_CRT_ORDER_INDEXED
Definition: H5Opublic.h:63
#define H5O_HDR_CHUNK0_SIZE
Definition: H5Opublic.h:61
#define H5O_HDR_STORE_TIMES
Definition: H5Opublic.h:65
#define H5O_HDR_ATTR_CRT_ORDER_TRACKED
Definition: H5Opublic.h:62

◆ H5O_HDR_ATTR_CRT_ORDER_INDEXED

#define H5O_HDR_ATTR_CRT_ORDER_INDEXED   0x08

Attribute creation order has index

◆ H5O_HDR_ATTR_CRT_ORDER_TRACKED

#define H5O_HDR_ATTR_CRT_ORDER_TRACKED   0x04

Attribute creation order is tracked

◆ H5O_HDR_ATTR_STORE_PHASE_CHANGE

#define H5O_HDR_ATTR_STORE_PHASE_CHANGE   0x10

Non-default attribute storage phase change values stored

◆ H5O_HDR_CHUNK0_SIZE

#define H5O_HDR_CHUNK0_SIZE   0x03

2-bit field indicating # of bytes to store the size of chunk 0's data

◆ H5O_HDR_STORE_TIMES

#define H5O_HDR_STORE_TIMES   0x20

Store access, modification, change & birth times for object

◆ H5O_INFO_ALL [1/2]

#define H5O_INFO_ALL   (H5O_INFO_BASIC | H5O_INFO_TIME | H5O_INFO_NUM_ATTRS)

◆ H5O_INFO_ALL [2/2]

◆ H5O_INFO_BASIC

#define H5O_INFO_BASIC   0x0001u

Fill in the fileno, addr, type, and rc fields

◆ H5O_INFO_HDR

#define H5O_INFO_HDR   0x0008u

Fill in the hdr field

◆ H5O_INFO_META_SIZE

#define H5O_INFO_META_SIZE   0x0010u

Fill in the meta_size field

◆ H5O_INFO_NUM_ATTRS

#define H5O_INFO_NUM_ATTRS   0x0004u

Fill in the num_attrs field

◆ H5O_INFO_TIME

#define H5O_INFO_TIME   0x0002u

Fill in the atime, mtime, ctime, and btime fields

◆ H5O_IS_TOKEN_UNDEF

#define H5O_IS_TOKEN_UNDEF (   token)    (!HDmemcmp(&(token), &(H5O_TOKEN_UNDEF), sizeof(H5O_token_t)))

◆ H5O_NATIVE_INFO_ALL

#define H5O_NATIVE_INFO_ALL   (H5O_NATIVE_INFO_HDR | H5O_NATIVE_INFO_META_SIZE)

◆ H5O_NATIVE_INFO_HDR

#define H5O_NATIVE_INFO_HDR   0x0008u

Flags for H5Oget_native_info(). These flags determine which fields will be filled in the H5O_native_info_t struct. Fill in the hdr field

◆ H5O_NATIVE_INFO_META_SIZE

#define H5O_NATIVE_INFO_META_SIZE   0x0010u

Fill in the meta_size field

◆ H5O_SHMESG_ALL_FLAG

#define H5O_SHMESG_ALL_FLAG
Value:
H5O_SHMESG_ATTR_FLAG)
#define H5O_SHMESG_SDSPACE_FLAG
Definition: H5Opublic.h:50
#define H5O_SHMESG_DTYPE_FLAG
Definition: H5Opublic.h:51
#define H5O_SHMESG_PLINE_FLAG
Definition: H5Opublic.h:53
#define H5O_SHMESG_FILL_FLAG
Definition: H5Opublic.h:52

◆ H5O_SHMESG_ATTR_FLAG

#define H5O_SHMESG_ATTR_FLAG   ((unsigned)1 << 0x000c)

Attribute Message.

◆ H5O_SHMESG_DTYPE_FLAG

#define H5O_SHMESG_DTYPE_FLAG   ((unsigned)1 << 0x0003)

Datatype Message.

◆ H5O_SHMESG_FILL_FLAG

#define H5O_SHMESG_FILL_FLAG   ((unsigned)1 << 0x0005)

Fill Value Message.

◆ H5O_SHMESG_MAX_LIST_SIZE

#define H5O_SHMESG_MAX_LIST_SIZE   5000

◆ H5O_SHMESG_MAX_NINDEXES

#define H5O_SHMESG_MAX_NINDEXES   8

◆ H5O_SHMESG_NONE_FLAG

#define H5O_SHMESG_NONE_FLAG   0x0000

No shared messages

◆ H5O_SHMESG_PLINE_FLAG

#define H5O_SHMESG_PLINE_FLAG   ((unsigned)1 << 0x000b)

Filter pipeline message.

◆ H5O_SHMESG_SDSPACE_FLAG

#define H5O_SHMESG_SDSPACE_FLAG   ((unsigned)1 << 0x0001)

Simple Dataspace Message.

◆ H5O_TOKEN_UNDEF

#define H5O_TOKEN_UNDEF   (H5OPEN H5O_TOKEN_UNDEF_g)

Typedef Documentation

◆ H5O_iterate1_t

typedef herr_t(* H5O_iterate1_t) (hid_t obj, const char *name, const H5O_info1_t *info, void *op_data)

Prototype for H5Ovisit(), H5Ovisit_by_name() operator (versions 1 & 2)

Parameters
[in]objObject that serves as the root of the iteration; the same value as the H5Ovisit1() obj_id parameter
[in]nameName of object, relative to obj, being examined at current step of the iteration
[out]infoInformation about that object
[in,out]op_dataUser-defined pointer to data required by the application in processing the object
Returns
  • Zero causes the iterator to continue, returning zero when the iteration is complete.
  • A positive value causes the iterator to immediately return that positive value, indicating short-circuit success.
  • A negative value causes the iterator to immediately return that value, indicating failure.

◆ H5O_iterate2_t

typedef herr_t(* H5O_iterate2_t) (hid_t obj, const char *name, const H5O_info2_t *info, void *op_data)

Prototype for H5Ovisit(), H5Ovisit_by_name() operator (version 3)

Parameters
[in]objObject that serves as the root of the iteration; the same value as the H5Ovisit3() obj_id parameter
[in]nameName of object, relative to obj, being examined at current step of the iteration
[out]infoInformation about that object
[in,out]op_dataUser-defined pointer to data required by the application in processing the object; a pass-through of the op_data pointer provided with the H5Ovisit3() function call
Returns
  • Zero causes the iterator to continue, returning zero when the iteration is complete.
  • A positive value causes the iterator to immediately return that positive value, indicating short-circuit success.
  • A negative value causes the iterator to immediately return that value, indicating failure.

◆ H5O_mcdt_search_cb_t

typedef H5O_mcdt_search_ret_t(* H5O_mcdt_search_cb_t) (void *op_data)

Callback to invoke when completing the search for a matching committed datatype from the committed dtype list

◆ H5O_msg_crt_idx_t

typedef uint32_t H5O_msg_crt_idx_t

Typedef for message creation indexes

Enumeration Type Documentation

◆ H5O_mcdt_search_ret_t

Enumerator
H5O_MCDT_SEARCH_ERROR 

Abort H5Ocopy

H5O_MCDT_SEARCH_CONT 

Continue the global search of all committed datatypes in the destination file

H5O_MCDT_SEARCH_STOP 

Stop the search, but continue copying. The committed datatype will be copied but not merged.

H5O_MCDT_SEARCH_ERROR 

Abort H5Ocopy

H5O_MCDT_SEARCH_CONT 

Continue the global search of all committed datatypes in the destination file

H5O_MCDT_SEARCH_STOP 

Stop the search, but continue copying. The committed datatype will be copied but not merged.

◆ H5O_type_t

enum H5O_type_t

Types of objects in file

Enumerator
H5O_TYPE_UNKNOWN 

Unknown object type

H5O_TYPE_GROUP 

Object is a group

H5O_TYPE_DATASET 

Object is a dataset

H5O_TYPE_NAMED_DATATYPE 

Object is a named data type

H5O_TYPE_MAP 

Object is a map

H5O_TYPE_NTYPES 

Number of different object types (must be last!)

H5O_TYPE_UNKNOWN 

Unknown object type

H5O_TYPE_GROUP 

Object is a group

H5O_TYPE_DATASET 

Object is a dataset

H5O_TYPE_NAMED_DATATYPE 

Object is a named data type

H5O_TYPE_MAP 

Object is a map

H5O_TYPE_NTYPES 

Number of different object types (must be last!)

Variable Documentation

◆ H5O_TOKEN_UNDEF_g

const H5O_token_t H5O_TOKEN_UNDEF_g
extern