PhoenixDataStream
1.0.0
Framework to save/load/serialize/deserialize data
Loading...
Searching...
No Matches
data_stream_message.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_message.h
"
9
10
12
16
bool
DataStream<DataStreamIter, DataStreamMode::READ, bool>::data_stream
(
DataStreamIter
& ds,
bool
& data){
17
char
* srcByte = (
char
*)&data;
18
memcpy(srcByte, ds,
sizeof
(
bool
));
19
ds +=
sizeof
(bool);
20
return
true
;
21
}
22
24
29
bool
DataStream<DataStreamIter, DataStreamMode::READ, bool>::data_stream
(
DataStreamIter
& ds,
bool
* data,
size_t
nbElement){
30
char
* srcByte = (
char
*)data;
31
memcpy(srcByte, ds,
sizeof
(
bool
)*nbElement);
32
ds +=
sizeof
(bool)*nbElement;
33
return
true
;
34
}
35
37
41
bool
DataStream<DataStreamIter, DataStreamMode::WRITE, bool>::data_stream
(
DataStreamIter
& ds,
bool
& data){
42
const
char
* srcByte = (
const
char
*)&data;
43
memcpy(ds, srcByte,
sizeof
(
bool
));
44
ds +=
sizeof
(bool);
45
return
true
;
46
}
47
49
54
bool
DataStream<DataStreamIter, DataStreamMode::WRITE, bool>::data_stream
(
DataStreamIter
& ds,
bool
* data,
size_t
nbElement){
55
const
char
* srcByte = (
const
char
*)data;
56
memcpy(ds, srcByte,
sizeof
(
bool
)*nbElement);
57
ds +=
sizeof
(bool)*nbElement;
58
return
true
;
59
}
60
61
62
63
64
66
70
bool
DataStream<DataStreamIter, DataStreamMode::READ, std::string>::data_stream
(
DataStreamIter
& ds, std::string & data){
71
size_t
nbElement(0lu);
72
bool
b =
DataStream<DataStreamIter, DataStreamMode::READ, size_t>::data_stream
(ds, nbElement);
73
if
(nbElement == 0lu || !b){
return
b;}
74
data.resize(nbElement);
75
memcpy((
DataStreamIter
)data.data(), ds, nbElement);
76
ds += nbElement;
77
return
b;
78
}
79
80
82
86
bool
DataStream<DataStreamIter, DataStreamMode::WRITE, std::string>::data_stream
(
DataStreamIter
& ds, std::string & data){
87
size_t
nbElement(data.size());
88
bool
b =
DataStream<DataStreamIter, DataStreamMode::WRITE, size_t>::data_stream
(ds, nbElement);
89
if
(nbElement == 0lu || !b){
return
b;}
90
memcpy(ds, (
const
DataStreamIter
)data.data(), nbElement);
91
ds += nbElement;
92
return
b;
93
}
94
95
DataStreamIter
DataStreamType * DataStreamIter
Definition
data_stream_include.h:28
data_stream_message.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_message.cpp
Generated by
1.13.2