PhoenixDataStream
1.3.0
Framework to save/load/serialize/deserialize data
Toggle main menu visibility
Loading...
Searching...
No Matches
template_stream_file_header.cpp
Go to the documentation of this file.
1
6
bool
DataStream<FILE*, DataStreamMode::READ, SIMPLE_TYPE>::data_stream
(FILE* & ds, SIMPLE_TYPE & data){
7
return
fread((
void
*)&data,
sizeof
(SIMPLE_TYPE), 1lu, ds) == 1lu;
8
}
9
11
16
bool
DataStream<FILE*, DataStreamMode::READ, SIMPLE_TYPE>::data_stream
(FILE* & ds, SIMPLE_TYPE * data,
size_t
nbElement){
17
return
fread((
void
*)data,
sizeof
(SIMPLE_TYPE), nbElement, ds) == nbElement;
18
}
19
21
25
bool
DataStream<FILE*, DataStreamMode::READ, std::vector<SIMPLE_TYPE>
>
::data_stream
(FILE* & ds, std::vector<SIMPLE_TYPE> & data){
26
size_t
nbElement(data.size());
27
bool
b =
DataStream<FILE*, DataStreamMode::READ, size_t>::data_stream
(ds, nbElement);
28
if
(nbElement == 0lu || !b){
return
b;}
//If there is no element, quit now
29
data.resize(nbElement);
30
return
fread((
void
*)data.data(),
sizeof
(SIMPLE_TYPE), nbElement, ds) == nbElement;
31
}
32
34
38
bool
DataStream<FILE*, DataStreamMode::WRITE, SIMPLE_TYPE>::data_stream
(FILE* & ds, SIMPLE_TYPE & data){
39
return
fwrite((
const
void
*)&data,
sizeof
(SIMPLE_TYPE), 1lu, ds) == 1lu;
40
}
41
43
48
bool
DataStream<FILE*, DataStreamMode::WRITE, SIMPLE_TYPE>::data_stream
(FILE* & ds, SIMPLE_TYPE * data,
size_t
nbElement){
49
return
fwrite((
const
void
*)data,
sizeof
(SIMPLE_TYPE), nbElement, ds) == nbElement;
50
}
51
53
57
bool
DataStream<FILE*, DataStreamMode::WRITE, std::vector<SIMPLE_TYPE>
>
::data_stream
(FILE* & ds, std::vector<SIMPLE_TYPE> & data){
58
size_t
nbElement(data.size());
59
bool
b =
DataStream<FILE*, DataStreamMode::WRITE, size_t>::data_stream
(ds, nbElement);
60
if
(nbElement == 0lu || !b){
return
b;}
//If there is no element, quit now
61
return
fwrite((
const
void
*)data.data(),
sizeof
(SIMPLE_TYPE), nbElement, ds) == nbElement;
62
}
63
64
65
66
68
72
bool
DataStream<DataStreamIter, DataStreamMode::READ, SIMPLE_TYPE>::data_stream
(
DataStreamIter
& ds, SIMPLE_TYPE & data){
73
char
* srcByte = (
char
*)&data;
74
memcpy(srcByte, ds,
sizeof
(SIMPLE_TYPE));
75
ds +=
sizeof
(SIMPLE_TYPE);
76
return
true
;
77
}
78
80
85
bool
DataStream<DataStreamIter, DataStreamMode::READ, SIMPLE_TYPE>::data_stream
(
DataStreamIter
& ds, SIMPLE_TYPE * data,
size_t
nbElement){
86
char
* srcByte = (
char
*)data;
87
memcpy(srcByte, ds,
sizeof
(SIMPLE_TYPE)*nbElement);
88
ds +=
sizeof
(SIMPLE_TYPE)*nbElement;
89
return
true
;
90
}
91
93
97
bool
DataStream<DataStreamIter, DataStreamMode::WRITE, SIMPLE_TYPE>::data_stream
(
DataStreamIter
& ds, SIMPLE_TYPE & data){
98
const
char
* srcByte = (
const
char
*)&data;
99
memcpy(ds, srcByte,
sizeof
(SIMPLE_TYPE));
100
ds +=
sizeof
(SIMPLE_TYPE);
101
return
true
;
102
}
103
105
110
bool
DataStream<DataStreamIter, DataStreamMode::WRITE, SIMPLE_TYPE>::data_stream
(
DataStreamIter
& ds, SIMPLE_TYPE * data,
size_t
nbElement){
111
const
char
* srcByte = (
const
char
*)data;
112
memcpy(ds, srcByte,
sizeof
(SIMPLE_TYPE)*nbElement);
113
ds +=
sizeof
(SIMPLE_TYPE)*nbElement;
114
return
true
;
115
}
116
117
118
120
124
bool
DataStream<size_t, DataStreamMode::WRITE, SIMPLE_TYPE>::data_stream
(
size_t
& ds, SIMPLE_TYPE & data){
125
ds +=
sizeof
(SIMPLE_TYPE);
126
return
true
;
127
}
128
130
135
bool
DataStream<size_t, DataStreamMode::WRITE, SIMPLE_TYPE>::data_stream
(
size_t
& ds, SIMPLE_TYPE * data,
size_t
nbElement){
136
ds +=
sizeof
(SIMPLE_TYPE)*nbElement;
137
return
true
;
138
}
139
140
141
142
DataStreamIter
DataStreamType * DataStreamIter
Definition
data_stream_include.h:28
DataStream< FILE *, DataStreamMode::READ, std::vector< SIMPLE_TYPE > >::data_stream
static bool data_stream(FILE *&ds, std::vector< SIMPLE_TYPE > &data)
Read the data std::vector of SIMPLE_TYPE in the file.
Definition
template_stream_file_header.cpp:25
DataStream< FILE *, DataStreamMode::WRITE, std::vector< SIMPLE_TYPE > >::data_stream
static bool data_stream(FILE *&ds, std::vector< SIMPLE_TYPE > &data)
Save the data std::vector of data in the file.
Definition
template_stream_file_header.cpp:57
DataStream
Generic DataStream class.
Definition
data_stream_include.h:32
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
GeneratedSources
template_stream_file_header.cpp
Generated by
1.17.0