HDF5  1.13.0
H5Fpublic.h File Reference
#include "H5public.h"
#include "H5ACpublic.h"
#include "H5Ipublic.h"

Data Structures

struct  H5F_info2_t
 [H5F_info2_t_snip] More...
 
struct  H5F_sect_info_t
 [H5F_sect_info_t_snip] More...
 
struct  H5F_retry_info_t
 
struct  H5F_info1_t
 [H5F_info1_t_snip] More...
 

Macros

#define H5CHECK   H5check(),
 
#define H5OPEN   H5open(),
 
#define H5F_ACC_RDONLY   (H5CHECK H5OPEN 0x0000u) /*absence of rdwr => rd-only */
 
#define H5F_ACC_RDWR   (H5CHECK H5OPEN 0x0001u) /*open for read and write */
 
#define H5F_ACC_TRUNC   (H5CHECK H5OPEN 0x0002u) /*overwrite existing files */
 
#define H5F_ACC_EXCL   (H5CHECK H5OPEN 0x0004u) /*fail if file already exists*/
 
#define H5F_ACC_CREAT   (H5CHECK H5OPEN 0x0010u) /*create non-existing files */
 
#define H5F_ACC_SWMR_WRITE
 
#define H5F_ACC_SWMR_READ
 
#define H5F_ACC_DEFAULT   (H5CHECK H5OPEN 0xffffu) /*ignore setting on lapl */
 
#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_UNLIMITED   ((hsize_t)(-1L))
 
#define H5F_LIBVER_LATEST   H5F_LIBVER_V114
 
#define H5F_NUM_METADATA_READ_RETRY_TYPES   21
 
#define H5F_ACC_DEBUG   (H5CHECK H5OPEN 0x0000u) /*print debug info (deprecated)*/
 

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, 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,
  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, 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
}
 [H5F_info2_t_snip] More...
 
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_V114 = 4, H5F_LIBVER_NBOUNDS, H5F_LIBVER_ERROR = -1,
  H5F_LIBVER_EARLIEST = 0, H5F_LIBVER_V18 = 1, H5F_LIBVER_V110 = 2, H5F_LIBVER_V112 = 3,
  H5F_LIBVER_V114 = 4, H5F_LIBVER_NBOUNDS
}
 [H5F_sect_info_t_snip] More...
 
enum  H5F_fspace_strategy_t {
  H5F_FSPACE_STRATEGY_FSM_AGGR = 0, H5F_FSPACE_STRATEGY_PAGE = 1, H5F_FSPACE_STRATEGY_AGGR = 2, H5F_FSPACE_STRATEGY_NONE = 3,
  H5F_FSPACE_STRATEGY_NTYPES, H5F_FSPACE_STRATEGY_FSM_AGGR = 0, H5F_FSPACE_STRATEGY_PAGE = 1, 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, 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)
 
herr_t H5Fset_mdc_config (hid_t file_id, H5AC_cache_config_t *config_ptr)
 
herr_t H5Fget_mdc_hit_rate (hid_t file_id, double *hit_rate_ptr)
 
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)
 
herr_t H5Freset_mdc_hit_rate_stats (hid_t file_id)
 
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)
 
herr_t H5Fstart_swmr_write (hid_t file_id)
 
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)
 
herr_t H5Fstop_mdc_logging (hid_t file_id)
 
herr_t H5Fget_mdc_logging_status (hid_t file_id, hbool_t *is_enabled, hbool_t *is_currently_logging)
 
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)
 
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 H5Fget_info1 (hid_t obj_id, H5F_info1_t *file_info)
 [H5F_info1_t_snip] 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)*/

◆ H5F_ACC_DEFAULT

#define H5F_ACC_DEFAULT   (H5CHECK H5OPEN 0xffffu) /*ignore setting on lapl */

◆ 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 => rd-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
Value:
(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 RDONLY
* flag. */

◆ H5F_ACC_SWMR_WRITE

#define H5F_ACC_SWMR_WRITE
Value:
(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 RDONLY access, and use
* the special "SWMR_READ" access
* flag. */

◆ H5F_ACC_TRUNC

#define H5F_ACC_TRUNC   (H5CHECK H5OPEN 0x0002u) /*overwrite existing files */
Examples
H5Fclose.c, and H5Fcreate.c.

◆ H5F_FAMILY_DEFAULT

#define H5F_FAMILY_DEFAULT   (hsize_t)0

◆ H5F_LIBVER_LATEST

#define H5F_LIBVER_LATEST   H5F_LIBVER_V114

◆ 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 underlining VFL

H5F_CLOSE_WEAK 

File closes only after all opened objects are closed

H5F_CLOSE_SEMI 

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

H5F_CLOSE_STRONG 

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

H5F_CLOSE_DEFAULT 

Use the degree pre-defined by underlining VFL

H5F_CLOSE_WEAK 

File closes only after all opened objects are closed

H5F_CLOSE_SEMI 

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

H5F_CLOSE_STRONG 

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

◆ H5F_file_space_type_t

Enumerator
H5F_FILE_SPACE_DEFAULT 
H5F_FILE_SPACE_ALL_PERSIST 
H5F_FILE_SPACE_ALL 
H5F_FILE_SPACE_AGGR_VFD 
H5F_FILE_SPACE_VFD 
H5F_FILE_SPACE_NTYPES 
H5F_FILE_SPACE_DEFAULT 
H5F_FILE_SPACE_ALL_PERSIST 
H5F_FILE_SPACE_ALL 
H5F_FILE_SPACE_AGGR_VFD 
H5F_FILE_SPACE_VFD 
H5F_FILE_SPACE_NTYPES 

◆ H5F_fspace_strategy_t

File space handling strategy

Enumerator
H5F_FSPACE_STRATEGY_FSM_AGGR 

Mechanisms: free-space managers, aggregators, and virtual file drivers

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 
H5F_FSPACE_STRATEGY_FSM_AGGR 

Mechanisms: free-space managers, aggregators, and virtual file drivers

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 

◆ H5F_libver_t

[H5F_sect_info_t_snip]

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_V114 

Use the latest v114 format for storing objects

H5F_LIBVER_NBOUNDS 
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_V114 

Use the latest v114 format for storing objects

H5F_LIBVER_NBOUNDS 

◆ H5F_mem_t

enum H5F_mem_t

[H5F_info2_t_snip]

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

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 difference between a single file and a set of mounted files

Enumerator
H5F_SCOPE_LOCAL 

specified file handle only

H5F_SCOPE_GLOBAL 

entire virtual file

H5F_SCOPE_LOCAL 

specified file handle only

H5F_SCOPE_GLOBAL 

entire virtual file

Function Documentation

◆ H5Fformat_convert()

herr_t H5Fformat_convert ( hid_t  fid)

\ingroup SWMR

◆ H5Fget_mdc_config()

herr_t H5Fget_mdc_config ( hid_t  file_id,
H5AC_cache_config_t config_ptr 
)

\ingroup MDC

◆ H5Fget_mdc_hit_rate()

herr_t H5Fget_mdc_hit_rate ( hid_t  file_id,
double *  hit_rate_ptr 
)

\ingroup MDC

◆ H5Fget_mdc_image_info()

herr_t H5Fget_mdc_image_info ( hid_t  file_id,
haddr_t *  image_addr,
hsize_t *  image_size 
)

\ingroup MDC

◆ H5Fget_mdc_logging_status()

herr_t H5Fget_mdc_logging_status ( hid_t  file_id,
hbool_t is_enabled,
hbool_t is_currently_logging 
)

\ingroup MDC

◆ H5Fget_mdc_size()

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 
)

\ingroup MDC

◆ H5Fget_metadata_read_retry_info()

herr_t H5Fget_metadata_read_retry_info ( hid_t  file_id,
H5F_retry_info_t info 
)

\ingroup SWMR

◆ H5Freset_mdc_hit_rate_stats()

herr_t H5Freset_mdc_hit_rate_stats ( hid_t  file_id)

\ingroup MDC

◆ H5Fset_mdc_config()

herr_t H5Fset_mdc_config ( hid_t  file_id,
H5AC_cache_config_t config_ptr 
)

\ingroup MDC

◆ H5Fstart_mdc_logging()

herr_t H5Fstart_mdc_logging ( hid_t  file_id)

\ingroup MDC

◆ H5Fstart_swmr_write()

herr_t H5Fstart_swmr_write ( hid_t  file_id)

\ingroup SWMR

◆ H5Fstop_mdc_logging()

herr_t H5Fstop_mdc_logging ( hid_t  file_id)

\ingroup MDC

H5CHECK
#define H5CHECK
Definition: H5Fpublic.h:28