22#ifndef _HDF5SERIE_VECTORSERIE_H_
23#define _HDF5SERIE_VECTORSERIE_H_
25#include <hdf5serie/interface.h>
26#include <hdf5serie/file.h>
28#include <boost/multi_array.hpp>
72 boost::multi_array<T, 2> cache;
74 void writeToHDF5(
size_t nrRows,
size_t cacheSize,
const T* data);
75 void openIDandFileDataSpaceID();
79 int compression=File::getDefaultCompression(),
int chunkSize=File::getDefaultChunkSize(),
int cacheSize=File::getDefaultCacheSize());
81 void close()
override;
82 void refresh()
override;
83 void flush()
override;
84 void enableSWMR()
override;
98 void append(
const T data[],
size_t size);
104 template<
class DataType>
106 append(&data[0], data.size());
119 void getRow(
int row,
size_t size, T data[]);
125 template<
class DataType>
126 void getRow(
const int row, DataType &data) {
127 getRow(row, data.size(), &data[0]);
133 std::vector<T> data(dims[1]);
134 getRow(row, dims[1], &data[0]);
142 void getColumn(
int column,
size_t size, T data[]);
148 template<
class DataType>
150 getColumn(column, data.size(), &data[0]);
157 std::vector<T> data(rows);
168 void setColumnLabel(
const std::vector<std::string> &columnLabel);
184 checkCall(H5Sget_simple_extent_dims(fileDataSpaceID, dims,
nullptr));
Definition: interface.h:138
Definition: interface.h:292
Definition: interface.h:231
Definition: interface.h:55
Serie of vectors.
Definition: vectorserie.h:64
void setDescription(const std::string &description)
Sets a description for the dataset.
Definition: vectorserie.cc:137
void getRow(int row, size_t size, T data[])
Returns the data vector at row row The first row is 0. The last avaliable row ist getRows()-1....
Definition: vectorserie.cc:182
void append(const DataType &data)
Definition: vectorserie.h:105
int getRows()
Returns the number of rows in the dataset.
Definition: vectorserie.h:183
void getColumn(int column, size_t size, T data[])
Returns the data vector at column column.
Definition: vectorserie.cc:202
std::string getDescription()
Return the description for the dataset.
Definition: vectorserie.cc:216
void append(const T data[], size_t size)
Append a data vector.
Definition: vectorserie.cc:164
std::vector< T > getColumn(const int row)
Definition: vectorserie.h:155
unsigned int getColumns()
Returns the number of columns(=number of data elements) in the dataset.
Definition: vectorserie.h:189
void getColumn(const int column, DataType &data)
Definition: vectorserie.h:149
std::vector< std::string > getColumnLabel()
Returns the column labels.
Definition: vectorserie.cc:230
void getRow(const int row, DataType &data)
Definition: vectorserie.h:126
std::vector< T > getRow(const int row)
Definition: vectorserie.h:132