GCC Code Coverage Report


Directory: ./
File: src/Representation/phoenix_createData_impl.h
Date: 2026-01-15 15:35:36
Exec Total Coverage
Lines: 13 15 86.7%
Functions: 12 12 100.0%
Branches: 26 26 100.0%

Line Branch Exec Source
1 /***************************************
2 Auteur : Pierre Aubert
3 Mail : pierre.aubert@lapp.in2p3.fr
4 Licence : CeCILL-C
5 ****************************************/
6
7 #ifndef __PHOENIX_CREATEDATA_IMPL_H__
8 #define __PHOENIX_CREATEDATA_IMPL_H__
9
10 #include "phoenix_type_stream.h"
11 #include "phoenix_assert.h"
12
13 #include "phoenix_createData.h"
14
15 ///Create a Data from a value
16 /** @param value : value to set the Data
17 * @return corresponding Data
18 */
19 template<typename T>
20 24 Data phoenix_createData(const T & value){
21
1/1
✓ Branch 0 (2→3) taken 24 times.
24 Data param;
22
3/3
✓ Branch 0 (3→4) taken 24 times.
✓ Branch 2 (4→5) taken 24 times.
✓ Branch 4 (5→6) taken 24 times.
24 param.setType(phoenix_getTypeToStr<T>());
23
3/3
✓ Branch 0 (8→9) taken 24 times.
✓ Branch 2 (9→10) taken 24 times.
✓ Branch 4 (10→11) taken 24 times.
24 param.getValue().resize(data_size(value));
24
1/1
✓ Branch 0 (11→12) taken 24 times.
24 DataStreamIter iter = (DataStreamIter)param.getValue().data();
25
5/5
✓ Branch 0 (15→16) taken 24 times.
✓ Branch 2 (18→19) taken 24 times.
✓ Branch 4 (21→22) taken 24 times.
✓ Branch 6 (22→23) taken 24 times.
✓ Branch 8 (23→24) taken 24 times.
120 phoenix_assert(data_message_save(iter, value));
26 24 return param;
27 }
28
29 ///Get the value in the Data
30 /** @param data : data to be used
31 * @return corresponding value of the data
32 */
33 template<typename T>
34 16 T phoenix_getValueFromData(const Data & data){
35
6/6
✓ Branch 0 (4→5) taken 16 times.
✓ Branch 2 (7→8) taken 16 times.
✓ Branch 4 (10→11) taken 16 times.
✓ Branch 6 (11→12) taken 16 times.
✓ Branch 8 (12→13) taken 16 times.
✓ Branch 10 (14→15) taken 16 times.
80 phoenix_assert(data.getType() == phoenix_getTypeToStr<T>());
36
1/1
✓ Branch 0 (22→23) taken 16 times.
16 DataStreamIter resIter = (DataStreamIter)data.getValue().data();
37
1/1
✓ Branch 0 (24→25) taken 10 times.
10 T resValue;
38
5/5
✓ Branch 0 (27→28) taken 16 times.
✓ Branch 2 (30→31) taken 16 times.
✓ Branch 4 (33→34) taken 16 times.
✓ Branch 6 (34→35) taken 16 times.
✓ Branch 8 (35→36) taken 16 times.
80 phoenix_assert(data_message_load(resIter, resValue));
39 16 return resValue;
40 }
41
42
43 #endif
44
45