Page tree

The license could not be verified: License Certificate has expired!

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Content Layer
id1195548671
Content Column
width50.00001%
id1195578110
classrm_pagetree_col mobile-hide
Content Block
id1195578111
 
Content Column
width50.00001%
id1195548673
classhdf-rm-main-column
Content Block
id1195548672

Include Content
render-without-blockstrue
page.rm-navbar
HTML Wrap
classhdf-print-only

Page Title

HTML Wrap
classhdf-rm-summary-block

Hdf rm anchor
AnchorNamesummary

Excerpt

Controls the range of library release versions used when creating objects in a file

HTML Wrap
classhdf-rm-content-block

Hdf rm anchor
AnchorNameprocedure

Procedure:
HTML Wrap
classhdf-rm-section
HTML Wrap
classhdf_procedure

H5P_SET_LIBVER_BOUNDS ( fapl_id, low, high )

Hdf rm anchor
AnchorNamesignature

Signature:
HTML Wrap
classhdf-rm-section
HTML Wrap
classhdf-togglebox hdf-c

HTML Add Class
hdf-togglebutton-visible
hdf-togglebutton-visible
selector.hdf-togglebutton.hdf-c

HTML
<pre><code class="language-c">herr_t H5Pset_libver_bounds(
            hid_t fapl_id,
            H5F_libver_t low,
            H5F_libver_t high
    )
  </code></pre>
HTML Wrap
classhdf-togglebox hdf-fortran hdf-togglebox-hidden

HTML Add Class
hdf-togglebutton-visible
hdf-togglebutton-visible
selector.hdf-togglebutton.hdf-fortran

HTML
<pre><code class="language-fortran">Fortran90 Interface: h5pset_libver_bounds_f

SUBROUTINE h5pset_libver_bounds_f(fapl_id, low, high, hdferr)
  IMPLICIT NONE
  INTEGER(HID_T), INTENT(IN) :: fapl_id 
                             ! File access property list identifier
  INTEGER, INTENT(IN) :: low ! The earliest version of the library that 
                             ! will be used for writing objects.
                             ! Currently, low must be either:
                             !        H5F_LIBVER_EARLIEST_F
                             !        H5F_LIBVER_LATEST_F
  INTEGER, INTENT(IN) :: high 
                             ! The latest version of the library that will be 
                             ! used for writing objects.
                             ! Currently, high must set to:
                             !            H5F_LIBVER_LATEST_F
  INTEGER, INTENT(OUT) :: hdferr
                             ! Error code
                             ! 0 on success and -1 on failure
END SUBROUTINE h5pset_libver_bounds_f  
    </code></pre>

Hdf rm anchor
AnchorNameparameters

Parameters:
HTML Wrap
classhdf-rm-section
hid_t fapl_idIN: File access property list identifier
H5F_libver_t low    

IN: The earliest version of the library that will be used for writing objects

H5F_libver_t high    

IN: The latest version of the library that will be used for writing objects

Hdf rm anchor
AnchorNamedescription

Description:
HTML Wrap
classhdf-rm-section

H5P_SET_LIBVER_BOUNDS controls the range of library release versions that will be used when creating objects in a file.  The object format versions are determined indirectly from the library release versions specified in the call.

This property is set in the file access property list specified by the parameter fapl_id.

The parameter low sets the earliest possible format versions that the library will use when creating objects in the file.  Note that earliest possible is different from earliest, as some features introduced in library versions later than 1.0.0 resulted in updates to object formats.  The parameter high sets the latest format versions that the library will be allowed to use when creating objects in the file.

The parameters low and high must be one of the enumerated values in the H5F_libver_t struct, which is defined in H5Fpublic.h:

typedef enum H5F_libver_t {

H5F_LIBVER_EARLIEST,

H5F_LIBVER_V18 = 1,

H5F_LIBVER_V110 = 2,

H5F_LIBVER_NBOUNDS

} H5F_libvert_t;

#define H5F_LIBVER_LATEST      H5F_LIBVER_V110

The macro H5F_LIBVER_LATEST is aliased to the highest enumerated value in H5F_libver_t, indicating that this is currently the latest format available.

The library supports the following five pairs of (low, high) combinations as derived from the above values in H5F_libver_t:

 

Value of low and highResult

low=H5F_LIBVER_EARLIEST   

high=H5F_LIBVER_V18

  • The library will create objects with the earliest possible format versions. 
  • The library will allow objects to be created with the latest format versions available to library release 1.8.x. 
  • API calls that create objects or features that are available to versions of the library greater than 1.8.x release will fail.

low=H5F_LIBVER_EARLIEST

high=H5F_LIBVER_V110

  • The library will create objects with the earliest possible format versions. 
  • The library will allow objects to be created with the latest format versions available to library release 1.10.x.   Since 1.10.x is also H5F_LIBVER_LATEST, there is no upper limit on the format versions to use.  For example, if a newer format version is required to support a feature e.g. virtual dataset, this setting will allow the object to be created.
  • This is the library default setting and provides the greatest format compatibility.

low=H5F_LIBVER_V18

high=H5F_LIBVER_V18

  • The library will create objects with the latest format versions available to library release 1.8.x.
  • API calls that create objects or features that are available to versions of the library greater than 1.8.x release will fail.
  • Earlier versions of the library may not be able to access objects created with this setting.

low=H5F_LIBVER_V18

high=H5F_LIBVER_V110

  • The library will create objects with the latest format versions available to library release 1.8.x.
  • The library will allow objects to be created with the latest format versions available to library release 1.10.x.   Since 1.10.x is also H5F_LIBVER_LATEST, there is no upper limit on the format versions to use.  For example, if a newer format version is required to support a feature e.g. virtual dataset, this setting will allow the object to be created.
  • Earlier versions of the library may not be able to access objects created with this setting.

low=H5F_LIBVER_V110

high=H5F_LIBVER_V110

  • The library will create objects with the latest format versions available to library release 1.10.x.  
  • The library will allow objects to be created with the latest format versions available to library release 1.10.x.   Since 1.10.x is also H5F_LIBVER_LATEST, there is no upper limit on the format versions to use.  For example, if a newer format version is required to support a feature e.g. virtual dataset, this setting will allow the object to be created. 
  • This setting allows users to take advantage of the latest features and performance enhancements in the library.  However, objects written with this setting may be accessible to a smaller range of library versions than would be the case if low is set to H5F_LIBVER_EARLIEST.
  • Earlier versions of the library may not be able to access objects created with this setting.

Hdf rm anchor
AnchorNamereturns

Returns:
HTML Wrap
classhdf-rm-section

Returns a non-negative value if successful; otherwise returns a negative value.

Hdf rm anchor
AnchorNameexample

Example:
HTML Wrap
classhdf-rm-section

/*

 *       Create a file with fapl setting (H5F_LIBVER_V18, H5F_LIBVER_LATEST).

 *       Create a chunked dataset in the file with “no filter edge chunks”, which

  *      is introduced in library release 1.10.

  */

/* Create a file access property list */

fapl = H5Pcreate(H5P_FILE_ACCESS);

/* Set the fapl */

H5Pset_libver_bounds(fapl, H5F_LIBVER_V18, H5F_LIBVER_LATEST);

/* Create a file with this fapl */

fid = H5Fcreate(FILE8, H5F_ACC_TRUNC, H5P_DEFAULT, fapl);

/* Set up to create a chunked dataset with “no filter edge chunks” enabled */

sid = H5Screate_simple(2, fix_dims2, NULL);

dcpl = H5Pcreate(H5P_DATASET_CREATE);

H5Pset_chunk(dcpl, 2, fix_chunks2);

H5Pset_chunk_opts(dcpl, H5D_CHUNK_DONT_FILTER_PARTIAL_CHUNKS);

/* Should succeed in creating this dataset */

did = H5Dcreate2(fid, “DSETA”, H5T_NATIVE_INT, sid, H5P_DEFAULT, dcpl, H5P_DEFAULT);

/*

 * If you create the file with fapl setting (H5F_LIBVER_EARLIEST, H5F_LIBVER_V18),

 *  the creation of the same dataset will fail.

 */

:

:

:

 

Comment (Hide)
HTML Wrap
classhdf-togglebox hdf-c

Bitbucket Server file
repoSlughdf5
branchIdrefs/heads/1.10/master
projectKeyHDFFV
filepathexamples/h5_subset.c
showLineNumberstrue
lineStart32
progLangcpp
lineEnd42
applicationLink5ac7b370-7412-3c8c-ad20-807a68261336

HTML Wrap
classhdf-togglebox hdf-fortran hdf-togglebox-hidden

Bitbucket Server file
repoSlughdf5
branchIdrefs/heads/1.10/master
projectKeyHDFFV
filepathfortran/examples/compound.f90
showLineNumberstrue
lineStart25
progLangplain
lineEnd35
applicationLink5ac7b370-7412-3c8c-ad20-807a68261336

Hdf rm anchor
AnchorNamehistory

History:
HTML Wrap
classhdf-rm-section
C
Release    Change
1.10.2

Add H5F_LIBVER_V18 to the enumerated defines in H5F_libver_t.

1.8.0Function introduced in this release.