1 #include "application.hpp"
2 #include "../can/can-decoder.hpp"
3 #include "../can/can-encoder.hpp"
5 application_t::application_t()
6 : can_bus_manager_{utils::config_parser_t{"/etc/dev-mapping.conf"}}
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,"", 0, false, message_format_t::STANDARD, frequency_clock_t(5.00000f), true,
11 { // beginning signals vector
12 {std::make_shared<signal_t> (signal_t{
13 "engine.speed",// generic_name
20 frequency_clock_t(0.00000f),// frequency
22 false,// force_send_changed
29 std::make_pair<bool, int>(false, 0),// multiplex
34 {std::make_shared<signal_t> (signal_t{
35 "fuel.level.low",// generic_name
42 frequency_clock_t(0.00000f),// frequency
44 false,// force_send_changed
48 decoder_t::decode_boolean,// decoder
51 std::make_pair<bool, int>(false, 0),// multiplex
56 {std::make_shared<signal_t> (signal_t{
57 "fuel.level",// generic_name
64 frequency_clock_t(0.00000f),// frequency
66 false,// force_send_changed
73 std::make_pair<bool, int>(false, 0),// multiplex
78 } // end signals vector
79 })} // end message_definition entry
80 , {std::make_shared<message_definition_t>(message_definition_t{"hs", 0x3E9,"", 0, false, message_format_t::STANDARD, frequency_clock_t(5.00000f), true,
81 { // beginning signals vector
82 {std::make_shared<signal_t> (signal_t{
83 "vehicle.average.speed",// generic_name
90 frequency_clock_t(0.00000f),// frequency
92 false,// force_send_changed
99 std::make_pair<bool, int>(false, 0),// multiplex
104 } // end signals vector
105 })} // end message_definition entry
106 , {std::make_shared<message_definition_t>(message_definition_t{"hs", 0x4D1,"", 0, false, message_format_t::STANDARD, frequency_clock_t(5.00000f), true,
107 { // beginning signals vector
108 {std::make_shared<signal_t> (signal_t{
109 "engine.oil.temp",// generic_name
116 frequency_clock_t(0.00000f),// frequency
118 false,// force_send_changed
125 std::make_pair<bool, int>(false, 0),// multiplex
130 {std::make_shared<signal_t> (signal_t{
131 "engine.oil.temp.high",// generic_name
138 frequency_clock_t(0.00000f),// frequency
140 false,// force_send_changed
144 decoder_t::decode_boolean,// decoder
147 std::make_pair<bool, int>(false, 0),// multiplex
152 } // end signals vector
153 })} // end message_definition entry
155 }, // end message_definition vector
156 { // beginning diagnostic_messages_ vector
158 } // end diagnostic_messages_ vector
159 })} // end message_set entry
160 } // end message_set vector
162 for(std::shared_ptr<message_set_t> cms: message_set_)
164 vect_ptr_msg_def_t messages_definition = cms->get_messages_definition();
165 for(std::shared_ptr<message_definition_t> cmd : messages_definition)
167 cmd->set_parent(cms);
168 std::vector<std::shared_ptr<signal_t>> signals = cmd->get_signals();
169 for(std::shared_ptr<signal_t> sig: signals)
171 sig->set_parent(cmd);
175 std::vector<std::shared_ptr<diagnostic_message_t>> diagnostic_messages = cms->get_diagnostic_messages();
176 for(std::shared_ptr<diagnostic_message_t> dm : diagnostic_messages)
183 const std::string application_t::get_diagnostic_bus() const