PhoenixLecture  2.0.0
Set of tools to make lectures
main.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 #include "data_stream_assert.h"
9 
10 #include "data_all.h"
11 
13 
16 template<typename T>
17 void checkListDataMessage(const std::string & nameOfType){
18  size_t nbValue(10lu);
19 
20  std::list<T> vecData;
21  for(size_t i(0lu); i < nbValue; ++i){vecData.push_back(i);}
22  DataStreamMsg message(data_size(vecData));
23  //Put data in message
24  DataStreamIter iter = (DataStreamIter)message.data();
25  data_stream_assert(data_message_save(iter, vecData)); //Save the message
26  DataStreamIter loadIter = (DataStreamIter)message.data();
27  std::list<T> outVec(0lu);
28  data_stream_assert(data_message_load(loadIter, outVec)); //Load the message
29  data_stream_assert(checkValue("std::list<"+nameOfType+">", outVec, vecData));
30 }
31 
34  checkListDataMessage<long unsigned int>("long unsigned int");
35  checkListDataMessage<unsigned int>("unsigned int");
36  checkListDataMessage<unsigned short>("unsigned short");
37  checkListDataMessage<unsigned int>("unsigned int");
38  checkListDataMessage<unsigned char>("unsigned char");
39  checkListDataMessage<long int>("long int");
40  checkListDataMessage<int>("int");
41  checkListDataMessage<short>("short");
42  checkListDataMessage<int>("int");
43  checkListDataMessage<char>("char");
44  checkListDataMessage<float>("float");
45  checkListDataMessage<double>("double");
46  checkListDataMessage<int8_t>("int8_t");
47 }
48 
49 
50 int main(int argc, char** argv){
52  return 0;
53 }
54 
int main(int argc, char **argv)
Definition: main.cpp:228
void checkListDataMessage(const std::string &nameOfType)
Check the list of data with message of a given type.
Definition: main.cpp:17
void testListDataMessage()
Test if data size is Ok.
Definition: main.cpp:33
bool data_message_save(DataStreamIter &iter, T &data)
Save data in a message.
Definition: data_message.h:18
bool data_message_load(DataStreamIter &iter, T &data)
Load data from a message.
Definition: data_message.h:60
size_t data_size(T &data)
Get size of data.
Definition: data_size.h:17
#define data_stream_assert(isOk)
bool checkValue(const std::string &testName, const T &givenSize, const T &referenceSize)
Check given value compare to the reference value.
std::vector< DataStreamType > DataStreamMsg
DataStreamType * DataStreamIter