HDF5 C++ API  1.10.1
 All Classes Namespaces Functions Variables Typedefs Friends Pages
Public Member Functions | Static Public Attributes | List of all members
H5::FileAccPropList Class Reference

Class FileAccPropList inherits from PropList and provides wrappers for the HDF5 file access property list.

#include <H5FaccProp.h>

Inheritance diagram for H5::FileAccPropList:
H5::PropList H5::IdComponent

Public Member Functions

 FileAccPropList ()
 Creates a file access property list. More...
 
void setStdio () const
 Modifies this property list to use the H5FD_STDIO driver. More...
 
void setDriver (hid_t new_driver_id, const void *new_driver_info) const
 Set file driver for this property list. More...
 
hid_t getDriver () const
 Return the ID of the low-level file driver. More...
 
void setFamilyOffset (hsize_t offset) const
 Sets offset for family driver. More...
 
hsize_t getFamilyOffset () const
 Get offset for family driver. More...
 
void setSec2 () const
 Modifies this file access property list to use the sec2 driver. More...
 
void setCore (size_t increment, hbool_t backing_store) const
 Modifies this file access property list to use the H5FD_CORE driver. More...
 
void getCore (size_t &increment, hbool_t &backing_store) const
 Queries core file driver properties. More...
 
void setFamily (hsize_t memb_size, const FileAccPropList &memb_plist) const
 Sets this file access property list to use the family driver. More...
 
void getFamily (hsize_t &memb_size, FileAccPropList &memb_plist) const
 Returns information about the family file access property list. More...
 
FileAccPropList getFamily (hsize_t &memb_size) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts and its return value. More...
 
void setSplit (const FileAccPropList &meta_plist, const FileAccPropList &raw_plist, const char *meta_ext=".meta", const char *raw_ext=".raw") const
 Emulates the old split file driver, which stored meta data in one file and raw data in another file. More...
 
void setSplit (const FileAccPropList &meta_plist, const FileAccPropList &raw_plist, const H5std_string &meta_ext=".meta", const H5std_string &raw_ext=".raw") const
 This is an overloaded member function, provided for convenience. It takes character arguments as H5std_string. More...
 
void setSieveBufSize (size_t bufsize) const
 Sets the maximum size of the data sieve buffer. More...
 
size_t getSieveBufSize () const
 Returns the current settings for the data sieve buffer size property from this property list. More...
 
void setMetaBlockSize (hsize_t &block_size) const
 Sets the minimum size of metadata block allocations. More...
 
hsize_t getMetaBlockSize () const
 Returns the current metadata block size setting. More...
 
void setLog (const char *logfile, unsigned flags, size_t buf_size) const
 Modifies this file access property list to use the logging driver. More...
 
void setLog (const H5std_string &logfile, unsigned flags, size_t buf_size) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. More...
 
void setAlignment (hsize_t threshold=1, hsize_t alignment=1) const
 Sets the alignment properties of this property list. More...
 
void getAlignment (hsize_t &threshold, hsize_t &alignment) const
 Returns the current settings for alignment properties from this property list. More...
 
void setMultiType (H5FD_mem_t dtype) const
 Sets data type for MULTI driver. More...
 
H5FD_mem_t getMultiType () const
 Returns the data type property for MULTI driver. More...
 
void setCache (int mdc_nelmts, size_t rdcc_nelmts, size_t rdcc_nbytes, double rdcc_w0) const
 Sets the meta data cache and raw data chunk cache parameters. More...
 
void getCache (int &mdc_nelmts, size_t &rdcc_nelmts, size_t &rdcc_nbytes, double &rdcc_w0) const
 Queries the meta data cache and raw data chunk cache parameters. More...
 
void setFcloseDegree (H5F_close_degree_t degree) const
 Sets the degree for the file close behavior. More...
 
H5F_close_degree_t getFcloseDegree () const
 Returns the degree for the file close behavior. More...
 
void setFileAccDirect (size_t boundary, size_t block_size, size_t cbuf_size) const
 
void getFileAccDirect (size_t &boundary, size_t &block_size, size_t &cbuf_size) const
 
void setGcReferences (unsigned gc_ref=0) const
 Sets garbage collecting references flag. More...
 
unsigned getGcReferences () const
 Returns the garbage collecting references setting. More...
 
void setLibverBounds (H5F_libver_t libver_low, H5F_libver_t libver_high) const
 Sets bounds on versions of library format to be used when creating or writing objects. More...
 
void getLibverBounds (H5F_libver_t &libver_low, H5F_libver_t &libver_high) const
 Gets the current settings for the library version format bounds from a file access property list. More...
 
virtual H5std_string fromClass () const
 Returns this class name. More...
 
 FileAccPropList (const FileAccPropList &original)
 Copy Constructor: makes a copy of the original. More...
 
 FileAccPropList (const hid_t plist_id)
 Creates a file access property list using the id of an existing one. More...
 
virtual ~FileAccPropList ()
 Noop destructor. More...
 
- Public Member Functions inherited from H5::PropList
 PropList (const hid_t plist_id)
 Creates a property list using the id of an existing property. More...
 
PropListoperator= (const PropList &rhs)
 Assignment operator. More...
 
bool operator== (const PropList &rhs) const
 Compares this property list or class against the given list or class. More...
 
virtual void close ()
 Closes the property list if it is not a default one. More...
 
void closeClass () const
 Close a property list class. More...
 
void copy (const PropList &like_plist)
 Makes a copy of an existing property list. More...
 
void copyProp (PropList &dest, const char *name) const
 Copies a property from this property list or class to another. More...
 
void copyProp (PropList &dest, const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. More...
 
void copyProp (PropList &dest, PropList &src, const char *name) const
 Copies a property from one list or class to another - Obsolete. More...
 
void copyProp (PropList &dest, PropList &src, const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. - Obsolete. More...
 
hid_t getClass () const
 Returns the class of this property list, i.e. H5P_FILE_CREATE... More...
 
H5std_string getClassName () const
 Return the name of a generic property list class. More...
 
PropList getClassParent () const
 Returns the parent class of a generic property class. More...
 
size_t getNumProps () const
 Returns the number of properties in this property list or class. More...
 
void getProperty (const char *name, void *value) const
 Query the value of a property in a property list. More...
 
void getProperty (const H5std_string &name, void *value) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. More...
 
H5std_string getProperty (const char *name) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. More...
 
H5std_string getProperty (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. More...
 
void setProperty (const char *name, const char *charptr) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. More...
 
void setProperty (const char *name, const void *value) const
 Set a property's value in a property list. More...
 
void setProperty (const char *name, const H5std_string &strg) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. More...
 
void setProperty (const H5std_string &name, const void *value) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. More...
 
void setProperty (const H5std_string &name, const H5std_string &strg) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. More...
 
void setProperty (const char *name, void *value) const
 Deprecated due to missing const in prototype. (1.10.1) More...
 
void setProperty (const char *name, H5std_string &strg) const
 Deprecated due to missing const in prototype. (1.10.1) More...
 
void setProperty (const H5std_string &name, void *value) const
 Deprecated due to missing const in prototype. (1.10.1) More...
 
void setProperty (const H5std_string &name, H5std_string &strg) const
 Deprecated due to missing const in prototype. (1.10.1) More...
 
size_t getPropSize (const char *name) const
 Query the size of a property in a property list or class. More...
 
size_t getPropSize (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. More...
 
bool isAClass (const PropList &prop_class) const
 Determines whether a property list is a certain class. More...
 
bool propExist (const char *name) const
 Query the existance of a property in a property object. More...
 
bool propExist (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. More...
 
void removeProp (const char *name) const
 Removes a property from a property list. More...
 
void removeProp (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what arguments it accepts. More...
 
 PropList ()
 Default constructor: creates a stub property list object. More...
 
 PropList (const PropList &original)
 Copy constructor. More...
 
virtual hid_t getId () const
 Get the id of this property list. More...
 
virtual ~PropList ()
 Properly terminates access to this property list. More...
 
- Public Member Functions inherited from H5::IdComponent
void incRefCount (const hid_t obj_id) const
 Increment reference counter for a given id. More...
 
void incRefCount () const
 Increment reference counter for the id of this object. More...
 
void decRefCount (const hid_t obj_id) const
 Decrement reference counter for a given id. More...
 
void decRefCount () const
 Decrement reference counter for the id of this object. More...
 
int getCounter (const hid_t obj_id) const
 Returns the reference counter for a given id. More...
 
int getCounter () const
 Returns the reference counter for the id of this object. More...
 
H5I_type_t getHDFObjType () const
 Returns the type of the object. It is an overloaded function of the above function. More...
 
IdComponentoperator= (const IdComponent &rhs)
 Assignment operator. More...
 
void setId (const hid_t new_id)
 Sets the identifier of this object to a new value. More...
 
virtual ~IdComponent ()
 Noop destructor. More...
 

Static Public Attributes

static const FileAccPropListDEFAULT
 Default file access property list. More...
 
- Static Public Attributes inherited from H5::PropList
static const PropListDEFAULT
 Default property list. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from H5::IdComponent
static H5I_type_t getHDFObjType (const hid_t obj_id)
 Given an id, returns the type of the object. More...
 
static hsize_t getNumMembers (H5I_type_t type)
 Returns the number of members of the given type. More...
 
static bool isValid (hid_t an_id)
 Checks if the given ID is valid. More...
 
static bool typeExists (H5I_type_t type)
 Queries if a given type is currently registered with the library. More...
 

Constructor & Destructor Documentation

H5::FileAccPropList::FileAccPropList ( )
H5::FileAccPropList::FileAccPropList ( const FileAccPropList original)
Parameters
original- IN: FileAccPropList instance to copy
H5::FileAccPropList::FileAccPropList ( const hid_t  plist_id)
H5::FileAccPropList::~FileAccPropList ( )
virtual

Member Function Documentation

virtual H5std_string H5::FileAccPropList::fromClass ( ) const
inlinevirtual

Reimplemented from H5::PropList.

void H5::FileAccPropList::getAlignment ( hsize_t &  threshold,
hsize_t &  alignment 
) const
Parameters
threshold- OUT: Retrieved threshold value for file object size
alignment- OUT: Retrieved alignment value
Exceptions
H5::PropListIException
void H5::FileAccPropList::getCache ( int &  mdc_nelmts,
size_t &  rdcc_nelmts,
size_t &  rdcc_nbytes,
double &  rdcc_w0 
) const
Parameters
mdc_nelmts- OUT: Number of elements in the meta data cache
rdcc_nelmts- OUT: Number of elements in the raw data chunk cache
rdcc_nbytes- OUT: Total size of the raw data chunk cache, in bytes
rdcc_w0- OUT: Preemption policy
Exceptions
H5::PropListIException
void H5::FileAccPropList::getCore ( size_t &  increment,
hbool_t &  backing_store 
) const
Parameters
increment- OUT: Size of memory increment, in bytes
backing_store- OUT: Indicating whether to write the file contents to disk when the file is closed
Exceptions
H5::PropListIException
hid_t H5::FileAccPropList::getDriver ( ) const
Returns
A low-level driver ID which is the same ID used when the driver was set for the property list. The driver ID is only valid as long as the file driver remains registered. Valid driver identifiers can be found at: http://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-GetDriver
Exceptions
H5::PropListIException
void H5::FileAccPropList::getFamily ( hsize_t &  memb_size,
FileAccPropList memb_plist 
) const
Parameters
memb_size- OUT: Size in bytes of each file member
memb_plist- OUT: Retrieved file access property list for each file member
Exceptions
H5::PropListIException
FileAccPropList H5::FileAccPropList::getFamily ( hsize_t &  memb_size) const
Parameters
memb_size- OUT: Size in bytes of each file member
Returns
The file access property list for each file member
Exceptions
H5::PropListIException
hsize_t H5::FileAccPropList::getFamilyOffset ( ) const
Returns
Offset for family driver
Exceptions
H5::PropListIException
H5F_close_degree_t H5::FileAccPropList::getFcloseDegree ( ) const
Returns
The degree for the file close behavior
Exceptions
H5::PropListIException
void H5::FileAccPropList::getFileAccDirect ( size_t &  boundary,
size_t &  block_size,
size_t &  cbuf_size 
) const
unsigned H5::FileAccPropList::getGcReferences ( ) const
Returns
Garbage collecting references setting, 0 (off) or 1 (on)
Exceptions
H5::PropListIException
void H5::FileAccPropList::getLibverBounds ( H5F_libver_t &  libver_low,
H5F_libver_t &  libver_high 
) const
Parameters
libver_low- OUT: Earliest version of the library that will be used for creating or writing objects
libver_high- OUT: Latest version of the library that will be used for creating or writing objects
Exceptions
H5::PropListIException
Description
On success, the argument libver_low can have the following values:
  • H5F_LIBVER_EARLIEST
  • H5F_LIBVER_18
  • H5F_LIBVER_LATEST
and libver_high:
  • H5F_LIBVER_18
  • H5F_LIBVER_LATEST
hsize_t H5::FileAccPropList::getMetaBlockSize ( ) const
Returns
Metadata block size
Exceptions
H5::PropListIException
H5FD_mem_t H5::FileAccPropList::getMultiType ( ) const
Returns
The data type property
Exceptions
H5::PropListIException
Description
More details and possible returned values can be found at: http://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-GetMultiType
size_t H5::FileAccPropList::getSieveBufSize ( ) const
Returns
Data sieve buffer size, in bytes
Exceptions
H5::PropListIException
void H5::FileAccPropList::setAlignment ( hsize_t  threshold = 1,
hsize_t  alignment = 1 
) const
Parameters
threshold- IN: Threshold value for file object size
alignment- IN: Alignment value
Exceptions
H5::PropListIException
Description
The parameter threshold must have a non-negative value. Note that setting the threshold value to 0 (zero) has the effect of a special case, forcing everything to be aligned. The parameter alignment must have a positive value.

For detail on setting alignment, please refer to http://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-SetAlignment

void H5::FileAccPropList::setCache ( int  mdc_nelmts,
size_t  rdcc_nelmts,
size_t  rdcc_nbytes,
double  rdcc_w0 
) const
Parameters
mdc_nelmts- IN: Number of elements in the meta data cache
rdcc_nelmts- IN: Number of elements in the raw data chunk cache
rdcc_nbytes- IN: Total size of the raw data chunk cache, in bytes
rdcc_w0- IN: Preemption policy
Exceptions
H5::PropListIException
Description
The argument rdcc_w0 should hold a value between 0 and 1 inclusive. This value indicates how much chunks that have been fully read are favored for preemption. A value of zero means fully read chunks are treated no differently than other chunks (the preemption is strictly LRU) while a value of one means fully read chunks are always preempted before other chunks.
void H5::FileAccPropList::setCore ( size_t  increment,
hbool_t  backing_store 
) const
Parameters
increment- IN: Specifies how much memory to increase each time more memory is needed, in bytes
backing_store- IN: Indicating whether to write the file contents to disk when the file is closed
Exceptions
H5::PropListIException
Description
For more details on the use of H5FD_CORE driver, please refer to http://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-SetFaplCore
void H5::FileAccPropList::setDriver ( hid_t  new_driver_id,
const void *  new_driver_info 
) const
Parameters
new_driver_id- IN: File driver
new_driver_info- IN: Struct containing the driver-specific properites
Exceptions
H5::PropListIException
Description
For a list of valid driver identifiers, please see the C layer Reference Manual at: http://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-SetDriver
void H5::FileAccPropList::setFamily ( hsize_t  memb_size,
const FileAccPropList memb_plist 
) const
Parameters
memb_size- IN: Size in bytes of each file member
memb_plist- IN: File access property list to be used for each family member
Exceptions
H5::PropListIException
Description
Note that memb_size is used only when creating a new file.

References H5::PropList::getId().

void H5::FileAccPropList::setFamilyOffset ( hsize_t  offset) const
Parameters
offset- IN: offset value
Exceptions
H5::PropListIException
void H5::FileAccPropList::setFcloseDegree ( H5F_close_degree_t  degree) const
Parameters
degree- IN:
Exceptions
H5::PropListIException
void H5::FileAccPropList::setFileAccDirect ( size_t  boundary,
size_t  block_size,
size_t  cbuf_size 
) const
void H5::FileAccPropList::setGcReferences ( unsigned  gc_ref = 0) const
Parameters
gc_ref- IN: Flag setting reference garbage collection to on (1) or off (0).
Exceptions
H5::PropListIException
Description
For detail on fapl, please refer to http://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-SetGCReferences
void H5::FileAccPropList::setLibverBounds ( H5F_libver_t  libver_low,
H5F_libver_t  libver_high 
) const
Parameters
libver_low- IN: Earliest version of the library that will be used for creating or writing objects
libver_high- IN: Latest version of the library that will be
Exceptions
H5::PropListIException
Description
Valid values of libver_low are as follows:
  • H5F_LIBVER_EARLIEST (Default)
  • H5F_LIBVER_18
  • H5F_LIBVER_LATEST
Valid values of libver_high are as follows:
  • H5F_LIBVER_18
  • H5F_LIBVER_LATEST (Default)
For more details, please refer to http://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-SetLibverBounds
void H5::FileAccPropList::setLog ( const char *  logfile,
unsigned  flags,
size_t  buf_size 
) const
Parameters
logfile- IN: Name of the log file
flags- IN: Flags specifying the types of logging activity
buf_size- IN: Size of the logging buffer
Exceptions
H5::PropListIException
Description
For detail on flags, please refer to http://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-SetFaplLog

Referenced by setLog().

void H5::FileAccPropList::setLog ( const H5std_string &  logfile,
unsigned  flags,
size_t  buf_size 
) const
Parameters
logfile- IN: Name of the log file - string
flags- IN: Flags specifying the types of logging activity
buf_size- IN: Size of the logging buffer

References setLog().

void H5::FileAccPropList::setMetaBlockSize ( hsize_t &  block_size) const
Parameters
block_size- IN: Minimum size, in bytes, of metadata block allocations
Exceptions
H5::PropListIException
Description
For more detail, please see the C layer Reference Manual at: http://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-SetMetaBlockSize
void H5::FileAccPropList::setMultiType ( H5FD_mem_t  dtype) const
Parameters
dtype- IN: Type of data
Exceptions
H5::PropListIException
Description
More details and valid values for dtype can be found at: http://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-SetMultiType
void H5::FileAccPropList::setSec2 ( ) const
void H5::FileAccPropList::setSieveBufSize ( size_t  bufsize) const
Parameters
bufsize- IN: Maximum size, in bytes, of data sieve buffer
Exceptions
H5::PropListIException
Description
For detail on data sieving, please refer to http://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-SetSieveBufSize
void H5::FileAccPropList::setSplit ( const FileAccPropList meta_plist,
const FileAccPropList raw_plist,
const char *  meta_ext = ".meta",
const char *  raw_ext = ".raw" 
) const
Parameters
meta_plist- IN: File access plist for the metadata file
raw_plist- IN: File access plist for the raw data file
meta_ext- IN: Metadata filename extension as char*
raw_ext- IN: Raw data filename extension as char*
Exceptions
H5::PropListIException
Description
Temporary - For information, please refer to: http://www.hdfgroup.org/HDF5/doc/RM/RM_H5P.html#Property-SetFaplSplit

References H5::PropList::getId().

Referenced by setSplit().

void H5::FileAccPropList::setSplit ( const FileAccPropList meta_plist,
const FileAccPropList raw_plist,
const H5std_string &  meta_ext = ".meta",
const H5std_string &  raw_ext = ".raw" 
) const
Parameters
meta_plist- IN: File access plist for the metadata file
raw_plist- IN: File access plist for the raw data file
meta_ext- IN: Metadata filename extension as H5std_string
raw_ext- IN: Raw data filename extension as H5std_string
Exceptions
H5::PropListIException

References setSplit().

void H5::FileAccPropList::setStdio ( ) const

Member Data Documentation

const FileAccPropList& H5::FileAccPropList::DEFAULT
static

The documentation for this class was generated from the following files:


The HDF Group Help Desk:
  Copyright by The HDF Group
and the Board of Trustees of the University of Illinois