PhoenixDataStream
1.0.0
Framework to save/load/serialize/deserialize data
Loading...
Searching...
No Matches
data_stream_file.cpp
Go to the documentation of this file.
1
/***************************************
2
Auteur : Pierre Aubert
3
Mail : pierre.aubert@lapp.in2p3.fr
4
Licence : CeCILL-C
5
****************************************/
6
7
8
#include "
data_stream_file.h
"
9
11
15
bool
DataStream<FILE*, DataStreamMode::READ, bool>::data_stream
(FILE* & ds,
bool
& data){
16
return
fread((
void
*)&data,
sizeof
(
bool
), 1lu, ds) == 1lu;
17
}
18
20
25
bool
DataStream<FILE*, DataStreamMode::READ, bool>::data_stream
(FILE* & ds,
bool
* data,
size_t
nbElement){
26
return
fread((
void
*)data,
sizeof
(
bool
), nbElement, ds) == nbElement;
27
}
28
30
34
bool
DataStream<FILE*, DataStreamMode::WRITE, bool>::data_stream
(FILE* & ds,
bool
& data){
35
return
fwrite((
const
void
*)&data,
sizeof
(
bool
), 1lu, ds) == 1lu;
36
}
37
39
44
bool
DataStream<FILE*, DataStreamMode::WRITE, bool>::data_stream
(FILE* & ds,
bool
* data,
size_t
nbElement){
45
return
fwrite((
const
void
*)data,
sizeof
(
bool
), nbElement, ds) == nbElement;
46
}
47
49
53
bool
DataStream<FILE*, DataStreamMode::READ, std::string>::data_stream
(FILE* & ds, std::string & data){
54
size_t
nbElement(0lu);
55
bool
b =
DataStream<FILE*, DataStreamMode::READ, size_t>::data_stream
(ds, nbElement);
56
if
(nbElement == 0lu || !b){
return
b;}
57
data.resize(nbElement);
58
return
fread((
void
*)data.data(),
sizeof
(
char
), nbElement, ds) == nbElement;
59
}
60
61
63
67
bool
DataStream<FILE*, DataStreamMode::WRITE, std::string>::data_stream
(FILE* & ds, std::string & data){
68
size_t
nbElement(data.size());
69
bool
b =
DataStream<FILE*, DataStreamMode::WRITE, size_t>::data_stream
(ds, nbElement);
70
if
(nbElement == 0lu || !b){
return
b;}
71
return
fwrite(data.data(),
sizeof
(
char
), nbElement, ds) == nbElement;
72
}
73
74
data_stream_file.h
DataStream::data_stream
static bool data_stream(Stream &ds, T &data)
Dummy function to catch if a type is not specialised.
Definition
data_stream_include.h:37
src
data_stream_file.cpp
Generated by
1.13.2