PhoenixDataStream
1.3.0
Framework to save/load/serialize/deserialize data
Toggle main menu visibility
Loading...
Searching...
No Matches
data_file.h
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
#ifndef __DATA_FILE_H__
8
#define __DATA_FILE_H__
9
10
#include "
data_stream.h
"
11
13
17
template
<
typename
T>
18
bool
data_save
(FILE* iter,
const
T & data){
19
return
DataStream<FILE*, DataStreamMode::WRITE, T>::data_stream
(iter, (T&)data);
20
}
21
23
28
template
<
typename
T>
29
bool
data_save
(FILE* iter,
const
T * data,
size_t
nbElement){
30
return
DataStream<FILE*, DataStreamMode::WRITE, T>::data_stream
(iter, (T*)data, nbElement);
31
}
32
34
38
template
<
typename
T>
39
bool
data_load
(FILE* iter, T & data){
40
return
DataStream<FILE*, DataStreamMode::READ, T>::data_stream
(iter, data);
41
}
42
44
49
template
<
typename
T>
50
bool
data_load
(FILE* iter, T * data,
size_t
nbElement){
51
return
DataStream<FILE*, DataStreamMode::READ, T>::data_stream
(iter, data, nbElement);
52
}
53
55
59
template
<
typename
T>
60
bool
data_save
(
const
std::string & fileName,
const
T & data){
61
FILE* iter = fopen(fileName.c_str(),
"w"
);
62
if
(iter == NULL){
63
return
false
;
64
}
65
bool
b(
DataStream<FILE*, DataStreamMode::WRITE, T>::data_stream
(iter, (T&)data));
66
fclose(iter);
67
return
b;
68
}
69
71
76
template
<
typename
T>
77
bool
data_save
(
const
std::string & fileName,
const
T * data,
size_t
nbElement){
78
FILE* iter = fopen(fileName.c_str(),
"w"
);
79
if
(iter == NULL){
80
return
false
;
81
}
82
bool
b(
DataStream<FILE*, DataStreamMode::WRITE, T>::data_stream
(iter, (T*)data, nbElement));
83
fclose(iter);
84
return
b;
85
}
86
88
92
template
<
typename
T>
93
bool
data_load
(
const
std::string & fileName, T & data){
94
FILE* iter = fopen(fileName.c_str(),
"r"
);
95
if
(iter == NULL){
96
return
false
;
97
}
98
bool
b(
DataStream<FILE*, DataStreamMode::READ, T>::data_stream
(iter, data));
99
fclose(iter);
100
return
b;
101
}
102
104
109
template
<
typename
T>
110
bool
data_load
(
const
std::string & fileName, T * data,
size_t
nbElement){
111
FILE* iter = fopen(fileName.c_str(),
"r"
);
112
if
(iter == NULL){
113
return
false
;
114
}
115
bool
b(
DataStream<FILE*, DataStreamMode::READ, T>::data_stream
(iter, data, nbElement));
116
fclose(iter);
117
return
b;
118
}
119
120
#endif
data_load
bool data_load(FILE *iter, T &data)
Load data from a message.
Definition
data_file.h:39
data_save
bool data_save(FILE *iter, const T &data)
Save data in a message.
Definition
data_file.h:18
data_stream.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_file.h
Generated by
1.17.0