diff options
author | Binh-Minh Ribler <bmribler@hdfgroup.org> | 2004-05-02 22:05:25 (GMT) |
---|---|---|
committer | Binh-Minh Ribler <bmribler@hdfgroup.org> | 2004-05-02 22:05:25 (GMT) |
commit | db8f63f552de78aed3a0a773240380445519fdaf (patch) | |
tree | 84fd4d92821a9d45a9cee88a7231753a2c1b8118 /c++/src/H5FaccProp.h | |
parent | 51455f42822a4bfba5ceaf827a8e4a6a98d1c408 (diff) | |
download | hdf5-db8f63f552de78aed3a0a773240380445519fdaf.zip hdf5-db8f63f552de78aed3a0a773240380445519fdaf.tar.gz hdf5-db8f63f552de78aed3a0a773240380445519fdaf.tar.bz2 |
[svn-r8465] Purpose:
Add more C++ wrappers - incrementally check-in
Description:
Added wrapper for many C property list functions and added Doxygen
documentation to existing C++ functions in these files. This is
an incremental check-in to preserve the code, corresponding tests
will follow in a few weeks.
For H5PropList.h and H5PropList.cpp, added C++ wrappers for:
H5Pexist
H5Pclose_class
H5Pget
H5Pget_size
H5Pget_class_name
H5Pget_nprops
H5Pset
H5Pisa_class
H5Premove
H5Pequal
H5Pget_class_parent
For H5FaccProp.h and H5FaccProp.cpp, added C++ wrappers for:
H5Ps[g]et_driver
H5Ps[g]et_family_offset
H5Ps[g]et_fapl_core
H5Ps[g]et_fapl_family
H5Ps[g]et_fapl_stream
H5Ps[g]et_sieve_buf_size
H5Ps[g]et_meta_block_size
H5Ps[g]et_alignment
H5Ps[g]et_multi_type
H5Ps[g]et_fclose_degree
H5Pset_fapl_stdio
H5Pset_fapl_split
H5Pset_fapl_log
H5Pset_fapl_sec2
For H5FcreatProp.h and H5FcreatProp.cpp, added C++ wrappers for:
H5Pfill_value_defined
H5Premove_filter
H5Pget_filter_by_id
H5Pmodify_filter
H5Pall_filters_avail
H5Pset_shuffle
H5Ps[g]et_alloc_time
H5Ps[g]et_fill_time
H5Pset_fletcher32
For H5DxferProp.h and H5DxferProp.cpp, added C++ wrappers for:
H5Ps[g]et_dxpl_multi
H5Ps[g]et_small_data_block_size
H5Ps[g]et_hyper_vector_size
H5Ps[g]et_edc_check
Platforms:
SunOS 5.7 (arabica)
Linux 2.4 (eirene)
SunOS 5.8-64 (sol)
Diffstat (limited to 'c++/src/H5FaccProp.h')
-rw-r--r-- | c++/src/H5FaccProp.h | 118 |
1 files changed, 68 insertions, 50 deletions
diff --git a/c++/src/H5FaccProp.h b/c++/src/H5FaccProp.h index 91f2222..2063249 100644 --- a/c++/src/H5FaccProp.h +++ b/c++/src/H5FaccProp.h @@ -29,75 +29,93 @@ class H5_DLLCPP FileAccPropList : public PropList { FileAccPropList(); // Copy constructor: creates a copy of a FileAccPropList object - FileAccPropList( const FileAccPropList& orig ); + FileAccPropList( const FileAccPropList& original ); - // Sets the low level file driver to use the functions - // declared in the stdio.h - // void setStdio() const; + // Modifies this property list to use the H5FD_STDIO driver + void setStdio() const; - // Determines whether the file access property list is set to the - // stdio driver. - // bool getStdio() const; + // Set file driver for this property list + void setDriver(hid_t new_driver_id, const void *new_driver_info) const; - // Sets alignment properties of this file access property list - void setAlignment( hsize_t threshold = 1, hsize_t alignment = 1 ) const; + // Returns a low-level file driver identifier. + hid_t getDriver() const; - // Retrieves the current settings for alignment properties from - // this file access property list. - void getAlignment( hsize_t& threshold, hsize_t& alignment ) const; + // Sets offset for family driver. + void setFamilyOffset(hsize_t offset) const; - /* MPI stuff not working in serial mode - //void setMpi( MPI_Comm comm, MPI_Info info ) const; - //void getMpi( MPI_Comm& comm, MPI_Info& info ) const; - */ + // Gets offset for family driver. + hsize_t getFamilyOffset() const; - // Returns a low-level file driver identifier. - // H5F_driver_t getDriver() const; + // Modifies this file access property list to use the sec2 driver. + void setSec2() const; - // Sets the low-level file driver to use the declared functions. - // void setSec2() const; + // Modifies this file access property list to use the H5FD_CORE + // driver. + void setCore (size_t increment, hbool_t backing_store) const; - // Determines whether this file access property list is set to the - // sec2 driver. - // bool getSec2() const; + // Queries H5FD_CORE driver properties. + void getCore (size_t& increment, hbool_t& backing_store) const; - // Sets the low-level file driver to use malloc() and free(). - // void setCore( size_t increment ) const; + // Sets this file access properties list to the family driver. + void setFamily( hsize_t memb_size, const FileAccPropList& memb_plist ) const; - // Determines whether this file access property list is set to the - // core driver and retrieves the increment. - // bool getCore( size_t& increment ) const; + // Returns information about the family file access property list. + void getFamily(hsize_t& memb_size, FileAccPropList& memb_plist) const; + FileAccPropList getFamily(hsize_t& memb_size) const; - // Sets this file access properties list to the family driver. - // void setFamily( hsize_t memb_size, const FileAccPropList& memb_plist ) const; + // Emulates the old split file driver, + void setSplit( FileAccPropList& meta_plist, FileAccPropList& raw_plist, + const char* meta_ext = ".meta", const char* raw_ext = ".raw" ) const; + void setSplit( FileAccPropList& meta_plist, FileAccPropList& raw_plist, + const string& meta_ext, const string& raw_ext ) const; + + // Modifies this file access property list to use the Stream driver. + void setStream(H5FD_stream_fapl_t &fapl) const; + + // Retrieves the streaming I/O driver settings + H5FD_stream_fapl_t getStream() const; + + // Sets the maximum size of the data sieve buffer. + void setSieveBufSize(size_t bufsize) const; + + // Returns the current settings for the data sieve buffer size + // property + size_t getSieveBufSize() const; - // Determines whether this file access property list is set to the - // family driver and retrieves the member's file access property list. - // bool getFamily( hsize_t& memb_size, FileAccPropList& memb_plist ) const; + // Sets the minimum size of metadata block allocations. + void setMetaBlockSize(hsize_t &block_size) const; + + // Returns the current metadata block size setting. + hsize_t getMetaBlockSize() const; + + // Modifies this file access property list to use the logging driver. + void setLog(const char *logfile, unsigned flags, size_t buf_size) const; + void setLog(const string& logfile, unsigned flags, size_t buf_size) const; + + // Sets alignment properties of this file access property list + void setAlignment( hsize_t threshold = 1, hsize_t alignment = 1 ) const; + + // Retrieves the current settings for alignment properties from + // this property list. + void getAlignment( hsize_t& threshold, hsize_t& alignment ) const; + + // Sets data type for multi driver. + void setMultiType(H5FD_mem_t dtype) const; + + // Returns the data type property for MULTI driver. + H5FD_mem_t getMultiType() const; // Sets the meta data cache and raw data chunk cache parameters. void setCache( int mdc_nelmts, size_t rdcc_nelmts, size_t rdcc_nbytes, double rdcc_w0 ) const; - // Retrieves maximum sizes of data caches and the preemption - // policy value. + // Queries the meta data cache and raw data chunk cache parameters. void getCache( int& mdc_nelmts, size_t& rdcc_nelmts, size_t& rdcc_nbytes, double& rdcc_w0 ) const; - // Sets the low-level driver to split meta data from raw data. - // void setSplit( FileAccPropList& meta_plist, FileAccPropList& raw_plist, - // const char* meta_ext = ".meta", const char* raw_ext = ".raw" ) const; - - // void setSplit( FileAccPropList& meta_plist, FileAccPropList& raw_plist, - // const string& meta_ext, const string& raw_ext ) const; - - // Determines whether this file access property list is set to the - // split driver and retrieves the meta-data and raw-data property lists. - // void getSplit( size_t meta_ext_size, string& meta_ext, FileAccPropList& - // meta_plist, size_t raw_ext_size, string& raw_ext, FileAccPropList& - // raw_plist ) const; + // Sets the degree for the file close behavior. + void setFcloseDegree(H5F_close_degree_t degree); - // Proposal: 2 separate functions - //FileAccPropList getMetaPlist( size_t meta_ext_size, char* meta_ext ); - //FileAccPropList getRawPlist( size_t raw_ext_size, char* raw_ext ); + // Returns the degree for the file close behavior. + H5F_close_degree_t getFcloseDegree(); // Sets garbage collecting references flag. void setGcReferences( unsigned gc_ref = 0 ) const; |