converter: Fix to_hex conversion
[apps/agl-service-can-low-level.git] / examples / engine / application-generated.cpp
1 #include "application.hpp"
2 #include "../can/can-decoder.hpp"
3 #include "../can/can-encoder.hpp"
4
5 application_t::application_t()
6         : can_bus_manager_{utils::config_parser_t{"/etc/dev-mapping.conf"}}
7         , message_set_{
8                 {std::make_shared<message_set_t>(message_set_t{0,"example",
9                         { // beginning message_definition_ vector
10                                 {std::make_shared<message_definition_t>(message_definition_t{"hs",0x3D9,"",8,0,true,frequency_clock_t(5.00000f),true,
11                                         { // beginning signals vector
12                                                 {std::make_shared<signal_t> (signal_t{
13                                                         "engine.speed",// generic_name
14                                                         16,// bit_position
15                                                         16,// bit_size
16                                                         0.250000f,// factor
17                                                         0.00000f,// offset
18                                                         0,// min_value
19                                                         0,// max_value
20                                                         frequency_clock_t(0.00000f),// frequency
21                                                         true,// send_same
22                                                         false,// force_send_changed
23                                                         {
24                                                         },// states
25                                                         false,// writable
26                                                         nullptr,// decoder
27                                                         nullptr,// encoder
28                                                         false,// received
29                                                         std::make_pair<bool, int>(false, 0),// multiplex
30                                                         false,// is_big_endian
31                                                         static_cast<sign_t>(0),// signed
32                                                         -1,// bit_sign_position
33                                                         ""// unit
34                                                 })},
35                                                 {std::make_shared<signal_t> (signal_t{
36                                                         "fuel.level.low",// generic_name
37                                                         55,// bit_position
38                                                         1,// bit_size
39                                                         1.00000f,// factor
40                                                         0.00000f,// offset
41                                                         0,// min_value
42                                                         0,// max_value
43                                                         frequency_clock_t(0.00000f),// frequency
44                                                         true,// send_same
45                                                         false,// force_send_changed
46                                                         {
47                                                         },// states
48                                                         false,// writable
49                                                         decoder_t::decode_boolean,// decoder
50                                                         nullptr,// encoder
51                                                         false,// received
52                                                         std::make_pair<bool, int>(false, 0),// multiplex
53                                                         false,// is_big_endian
54                                                         static_cast<sign_t>(0),// signed
55                                                         -1,// bit_sign_position
56                                                         ""// unit
57                                                 })},
58                                                 {std::make_shared<signal_t> (signal_t{
59                                                         "fuel.level",// generic_name
60                                                         8,// bit_position
61                                                         8,// bit_size
62                                                         0.392157f,// factor
63                                                         0.00000f,// offset
64                                                         0,// min_value
65                                                         0,// max_value
66                                                         frequency_clock_t(0.00000f),// frequency
67                                                         true,// send_same
68                                                         false,// force_send_changed
69                                                         {
70                                                         },// states
71                                                         false,// writable
72                                                         nullptr,// decoder
73                                                         nullptr,// encoder
74                                                         false,// received
75                                                         std::make_pair<bool, int>(false, 0),// multiplex
76                                                         false,// is_big_endian
77                                                         static_cast<sign_t>(0),// signed
78                                                         -1,// bit_sign_position
79                                                         ""// unit
80                                                 })}
81                                         } // end signals vector
82                                 })} // end message_definition entry
83 ,                               {std::make_shared<message_definition_t>(message_definition_t{"hs",0x3E9,"",8,0,true,frequency_clock_t(5.00000f),true,
84                                         { // beginning signals vector
85                                                 {std::make_shared<signal_t> (signal_t{
86                                                         "vehicle.average.speed",// generic_name
87                                                         0,// bit_position
88                                                         15,// bit_size
89                                                         0.0156250f,// factor
90                                                         0.00000f,// offset
91                                                         0,// min_value
92                                                         0,// max_value
93                                                         frequency_clock_t(0.00000f),// frequency
94                                                         true,// send_same
95                                                         false,// force_send_changed
96                                                         {
97                                                         },// states
98                                                         false,// writable
99                                                         nullptr,// decoder
100                                                         nullptr,// encoder
101                                                         false,// received
102                                                         std::make_pair<bool, int>(false, 0),// multiplex
103                                                         false,// is_big_endian
104                                                         static_cast<sign_t>(0),// signed
105                                                         -1,// bit_sign_position
106                                                         ""// unit
107                                                 })}
108                                         } // end signals vector
109                                 })} // end message_definition entry
110 ,                               {std::make_shared<message_definition_t>(message_definition_t{"hs",0x4D1,"",8,0,true,frequency_clock_t(5.00000f),true,
111                                         { // beginning signals vector
112                                                 {std::make_shared<signal_t> (signal_t{
113                                                         "engine.oil.temp",// generic_name
114                                                         16,// bit_position
115                                                         8,// bit_size
116                                                         1.00000f,// factor
117                                                         0.00000f,// offset
118                                                         0,// min_value
119                                                         0,// max_value
120                                                         frequency_clock_t(0.00000f),// frequency
121                                                         true,// send_same
122                                                         false,// force_send_changed
123                                                         {
124                                                         },// states
125                                                         false,// writable
126                                                         nullptr,// decoder
127                                                         nullptr,// encoder
128                                                         false,// received
129                                                         std::make_pair<bool, int>(false, 0),// multiplex
130                                                         false,// is_big_endian
131                                                         static_cast<sign_t>(0),// signed
132                                                         -1,// bit_sign_position
133                                                         ""// unit
134                                                 })},
135                                                 {std::make_shared<signal_t> (signal_t{
136                                                         "engine.oil.temp.high",// generic_name
137                                                         7,// bit_position
138                                                         1,// bit_size
139                                                         1.00000f,// factor
140                                                         0.00000f,// offset
141                                                         0,// min_value
142                                                         0,// max_value
143                                                         frequency_clock_t(0.00000f),// frequency
144                                                         true,// send_same
145                                                         false,// force_send_changed
146                                                         {
147                                                         },// states
148                                                         false,// writable
149                                                         decoder_t::decode_boolean,// decoder
150                                                         nullptr,// encoder
151                                                         false,// received
152                                                         std::make_pair<bool, int>(false, 0),// multiplex
153                                                         false,// is_big_endian
154                                                         static_cast<sign_t>(0),// signed
155                                                         -1,// bit_sign_position
156                                                         ""// unit
157                                                 })}
158                                         } // end signals vector
159                                 })} // end message_definition entry
160
161                 }, // end message_definition vector
162                         { // beginning diagnostic_messages_ vector
163
164                         } // end diagnostic_messages_ vector
165                 })} // end message_set entry
166         } // end message_set vector
167 {
168         for(std::shared_ptr<message_set_t> cms: message_set_)
169         {
170                 std::vector<std::shared_ptr<message_definition_t>> messages_definition = cms->get_messages_definition();
171                 for(std::shared_ptr<message_definition_t> cmd : messages_definition)
172                 {
173                         cmd->set_parent(cms);
174                         std::vector<std::shared_ptr<signal_t>> signals = cmd->get_signals();
175                         for(std::shared_ptr<signal_t> sig: signals)
176                         {
177                                 sig->set_parent(cmd);
178                         }
179                 }
180
181                 std::vector<std::shared_ptr<diagnostic_message_t>> diagnostic_messages = cms->get_diagnostic_messages();
182                 for(std::shared_ptr<diagnostic_message_t> dm : diagnostic_messages)
183                 {
184                         dm->set_parent(cms);
185                 }
186         }
187                 }
188
189 const std::string application_t::get_diagnostic_bus() const
190 {
191         return "";
192 }
193
194