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
H5Fpublic.h File Reference
#include "H5public.h"
#include "H5ACpublic.h"
#include "H5Ipublic.h"

Data Structures

struct  H5F_info_t
 

Macros

#define H5CHECK   H5check(),
 
#define H5F_ACC_RDONLY   (H5CHECK 0x0000u)
 
#define H5F_ACC_RDWR   (H5CHECK 0x0001u)
 
#define H5F_ACC_TRUNC   (H5CHECK 0x0002u)
 
#define H5F_ACC_EXCL   (H5CHECK 0x0004u)
 
#define H5F_ACC_DEBUG   (H5CHECK 0x0000u)
 
#define H5F_ACC_CREAT   (H5CHECK 0x0010u)
 
#define H5F_ACC_DEFAULT   (H5CHECK 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_18   H5F_LIBVER_LATEST
 

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_EARLIEST , H5F_LIBVER_LATEST }
 

Functions

htri_t H5Fis_hdf5 (const char *filename)
 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...
 
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...
 
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...
 
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_info (hid_t obj_id, H5F_info_t *file_info)
 Retrieves name of file to which object belongs. More...
 
herr_t H5Fclear_elink_file_cache (hid_t file_id)
 Clears the external link open file cache. 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...
 

Macro Definition Documentation

◆ H5CHECK

#define H5CHECK   H5check(),

◆ H5F_ACC_CREAT

#define H5F_ACC_CREAT   (H5CHECK 0x0010u)

create non-existing files

◆ H5F_ACC_DEBUG

#define H5F_ACC_DEBUG   (H5CHECK 0x0000u)

print debug info (no longer used)

◆ H5F_ACC_DEFAULT

#define H5F_ACC_DEFAULT   (H5CHECK 0xffffu)

Default property list identifier

◆ H5F_ACC_EXCL

#define H5F_ACC_EXCL   (H5CHECK 0x0004u)

Fail if file already exists

◆ H5F_ACC_RDONLY

#define H5F_ACC_RDONLY   (H5CHECK 0x0000u)

Absence of RDWR: read-only

◆ H5F_ACC_RDWR

#define H5F_ACC_RDWR   (H5CHECK 0x0001u)

Open for read and write

◆ H5F_ACC_TRUNC

#define H5F_ACC_TRUNC   (H5CHECK 0x0002u)

Overwrite existing files

◆ H5F_FAMILY_DEFAULT

#define H5F_FAMILY_DEFAULT   (hsize_t)0

◆ H5F_LIBVER_18

#define H5F_LIBVER_18   H5F_LIBVER_LATEST

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

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_libver_t

Library's format versions

Enumerator
H5F_LIBVER_EARLIEST 

Use the earliest possible format for storing objects

H5F_LIBVER_LATEST 

Use the latest possible format available for storing objects

◆ 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