tblite
Light-weight tight-binding framework
Loading...
Searching...
No Matches
tblite_io_data_type::iodata_type Type Referenceabstract

Abstract interface for file-backed named array storage. More...

Inheritance diagram for tblite_io_data_type::iodata_type:
tblite_io_data_hdf5::hdf5_data tblite_io_data_npz::npz_data

Public Member Functions

procedure(list), deferred list (self, datasets, error)
 List logical dataset names available in the file.
 
procedure(get_shape), deferred get_shape (self, dataset, shape, error)
 Query the rank and extent of a named dataset.
 
generic load (self, dataset, data, error)
 Load a named dataset.
 
generic load (self, dataset, data, error)
 Load a named dataset.
 
generic load (self, dataset, data, error)
 Load a named dataset.
 
generic load load_rdp_r3
 Load a named dataset.
 
procedure(load_i4_r1), deferred load_i4_r1 (self, dataset, data, error)
 Load a named integer rank-1 dataset.
 
procedure(load_rdp_r1), deferred load_rdp_r1 (self, dataset, data, error)
 Load a named real rank-1 dataset.
 
procedure(load_rdp_r2), deferred load_rdp_r2 (self, dataset, data, error)
 Load a named real rank-2 dataset.
 
procedure(load_rdp_r3), deferred load_rdp_r3 save_i4_r1, save_rdp_r1, save_rdp_r2, save_rdp_r3
 Load a named real rank-3 dataset.
 
procedure(save_i4_r1), deferred save_i4_r1 (self, dataset, data, error)
 Save a named dataset.
 
procedure(save_rdp_r1), deferred save_rdp_r1 (self, dataset, data, error)
 Save a named real rank-1 dataset.
 
procedure(save_rdp_r2), deferred save_rdp_r2 (self, dataset, data, error)
 Save a named real rank-2 dataset.
 
procedure(save_rdp_r3), deferred save_rdp_r3 (self, dataset, data, error)
 Save a named real rank-3 dataset.
 

Detailed Description

Abstract interface for file-backed named array storage.

Concrete implementations provide the same load, save, shape, and listing operations for different container formats such as NPZ and HDF5.

Member Function/Subroutine Documentation

◆ get_shape()

procedure(get_shape), deferred tblite_io_data_type::iodata_type::get_shape ( class(iodata_type), intent(in) self,
character(len=*), intent(in) dataset,
integer, dimension(:), intent(out), allocatable shape,
type(error_type), intent(out), allocatable error )
pure virtual

Query the rank and extent of a named dataset.

Parameters
[in]selfStorage backend instance
[in]datasetLogical dataset name
[out]shapeDataset shape
[out]errorError handling

◆ list()

procedure(list), deferred tblite_io_data_type::iodata_type::list ( class(iodata_type), intent(in) self,
type(iodata_record), dimension(:), intent(out), allocatable datasets,
type(error_type), intent(out), allocatable error )
pure virtual

List logical dataset names available in the file.

Parameters
[in]selfStorage backend instance
[out]datasetsDataset records found in the file
[out]errorError handling

◆ load() [1/3]

generic tblite_io_data_type::iodata_type::load ( class(iodata_type), intent(in) self,
character(len=*), intent(in) dataset,
integer(i4), dimension(:), intent(out), allocatable data,
type(error_type), intent(out), allocatable error )

Load a named dataset.

Parameters
[in]selfStorage backend instance
[in]datasetLogical dataset name
[out]dataData loaded from the dataset
[out]errorError handling

◆ load() [2/3]

generic tblite_io_data_type::iodata_type::load ( class(iodata_type), intent(in) self,
character(len=*), intent(in) dataset,
real(dp), dimension(:), intent(out), allocatable data,
type(error_type), intent(out), allocatable error )

Load a named dataset.

Parameters
[in]selfStorage backend instance
[in]datasetLogical dataset name
[out]dataData loaded from the dataset
[out]errorError handling

◆ load() [3/3]

generic tblite_io_data_type::iodata_type::load ( class(iodata_type), intent(in) self,
character(len=*), intent(in) dataset,
real(dp), dimension(:,:), intent(out), allocatable data,
type(error_type), intent(out), allocatable error )

Load a named dataset.

Parameters
[in]selfStorage backend instance
[in]datasetLogical dataset name
[out]dataData loaded from the dataset
[out]errorError handling

◆ load_i4_r1()

procedure(load_i4_r1), deferred tblite_io_data_type::iodata_type::load_i4_r1 ( class(iodata_type), intent(in) self,
character(len=*), intent(in) dataset,
integer(i4), dimension(:), intent(out), allocatable data,
type(error_type), intent(out), allocatable error )
pure virtual

Load a named integer rank-1 dataset.

Parameters
[in]selfStorage backend instance
[in]datasetLogical dataset name
[out]dataData loaded from the dataset
[out]errorError handling

◆ load_rdp_r1()

procedure(load_rdp_r1), deferred tblite_io_data_type::iodata_type::load_rdp_r1 ( class(iodata_type), intent(in) self,
character(len=*), intent(in) dataset,
real(dp), dimension(:), intent(out), allocatable data,
type(error_type), intent(out), allocatable error )
pure virtual

Load a named real rank-1 dataset.

Parameters
[in]selfStorage backend instance
[in]datasetLogical dataset name
[out]dataData loaded from the dataset
[out]errorError handling

◆ load_rdp_r2()

procedure(load_rdp_r2), deferred tblite_io_data_type::iodata_type::load_rdp_r2 ( class(iodata_type), intent(in) self,
character(len=*), intent(in) dataset,
real(dp), dimension(:,:), intent(out), allocatable data,
type(error_type), intent(out), allocatable error )
pure virtual

Load a named real rank-2 dataset.

Parameters
[in]selfStorage backend instance
[in]datasetLogical dataset name
[out]dataData loaded from the dataset
[out]errorError handling

◆ save_i4_r1()

procedure(save_i4_r1), deferred tblite_io_data_type::iodata_type::save_i4_r1 ( class(iodata_type), intent(in) self,
character(len=*), intent(in) dataset,
integer(i4), dimension(:), intent(in), allocatable data,
type(error_type), intent(out), allocatable error )
pure virtual

Save a named dataset.

Save a named integer rank-1 dataset.

◆ save_rdp_r1()

procedure(save_rdp_r1), deferred tblite_io_data_type::iodata_type::save_rdp_r1 ( class(iodata_type), intent(in) self,
character(len=*), intent(in) dataset,
real(dp), dimension(:), intent(in), allocatable data,
type(error_type), intent(out), allocatable error )
pure virtual

Save a named real rank-1 dataset.

Parameters
[in]selfStorage backend instance
[in]datasetLogical dataset name
[in]dataData to save
[out]errorError handling

◆ save_rdp_r2()

procedure(save_rdp_r2), deferred tblite_io_data_type::iodata_type::save_rdp_r2 ( class(iodata_type), intent(in) self,
character(len=*), intent(in) dataset,
real(dp), dimension(:,:), intent(in), allocatable data,
type(error_type), intent(out), allocatable error )
pure virtual

Save a named real rank-2 dataset.

Parameters
[in]selfStorage backend instance
[in]datasetLogical dataset name
[in]dataData to save
[out]errorError handling

◆ save_rdp_r3()

procedure(save_rdp_r3), deferred tblite_io_data_type::iodata_type::save_rdp_r3 ( class(iodata_type), intent(in) self,
character(len=*), intent(in) dataset,
real(dp), dimension(:,:,:), intent(in), allocatable data,
type(error_type), intent(out), allocatable error )
pure virtual

Save a named real rank-3 dataset.

Parameters
[in]selfStorage backend instance
[in]datasetLogical dataset name
[in]dataData to save
[out]errorError handling

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