Please, help us to better know about our user community by answering the following short survey: https://www.hdfgroup.org/
HDF5  1.12.1
H5Opublic.h File Reference
#include "H5public.h"
#include "H5Ipublic.h"
#include "H5Lpublic.h"

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) /* Copy only immediate members */
 
#define H5O_COPY_EXPAND_SOFT_LINK_FLAG   (0x0002u) /* Expand soft links into new objects */
 
#define H5O_COPY_EXPAND_EXT_LINK_FLAG   (0x0004u) /* Expand external links into new objects */
 
#define H5O_COPY_EXPAND_REFERENCE_FLAG   (0x0008u) /* Copy objects that are pointed by references */
 
#define H5O_COPY_WITHOUT_ATTR_FLAG   (0x0010u) /* Copy object without copying attributes */
 
#define H5O_COPY_PRESERVE_NULL_FLAG   (0x0020u) /* Copy NULL messages (empty space) */
 
#define H5O_COPY_MERGE_COMMITTED_DTYPE_FLAG   (0x0040u) /* Merge committed datatypes in dest file */
 
#define H5O_COPY_ALL   (0x007Fu) /* All object copying flags (for internal checking) */
 
#define H5O_SHMESG_NONE_FLAG   0x0000 /* No shared messages */
 
#define H5O_SHMESG_SDSPACE_FLAG   ((unsigned)1 << 0x0001) /* Simple Dataspace Message. */
 
#define H5O_SHMESG_DTYPE_FLAG   ((unsigned)1 << 0x0003) /* Datatype Message. */
 
#define H5O_SHMESG_FILL_FLAG   ((unsigned)1 << 0x0005) /* Fill Value Message. */
 
#define H5O_SHMESG_PLINE_FLAG   ((unsigned)1 << 0x000b) /* Filter pipeline message. */
 
#define H5O_SHMESG_ATTR_FLAG   ((unsigned)1 << 0x000c) /* Attribute Message. */
 
#define H5O_SHMESG_ALL_FLAG
 
#define H5O_HDR_CHUNK0_SIZE   0x03 /* 2-bit field indicating # of bytes to store the size of chunk 0's data */
 
#define H5O_HDR_ATTR_CRT_ORDER_TRACKED   0x04 /* Attribute creation order is tracked */
 
#define H5O_HDR_ATTR_CRT_ORDER_INDEXED   0x08 /* Attribute creation order has index */
 
#define H5O_HDR_ATTR_STORE_PHASE_CHANGE   0x10 /* Non-default attribute storage phase change values stored */
 
#define H5O_HDR_STORE_TIMES   0x20 /* Store access, modification, change & birth times for object */
 
#define H5O_HDR_ALL_FLAGS
 
#define H5O_SHMESG_MAX_NINDEXES   8
 
#define H5O_SHMESG_MAX_LIST_SIZE   5000
 
#define H5O_INFO_BASIC   0x0001u /* Fill in the fileno, addr, type, and rc fields */
 
#define H5O_INFO_TIME   0x0002u /* Fill in the atime, mtime, ctime, and btime fields */
 
#define H5O_INFO_NUM_ATTRS   0x0004u /* Fill in the num_attrs field */
 
#define H5O_INFO_ALL   (H5O_INFO_BASIC | H5O_INFO_TIME | H5O_INFO_NUM_ATTRS)
 
#define H5O_NATIVE_INFO_HDR   0x0008u /* Fill in the hdr field */
 
#define H5O_NATIVE_INFO_META_SIZE   0x0010u /* Fill in the meta_size field */
 
#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 /* Fill in the hdr field */
 
#define H5O_INFO_META_SIZE   0x0010u /* Fill in the meta_size field */
 
#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
}
 
enum  H5O_mcdt_search_ret_t { 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_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...
 
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_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 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 H5Oflush (hid_t obj_id)
 Flushes all buffers associated with an HDF5 object to disk. More...
 
herr_t H5Orefresh (hid_t oid)
 Refreshes all buffers associated with an HDF5 object. More...
 
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

◆ 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 /* Fill in the hdr field */

Flags for H5Oget_native_info(). Theses flags determine which fields will be filled in in the H5O_native_info_t struct.

◆ 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

◆ 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)

◆ 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)

◆ 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_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!)

Variable Documentation

◆ H5O_TOKEN_UNDEF_g

const H5O_token_t H5O_TOKEN_UNDEF_g
H5O_SHMESG_DTYPE_FLAG
#define H5O_SHMESG_DTYPE_FLAG
Definition: H5Opublic.h:56
H5O_SHMESG_SDSPACE_FLAG
#define H5O_SHMESG_SDSPACE_FLAG
Definition: H5Opublic.h:55
H5O_HDR_STORE_TIMES
#define H5O_HDR_STORE_TIMES
Definition: H5Opublic.h:69
H5O_HDR_ATTR_CRT_ORDER_INDEXED
#define H5O_HDR_ATTR_CRT_ORDER_INDEXED
Definition: H5Opublic.h:67
H5O_HDR_CHUNK0_SIZE
#define H5O_HDR_CHUNK0_SIZE
Definition: H5Opublic.h:65
H5O_SHMESG_PLINE_FLAG
#define H5O_SHMESG_PLINE_FLAG
Definition: H5Opublic.h:58
H5O_HDR_ATTR_CRT_ORDER_TRACKED
#define H5O_HDR_ATTR_CRT_ORDER_TRACKED
Definition: H5Opublic.h:66
H5O_SHMESG_FILL_FLAG
#define H5O_SHMESG_FILL_FLAG
Definition: H5Opublic.h:57