25#ifndef __BITPIT_GENERIC_IO_HPP__
26#define __BITPIT_GENERIC_IO_HPP__
35#include "bitpit_common.hpp"
36#include "bitpit_containers.hpp"
49void lineStream(std::fstream &str, data_T &data);
52void lineStream(std::fstream &str, std::vector<data_T> &data);
54template<
class data_T,
size_t d>
55void lineStream(std::fstream &str, std::array<data_T,d> &data);
57template<
class data_T,
size_t d>
58void lineStream(std::fstream &str, data_T *data,
int nr);
61void flushASCII(std::fstream &str,
const data_T &data);
64void flushASCII(std::fstream &str,
const uint8_t &data);
67void flushASCII(std::fstream &str,
int elements_per_line,
const std::vector<data_T> &data);
69template<
class data_T,
size_t d>
70void flushASCII(std::fstream &str,
int elements_per_line,
const std::array<data_T,d> &data);
73void flushASCII(std::fstream &str,
int elements_per_line,
const data_T *data,
int nr);
79void flushBINARY(std::fstream &str,
const data_T &data);
82void flushBINARY(std::fstream &str,
const std::vector<data_T> &data);
85void flushBINARY(std::fstream &str,
const std::vector<std::vector<data_T>> &data);
87template<
class data_T,
size_t d>
88void flushBINARY(std::fstream &str,
const std::vector<std::array<data_T,d>> &data);
90template<
class data_T,
size_t d>
91void flushBINARY(std::fstream &str,
const std::array<data_T,d> &data);
94void flushBINARY(std::fstream &str,
const data_T *data,
int nr);
102template<
class data_T>
103void absorbASCII(std::fstream &str, std::vector<data_T> &data);
105template<
class data_T>
106void absorbASCII(std::fstream &str, std::vector<std::vector<data_T>> &data);
108template<
class data_T,
size_t d>
109void absorbASCII(std::fstream &str, std::vector<std::array<data_T,d>> &data);
111template<
class data_T,
size_t d>
112void absorbASCII(std::fstream &str, std::array<data_T,d> &data);
114template<
class data_T>
115void absorbASCII(std::fstream &str, data_T *data,
int nr);
117template<
class data_T>
120template<
class data_T>
123template<
class data_T>
126template<
class data_T>
127void absorbBINARY(std::fstream &str, std::vector<data_T> &data);
129template<
class data_T>
130void absorbBINARY(std::fstream &str, std::vector<std::vector<data_T>> &data);
132template<
class data_T,
size_t d>
133void absorbBINARY(std::fstream &str, std::vector<std::array<data_T,d>> &data);
135template<
class data_T,
size_t d>
136void absorbBINARY(std::fstream &str, std::array<data_T,d> &data);
138template<
class data_T>
139void absorbBINARY(std::fstream &str, data_T *data,
int nr);
141template<
class data_T>
144template<
class data_T>
153#include "GenericIO.tpp"
Metafunction for generating a pierced vector.
void copyUntilEOFInString(std::fstream &str, char *&buffer, int &length)
void flushASCII(std::fstream &str, const uint8_t &data)
void absorbBINARY(std::fstream &str, data_T &data)
void absorbASCII(std::fstream &str, data_T &data)
void lineStream(std::fstream &str, data_T &data)
void flushBINARY(std::fstream &str, const data_T &data)