Please, help us to better serve our user community by answering the following short survey: https://www.hdfgroup.org/website-survey/
HDF5 1.14.6.08405a5
API Reference
Loading...
Searching...
No Matches
H5FD_class_t Struct Reference

#include <src/H5FDdevelop.h>

Detailed Description

Class information for each file driver

Data Fields

unsigned version
 
H5FD_class_value_t value
 
const char * name
 
haddr_t maxaddr
 
H5F_close_degree_t fc_degree
 
herr_t(* terminate )(void)
 
hsize_t(* sb_size )(H5FD_t *file)
 
herr_t(* sb_encode )(H5FD_t *file, char *name, unsigned char *p)
 
herr_t(* sb_decode )(H5FD_t *f, const char *name, const unsigned char *p)
 
size_t fapl_size
 
void *(* fapl_get )(H5FD_t *file)
 
void *(* fapl_copy )(const void *fapl)
 
herr_t(* fapl_free )(void *fapl)
 
size_t dxpl_size
 
void *(* dxpl_copy )(const void *dxpl)
 
herr_t(* dxpl_free )(void *dxpl)
 
H5FD_t *(* open )(const char *name, unsigned flags, hid_t fapl, haddr_t maxaddr)
 
herr_t(* close )(H5FD_t *file)
 
int(* cmp )(const H5FD_t *f1, const H5FD_t *f2)
 
herr_t(* query )(const H5FD_t *f1, unsigned long *flags)
 
herr_t(* get_type_map )(const H5FD_t *file, H5FD_mem_t *type_map)
 
haddr_t(* alloc )(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, hsize_t size)
 
herr_t(* free )(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, haddr_t addr, hsize_t size)
 
haddr_t(* get_eoa )(const H5FD_t *file, H5FD_mem_t type)
 
herr_t(* set_eoa )(H5FD_t *file, H5FD_mem_t type, haddr_t addr)
 
haddr_t(* get_eof )(const H5FD_t *file, H5FD_mem_t type)
 
herr_t(* get_handle )(H5FD_t *file, hid_t fapl, void **file_handle)
 
herr_t(* read )(H5FD_t *file, H5FD_mem_t type, hid_t dxpl, haddr_t addr, size_t size, void *buffer)
 
herr_t(* write )(H5FD_t *file, H5FD_mem_t type, hid_t dxpl, haddr_t addr, size_t size, const void *buffer)
 
herr_t(* read_vector )(H5FD_t *file, hid_t dxpl, uint32_t count, H5FD_mem_t types[], haddr_t addrs[], size_t sizes[], void *bufs[])
 
herr_t(* write_vector )(H5FD_t *file, hid_t dxpl, uint32_t count, H5FD_mem_t types[], haddr_t addrs[], size_t sizes[], const void *bufs[])
 
herr_t(* read_selection )(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, size_t count, hid_t mem_spaces[], hid_t file_spaces[], haddr_t offsets[], size_t element_sizes[], void *bufs[])
 
herr_t(* write_selection )(H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, size_t count, hid_t mem_spaces[], hid_t file_spaces[], haddr_t offsets[], size_t element_sizes[], const void *bufs[])
 
herr_t(* flush )(H5FD_t *file, hid_t dxpl_id, hbool_t closing)
 
herr_t(* truncate )(H5FD_t *file, hid_t dxpl_id, hbool_t closing)
 
herr_t(* lock )(H5FD_t *file, hbool_t rw)
 
herr_t(* unlock )(H5FD_t *file)
 
herr_t(* del )(const char *name, hid_t fapl)
 
herr_t(* ctl )(H5FD_t *file, uint64_t op_code, uint64_t flags, const void *input, void **output)
 
H5FD_mem_t fl_map [H5FD_MEM_NTYPES]
 

Field Documentation

◆ alloc

haddr_t(* alloc) (H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, hsize_t size)

Allocates file memory

◆ close

herr_t(* close) (H5FD_t *file)

Close an HDF5 file of this driver

◆ cmp

int(* cmp) (const H5FD_t *f1, const H5FD_t *f2)

Compares two files belonging to this driver

◆ ctl

herr_t(* ctl) (H5FD_t *file, uint64_t op_code, uint64_t flags, const void *input, void **output)

Performs a CTL operation

◆ del

herr_t(* del) (const char *name, hid_t fapl)

Deletes a file

◆ dxpl_copy

void *(* dxpl_copy) (const void *dxpl)

Copies the transfer property list

◆ dxpl_free

herr_t(* dxpl_free) (void *dxpl)

Frees the transfer property list

◆ dxpl_size

size_t dxpl_size

Size of the transfer property list

◆ fapl_copy

void *(* fapl_copy) (const void *fapl)

Copies the file access property list

◆ fapl_free

herr_t(* fapl_free) (void *fapl)

Frees the driver-specific file access property list

◆ fapl_get

void *(* fapl_get) (H5FD_t *file)

Returns the file access property list

◆ fapl_size

size_t fapl_size

Size of driver-specific file access properties

◆ fc_degree

H5F_close_degree_t fc_degree

File close behavior degree

◆ fl_map

Free-list map

◆ flush

herr_t(* flush) (H5FD_t *file, hid_t dxpl_id, hbool_t closing)

Flushes all data to disk

◆ free

herr_t(* free) (H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, haddr_t addr, hsize_t size)

Frees the resources for this driver

◆ get_eoa

haddr_t(* get_eoa) (const H5FD_t *file, H5FD_mem_t type)

Gets the address of first byte past the addressed space

◆ get_eof

haddr_t(* get_eof) (const H5FD_t *file, H5FD_mem_t type)

Gets the address of first byte past the file-end

◆ get_handle

herr_t(* get_handle) (H5FD_t *file, hid_t fapl, void **file_handle)

Returns the file handle of this file driver

◆ get_type_map

herr_t(* get_type_map) (const H5FD_t *file, H5FD_mem_t *type_map)

Retrieves the memory type mapping for this file

◆ lock

herr_t(* lock) (H5FD_t *file, hbool_t rw)

Places an advisory lock on a file

◆ maxaddr

haddr_t maxaddr

Maximum address for file

◆ name

const char* name

File driver name, must be unique

◆ open

H5FD_t *(* open) (const char *name, unsigned flags, hid_t fapl, haddr_t maxaddr)

Create or open an HDF5 file of this driver

◆ query

herr_t(* query) (const H5FD_t *f1, unsigned long *flags)

Sets the flags that this driver is capable of supporting

◆ read

herr_t(* read) (H5FD_t *file, H5FD_mem_t type, hid_t dxpl, haddr_t addr, size_t size, void *buffer)

Reads the specified number of bytes of data from the file beginning at the specified address into the provided buffer, according to the specified data transfer properties

◆ read_selection

herr_t(* read_selection) (H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, size_t count, hid_t mem_spaces[], hid_t file_spaces[], haddr_t offsets[], size_t element_sizes[], void *bufs[])

◆ read_vector

herr_t(* read_vector) (H5FD_t *file, hid_t dxpl, uint32_t count, H5FD_mem_t types[], haddr_t addrs[], size_t sizes[], void *bufs[])

Reads the specified length of data from the file into the provided array

◆ sb_decode

herr_t(* sb_decode) (H5FD_t *f, const char *name, const unsigned char *p)

Decodes the superblock information for this driver

◆ sb_encode

herr_t(* sb_encode) (H5FD_t *file, char *name, unsigned char *p)

Encodes driver information from the superblock

◆ sb_size

hsize_t(* sb_size) (H5FD_t *file)

Gets the size of the private information to be stored in the superblock

◆ set_eoa

herr_t(* set_eoa) (H5FD_t *file, H5FD_mem_t type, haddr_t addr)

Sets the end-of-address marker for the file

◆ terminate

herr_t(* terminate) (void)

Shutdowns this driver

◆ truncate

herr_t(* truncate) (H5FD_t *file, hid_t dxpl_id, hbool_t closing)

Truncates a file

◆ unlock

herr_t(* unlock) (H5FD_t *file)

Removes the existing lock on a file

◆ value

File driver identifier

◆ version

unsigned version

File driver class struct version number

◆ write

herr_t(* write) (H5FD_t *file, H5FD_mem_t type, hid_t dxpl, haddr_t addr, size_t size, const void *buffer)

Writes the specified number of bytes of data to the file beginning at the specified address from the provided buffer, according to the specified data transfer properties

◆ write_selection

herr_t(* write_selection) (H5FD_t *file, H5FD_mem_t type, hid_t dxpl_id, size_t count, hid_t mem_spaces[], hid_t file_spaces[], haddr_t offsets[], size_t element_sizes[], const void *bufs[])

◆ write_vector

herr_t(* write_vector) (H5FD_t *file, hid_t dxpl, uint32_t count, H5FD_mem_t types[], haddr_t addrs[], size_t sizes[], const void *bufs[])

Writes the specified length of data in the provided array to the file at the specified offsets


The documentation for this struct was generated from the following file: