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

Data Structures

struct  H5F_info2_t
 
struct  H5F_sect_info_t
 
struct  H5F_retry_info_t
 
struct  H5F_info1_t
 

Macros

#define H5CHECK   H5check(),
 
#define H5OPEN   H5open(),
 
#define H5F_ACC_RDONLY   (H5CHECK H5OPEN 0x0000u)
 
#define H5F_ACC_RDWR   (H5CHECK H5OPEN 0x0001u)
 
#define H5F_ACC_TRUNC   (H5CHECK H5OPEN 0x0002u)
 
#define H5F_ACC_EXCL   (H5CHECK H5OPEN 0x0004u)
 
#define H5F_ACC_CREAT   (H5CHECK H5OPEN 0x0010u)
 
#define H5F_ACC_SWMR_WRITE   (H5CHECK 0x0020u)
 
#define H5F_ACC_SWMR_READ   (H5CHECK 0x0040u)
 
#define H5F_ACC_DEFAULT   (H5CHECK H5OPEN 0xffffu)
 
#define H5F_OBJ_FILE   (0x0001u)
 
#define H5F_OBJ_DATASET   (0x0002u)
 
#define H5F_OBJ_GROUP   (0x0004u)
 
#define H5F_OBJ_DATATYPE   (0x0008u)
 
#define H5F_OBJ_ATTR   (0x0010u)
 
#define H5F_OBJ_ALL   (H5F_OBJ_FILE | H5F_OBJ_DATASET | H5F_OBJ_GROUP | H5F_OBJ_DATATYPE | H5F_OBJ_ATTR)
 
#define H5F_OBJ_LOCAL   (0x0020u)
 
#define H5F_FAMILY_DEFAULT   (hsize_t)0
 
#define H5F_MPIO_DEBUG_KEY   "H5F_mpio_debug_key"
 
#define H5F_UNLIMITED   ((hsize_t)(-1L))
 
#define H5F_LIBVER_LATEST   H5F_LIBVER_V112
 
#define H5F_NUM_METADATA_READ_RETRY_TYPES   21
 
#define H5F_ACC_DEBUG   (H5CHECK H5OPEN 0x0000u)
 

Typedefs

typedef herr_t(* H5F_flush_cb_t) (hid_t object_id, void *udata)
 

Enumerations

enum  H5F_scope_t { H5F_SCOPE_LOCAL = 0, H5F_SCOPE_GLOBAL = 1 }
 
enum  H5F_close_degree_t { H5F_CLOSE_DEFAULT = 0, H5F_CLOSE_WEAK = 1, H5F_CLOSE_SEMI = 2, H5F_CLOSE_STRONG = 3 }
 
enum  H5F_mem_t {
  H5FD_MEM_NOLIST = -1, H5FD_MEM_DEFAULT = 0, H5FD_MEM_SUPER = 1, H5FD_MEM_BTREE = 2,
  H5FD_MEM_DRAW = 3, H5FD_MEM_GHEAP = 4, H5FD_MEM_LHEAP = 5, H5FD_MEM_OHDR = 6,
  H5FD_MEM_NTYPES
}
 
enum  H5F_libver_t {
  H5F_LIBVER_ERROR = -1, H5F_LIBVER_EARLIEST = 0, H5F_LIBVER_V18 = 1, H5F_LIBVER_V110 = 2,
  H5F_LIBVER_V112 = 3, H5F_LIBVER_NBOUNDS
}
 
enum  H5F_fspace_strategy_t {
  H5F_FSPACE_STRATEGY_FSM_AGGR = 0, H5F_FSPACE_STRATEGY_PAGE, H5F_FSPACE_STRATEGY_AGGR = 2, H5F_FSPACE_STRATEGY_NONE = 3,
  H5F_FSPACE_STRATEGY_NTYPES
}
 
enum  H5F_file_space_type_t {
  H5F_FILE_SPACE_DEFAULT = 0, H5F_FILE_SPACE_ALL_PERSIST = 1, H5F_FILE_SPACE_ALL = 2, H5F_FILE_SPACE_AGGR_VFD = 3,
  H5F_FILE_SPACE_VFD = 4, H5F_FILE_SPACE_NTYPES
}
 

Functions

htri_t H5Fis_accessible (const char *container_name, hid_t fapl_id)
 Checks if a file can be opened with a given file access property list. More...
 
hid_t H5Fcreate (const char *filename, unsigned flags, hid_t fcpl_id, hid_t fapl_id)
 Creates an HDF5 file. More...
 
hid_t H5Fopen (const char *filename, unsigned flags, hid_t fapl_id)
 Opens an existing HDF5 file. More...
 
hid_t H5Freopen (hid_t file_id)
 Returns a new identifier for a previously-opened HDF5 file. More...
 
herr_t H5Fflush (hid_t object_id, H5F_scope_t scope)
 Flushes all buffers associated with a file to storage. More...
 
herr_t H5Fclose (hid_t file_id)
 Terminates access to an HDF5 file. More...
 
herr_t H5Fdelete (const char *filename, hid_t fapl_id)
 Deletes an HDF5 file. More...
 
hid_t H5Fget_create_plist (hid_t file_id)
 Returns a file creation property list identifier. More...
 
hid_t H5Fget_access_plist (hid_t file_id)
 Returns a file access property list identifier. More...
 
herr_t H5Fget_intent (hid_t file_id, unsigned *intent)
 Determines the read/write or read-only status of a file. More...
 
herr_t H5Fget_fileno (hid_t file_id, unsigned long *fileno)
 Retrieves a file's file number that uniquely identifies an open file. More...
 
ssize_t H5Fget_obj_count (hid_t file_id, unsigned types)
 Returns the number of open object identifiers for an open file. More...
 
ssize_t H5Fget_obj_ids (hid_t file_id, unsigned types, size_t max_objs, hid_t *obj_id_list)
 Returns a list of open object identifiers. More...
 
herr_t H5Fget_vfd_handle (hid_t file_id, hid_t fapl, void **file_handle)
 Returns pointer to the file handle from the virtual file driver. More...
 
herr_t H5Fmount (hid_t loc, const char *name, hid_t child, hid_t plist)
 Mounts an HDF5 file. More...
 
herr_t H5Funmount (hid_t loc, const char *name)
 Unounts an HDF5 file. More...
 
hssize_t H5Fget_freespace (hid_t file_id)
 Returns the amount of free space in a file (in bytes) More...
 
herr_t H5Fget_filesize (hid_t file_id, hsize_t *size)
 Returns the size of an HDF5 file (in bytes) More...
 
herr_t H5Fget_eoa (hid_t file_id, haddr_t *eoa)
 Retrieves the file's end-of-allocation (EOA) More...
 
herr_t H5Fincrement_filesize (hid_t file_id, hsize_t increment)
 Sets the file' EOA to the maximum of (EOA, EOF) + increment. More...
 
ssize_t H5Fget_file_image (hid_t file_id, void *buf_ptr, size_t buf_len)
 Retrieves a copy of the image of an existing, open file. More...
 
herr_t H5Fget_mdc_config (hid_t file_id, H5AC_cache_config_t *config_ptr)
 Obtains current metadata cache configuration for target file. More...
 
herr_t H5Fset_mdc_config (hid_t file_id, H5AC_cache_config_t *config_ptr)
 Attempts to configure metadata cache of target file. More...
 
herr_t H5Fget_mdc_hit_rate (hid_t file_id, double *hit_rate_ptr)
 Obtains target file's metadata cache hit rate. More...
 
herr_t H5Fget_mdc_size (hid_t file_id, size_t *max_size_ptr, size_t *min_clean_size_ptr, size_t *cur_size_ptr, int *cur_num_entries_ptr)
 Obtains current metadata cache size data for specified file. More...
 
herr_t H5Freset_mdc_hit_rate_stats (hid_t file_id)
 Resets hit rate statistics counters for the target file. More...
 
ssize_t H5Fget_name (hid_t obj_id, char *name, size_t size)
 Retrieves name of file to which object belongs. More...
 
herr_t H5Fget_info2 (hid_t obj_id, H5F_info2_t *file_info)
 Retrieves name of file to which object belongs. More...
 
herr_t H5Fget_metadata_read_retry_info (hid_t file_id, H5F_retry_info_t *info)
 Retrieves the collection of read retries for metadata entries with checksum. More...
 
herr_t H5Fstart_swmr_write (hid_t file_id)
 Retrieves free-space section information for a file. More...
 
ssize_t H5Fget_free_sections (hid_t file_id, H5F_mem_t type, size_t nsects, H5F_sect_info_t *sect_info)
 Retrieves free-space section information for a file. More...
 
herr_t H5Fclear_elink_file_cache (hid_t file_id)
 Clears the external link open file cache. More...
 
herr_t H5Fset_libver_bounds (hid_t file_id, H5F_libver_t low, H5F_libver_t high)
 Enables the switch of version bounds setting for a file. More...
 
herr_t H5Fstart_mdc_logging (hid_t file_id)
 Starts logging metadata cache events if logging was previously enabled. More...
 
herr_t H5Fstop_mdc_logging (hid_t file_id)
 Stops logging metadata cache events if logging was previously enabled and is currently ongoing. More...
 
herr_t H5Fget_mdc_logging_status (hid_t file_id, hbool_t *is_enabled, hbool_t *is_currently_logging)
 Gets the current metadata cache logging status. More...
 
herr_t H5Fformat_convert (hid_t fid)
 
herr_t H5Freset_page_buffering_stats (hid_t file_id)
 Resets the page buffer statistics. More...
 
herr_t H5Fget_page_buffering_stats (hid_t file_id, unsigned accesses[2], unsigned hits[2], unsigned misses[2], unsigned evictions[2], unsigned bypasses[2])
 Retrieves statistics about page access when it is enabled. More...
 
herr_t H5Fget_mdc_image_info (hid_t file_id, haddr_t *image_addr, hsize_t *image_size)
 Obtains information about a cache image if it exists. More...
 
herr_t H5Fget_dset_no_attrs_hint (hid_t file_id, hbool_t *minimize)
 Retrieves the setting for whether or not a file will create minimized dataset object headers. More...
 
herr_t H5Fset_dset_no_attrs_hint (hid_t file_id, hbool_t minimize)
 Sets the flag to create minimized dataset object headers. More...
 
herr_t H5Fset_mpi_atomicity (hid_t file_id, hbool_t flag)
 Sets the MPI atomicity mode. More...
 
herr_t H5Fget_mpi_atomicity (hid_t file_id, hbool_t *flag)
 Retrieves the atomicity mode in use. More...
 
herr_t H5Fget_info1 (hid_t obj_id, H5F_info1_t *file_info)
 Retrieves name of file to which object belongs. More...
 
herr_t H5Fset_latest_format (hid_t file_id, hbool_t latest_format)
 Sets thelatest version of the library to be used for writing objects. More...
 
htri_t H5Fis_hdf5 (const char *file_name)
 Determines whether a file is in the HDF5 format. More...
 

Macro Definition Documentation

◆ H5CHECK

#define H5CHECK   H5check(),

◆ H5F_ACC_CREAT

#define H5F_ACC_CREAT   (H5CHECK H5OPEN 0x0010u)

Create non-existing files

◆ H5F_ACC_DEBUG

#define H5F_ACC_DEBUG   (H5CHECK H5OPEN 0x0000u)

Print debug info

Deprecated:
In which version?

◆ H5F_ACC_DEFAULT

#define H5F_ACC_DEFAULT   (H5CHECK H5OPEN 0xffffu)

Default property list identifier

◆ H5F_ACC_EXCL

#define H5F_ACC_EXCL   (H5CHECK H5OPEN 0x0004u)

Fail if file already exists

◆ H5F_ACC_RDONLY

#define H5F_ACC_RDONLY   (H5CHECK H5OPEN 0x0000u)

Absence of RDWR: read-only

◆ H5F_ACC_RDWR

#define H5F_ACC_RDWR   (H5CHECK H5OPEN 0x0001u)

Open for read and write

◆ H5F_ACC_SWMR_READ

#define H5F_ACC_SWMR_READ   (H5CHECK 0x0040u)

Indicate that this file is open for reading in a \ single-writer/multi-reader (SWMR) scenario. Note that \ the process(es) opening the file for SWMR reading must \ also open the file with the H5F_ACC_RDONLY flag.

◆ H5F_ACC_SWMR_WRITE

#define H5F_ACC_SWMR_WRITE   (H5CHECK 0x0020u)

Indicate that this file is open for writing in a \ single-writer/multi-reader (SWMR) scenario. \ Note that the process(es) opening the file for reading \ must open the file with H5F_ACC_RDONLY and use the \ H5F_ACC_SWMR_READ access flag.

◆ H5F_ACC_TRUNC

#define H5F_ACC_TRUNC   (H5CHECK H5OPEN 0x0002u)

Overwrite existing files

◆ H5F_FAMILY_DEFAULT

#define H5F_FAMILY_DEFAULT   (hsize_t)0

◆ H5F_LIBVER_LATEST

#define H5F_LIBVER_LATEST   H5F_LIBVER_V112

◆ H5F_MPIO_DEBUG_KEY

#define H5F_MPIO_DEBUG_KEY   "H5F_mpio_debug_key"

Use this constant string as the MPI_Info key to set H5Fmpio debug flags. To turn on H5Fmpio debug flags, set the MPI_Info value with this key to have the value of a string consisting of the characters that turn on the desired flags.

◆ H5F_NUM_METADATA_READ_RETRY_TYPES

#define H5F_NUM_METADATA_READ_RETRY_TYPES   21

◆ H5F_OBJ_ALL

◆ H5F_OBJ_ATTR

#define H5F_OBJ_ATTR   (0x0010u)

Attribute objects

◆ H5F_OBJ_DATASET

#define H5F_OBJ_DATASET   (0x0002u)

Dataset objects

◆ H5F_OBJ_DATATYPE

#define H5F_OBJ_DATATYPE   (0x0008u)

Named datatype objects

◆ H5F_OBJ_FILE

#define H5F_OBJ_FILE   (0x0001u)

File objects

◆ H5F_OBJ_GROUP

#define H5F_OBJ_GROUP   (0x0004u)

Group objects

◆ H5F_OBJ_LOCAL

#define H5F_OBJ_LOCAL   (0x0020u)

Restrict search to objects opened through current file ID \ (as opposed to objects opened through any file ID accessing this file)

◆ H5F_UNLIMITED

#define H5F_UNLIMITED   ((hsize_t)(-1L))

Unlimited file size for H5Pset_external()

◆ H5OPEN

#define H5OPEN   H5open(),

Typedef Documentation

◆ H5F_flush_cb_t

typedef herr_t(* H5F_flush_cb_t) (hid_t object_id, void *udata)

Callback for H5Pset_object_flush_cb() in a file access property list

Enumeration Type Documentation

◆ H5F_close_degree_t

How does file close behave?

Enumerator
H5F_CLOSE_DEFAULT 

Use the degree pre-defined by underlying VFD

H5F_CLOSE_WEAK 

File closes only after all opened objects are closed

H5F_CLOSE_SEMI 

If no opened objects, file is closed; otherwise, file close fails

H5F_CLOSE_STRONG 

If there are opened objects, close them first, then close file

◆ H5F_file_space_type_t

File space handling strategy for release 1.10.0

Deprecated:
1.10.1
Enumerator
H5F_FILE_SPACE_DEFAULT 

Default (or current) free space strategy setting

H5F_FILE_SPACE_ALL_PERSIST 

Persistent free space managers, aggregators, virtual file driver

H5F_FILE_SPACE_ALL 

Non-persistent free space managers, aggregators, virtual file driver This is the library default

H5F_FILE_SPACE_AGGR_VFD 

Aggregators, Virtual file driver

H5F_FILE_SPACE_VFD 

Virtual file driver

H5F_FILE_SPACE_NTYPES 

Sentinel

◆ H5F_fspace_strategy_t

File space handling strategy

Enumerator
H5F_FSPACE_STRATEGY_FSM_AGGR 

Mechanisms: free-space managers, aggregators, and virtual file drivers This is the library default when not set

H5F_FSPACE_STRATEGY_PAGE 

Mechanisms: free-space managers with embedded paged aggregation and virtual file drivers

H5F_FSPACE_STRATEGY_AGGR 

Mechanisms: aggregators and virtual file drivers

H5F_FSPACE_STRATEGY_NONE 

Mechanisms: virtual file drivers

H5F_FSPACE_STRATEGY_NTYPES 

Sentinel

◆ H5F_libver_t

Library's format versions

Enumerator
H5F_LIBVER_ERROR 
H5F_LIBVER_EARLIEST 

Use the earliest possible format for storing objects

H5F_LIBVER_V18 

Use the latest v18 format for storing objects

H5F_LIBVER_V110 

Use the latest v110 format for storing objects

H5F_LIBVER_V112 

Use the latest v112 format for storing objects

H5F_LIBVER_NBOUNDS 

◆ H5F_mem_t

enum H5F_mem_t

Types of allocation requests. The values larger than H5FD_MEM_DEFAULT should not change other than adding new types to the end. These numbers might appear in files.

Enumerator
H5FD_MEM_NOLIST 

Data should not appear in the free list. Must be negative.

H5FD_MEM_DEFAULT 

Value not yet set. Can also be the datatype set in a larger allocation that will be suballocated by the library. Must be zero.

H5FD_MEM_SUPER 

Superblock data

H5FD_MEM_BTREE 

B-tree data

H5FD_MEM_DRAW 

Raw data (content of datasets, etc.)

H5FD_MEM_GHEAP 

Global heap data

H5FD_MEM_LHEAP 

Local heap data

H5FD_MEM_OHDR 

Object header data

H5FD_MEM_NTYPES 

Sentinel value - must be last

◆ H5F_scope_t

The scope of an operation such as H5Fflush(), e.g., a single file vs. a set of mounted files

Enumerator
H5F_SCOPE_LOCAL 

The specified file handle only

H5F_SCOPE_GLOBAL 

The entire virtual file