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

Data Structures

struct  H5O_hdr_info_t
 
struct  H5O_info_t
 
struct  H5O_stat_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
 

Typedefs

typedef uint32_t H5O_msg_crt_idx_t
 
typedef herr_t(* H5O_iterate_t) (hid_t obj, const char *name, const H5O_info_t *info, void *op_data)
 
typedef H5O_mcdt_search_ret_t(* H5O_mcdt_search_cb_t) (void *op_data)
 

Enumerations

enum  H5O_type_t {
  H5O_TYPE_UNKNOWN = -1 , H5O_TYPE_GROUP , H5O_TYPE_DATASET , H5O_TYPE_NAMED_DATATYPE ,
  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_addr (hid_t loc_id, haddr_t addr)
 Opens an object using its address within an HDF5 file. 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_info (hid_t loc_id, H5O_info_t *oinfo)
 Retrieves the metadata for an object specified by an identifier. More...
 
herr_t H5Oget_info_by_name (hid_t loc_id, const char *name, H5O_info_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_idx (hid_t loc_id, const char *group_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t n, H5O_info_t *oinfo, hid_t lapl_id)
 Retrieves the metadata for an object, identifying the object by an index position. 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 H5Ovisit (hid_t obj_id, H5_index_t idx_type, H5_iter_order_t order, H5O_iterate_t op, void *op_data)
 Recursively visits all objects accessible from a specified object. More...
 
herr_t H5Ovisit_by_name (hid_t loc_id, const char *obj_name, H5_index_t idx_type, H5_iter_order_t order, H5O_iterate_t op, void *op_data, 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...
 

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:112
#define H5O_HDR_CHUNK0_SIZE
Definition: H5Opublic.h:110
#define H5O_HDR_STORE_TIMES
Definition: H5Opublic.h:114
#define H5O_HDR_ATTR_CRT_ORDER_TRACKED
Definition: H5Opublic.h:111

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

#define H5O_SHMESG_ALL_FLAG
Value:
H5O_SHMESG_ATTR_FLAG)
#define H5O_SHMESG_SDSPACE_FLAG
Definition: H5Opublic.h:99
#define H5O_SHMESG_DTYPE_FLAG
Definition: H5Opublic.h:100
#define H5O_SHMESG_PLINE_FLAG
Definition: H5Opublic.h:102
#define H5O_SHMESG_FILL_FLAG
Definition: H5Opublic.h:101

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

Typedef Documentation

◆ H5O_iterate_t

typedef herr_t(* H5O_iterate_t) (hid_t obj, const char *name, const H5O_info_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 H5Ovisit() 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_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_NTYPES 

Number of different object types (must be last!)