Line data Source code
1 : #ifndef DASH__IO__HDF5__INTERNAL__HDF5_INPUT_STREAM_INL_H__INCLUDED
2 : #define DASH__IO__HDF5__INTERNAL__HDF5_INPUT_STREAM_INL_H__INCLUDED
3 :
4 :
5 : #include <dash/io/hdf5/HDF5InputStream.h>
6 : #include <dash/io/hdf5/StoreHDF.h>
7 :
8 : #include <dash/Matrix.h>
9 : #include <dash/Array.h>
10 :
11 :
12 : namespace dash {
13 : namespace io {
14 : namespace hdf5 {
15 :
16 : // Array implementation
17 : template <
18 : typename value_t,
19 : typename index_t,
20 : class pattern_t >
21 8 : inline HDF5InputStream & operator>> (
22 : HDF5InputStream & is,
23 : dash::Array< value_t,
24 : index_t,
25 : pattern_t > & array) {
26 :
27 8 : dash::io::hdf5::StoreHDF::read(
28 : array,
29 : is._filename,
30 : is._dataset,
31 : is._foptions);
32 8 : return is;
33 : }
34 :
35 : // Matrix implementation
36 : template <
37 : typename value_t,
38 : dim_t ndim,
39 : typename index_t,
40 : class pattern_t >
41 28 : inline HDF5InputStream & operator>> (
42 : HDF5InputStream & is,
43 : dash::Matrix< value_t,
44 : ndim,
45 : index_t,
46 : pattern_t > & matrix) {
47 :
48 28 : dash::io::hdf5::StoreHDF::read(
49 : matrix,
50 : is._filename,
51 : is._dataset,
52 : is._foptions);
53 28 : return is;
54 : }
55 :
56 : } // namespace hdf5
57 : } // namespace io
58 : } // namespace dash
59 :
60 : #endif // DASH__IO__HDF5__INTERNAL__HDF5_INPUT_STREAM_INL_H__INCLUDED
|