PhoenixDataStream  1.0.0
Framework to save/load/serialize/deserialize data
Loading...
Searching...
No Matches
template_stream_file_header.cpp
Go to the documentation of this file.
1
7 return fread((void*)&data, sizeof(SIMPLE_TYPE), 1lu, ds) == 1lu;
8}
9
11
16bool 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
26 size_t nbElement(data.size());
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
39 return fwrite((const void*)&data, sizeof(SIMPLE_TYPE), 1lu, ds) == 1lu;
40}
41
43
48bool 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
58 size_t nbElement(data.size());
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
73 char* srcByte = (char*)&data;
74 memcpy(srcByte, ds, sizeof(SIMPLE_TYPE));
75 ds += sizeof(SIMPLE_TYPE);
76 return true;
77}
78
80
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
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
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
125 ds += sizeof(SIMPLE_TYPE);
126 return true;
127}
128
130
135bool 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
DataStreamType * DataStreamIter
static bool data_stream(FILE *&ds, std::vector< SIMPLE_TYPE > &data)
Read the data std::vector of SIMPLE_TYPE in the file.
static bool data_stream(FILE *&ds, std::vector< SIMPLE_TYPE > &data)
Save the data std::vector of data in the file.
Generic DataStream class.
static bool data_stream(Stream &ds, T &data)
Dummy function to catch if a type is not specialised.