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<can_message_set_t>(can_message_set_t{0,"example",
9 { // beginning can_message_definition_ vector
10 {std::make_shared<can_message_definition_t>(can_message_definition_t{"hs",0x3D9,can_message_format_t::STANDARD,frequency_clock_t(5.00000f),true,
11 { // beginning can_signals vector
12 {std::make_shared<can_signal_t> (can_signal_t{
20 frequency_clock_t(0.00000f),
30 {std::make_shared<can_signal_t> (can_signal_t{
38 frequency_clock_t(0.00000f),
44 decoder_t::decode_boolean,
48 {std::make_shared<can_signal_t> (can_signal_t{
56 frequency_clock_t(0.00000f),
66 } // end can_signals vector
67 })} // end can_message_definition entry
68 , {std::make_shared<can_message_definition_t>(can_message_definition_t{"hs",0x3E9,can_message_format_t::STANDARD,frequency_clock_t(5.00000f),true,
69 { // beginning can_signals vector
70 {std::make_shared<can_signal_t> (can_signal_t{
71 "vehicle.average.speed",
78 frequency_clock_t(0.00000f),
88 } // end can_signals vector
89 })} // end can_message_definition entry
90 , {std::make_shared<can_message_definition_t>(can_message_definition_t{"hs",0x4D1,can_message_format_t::STANDARD,frequency_clock_t(5.00000f),true,
91 { // beginning can_signals vector
92 {std::make_shared<can_signal_t> (can_signal_t{
100 frequency_clock_t(0.00000f),
110 {std::make_shared<can_signal_t> (can_signal_t{
111 "engine.oil.temp.high",
118 frequency_clock_t(0.00000f),
124 decoder_t::decode_boolean,
128 } // end can_signals vector
129 })} // end can_message_definition entry
131 }, // end can_message_definition vector
132 { // beginning diagnostic_messages_ vector
134 } // end diagnostic_messages_ vector
135 })} // end can_message_set entry
136 } // end can_message_set vector
138 for(auto& cms: can_message_set_)
140 std::vector<std::shared_ptr<can_message_definition_t> >& can_messages_definition = cms->get_can_message_definition();
141 for(auto& cmd : can_messages_definition)
143 cmd->set_parent(cms.get());
144 std::vector<std::shared_ptr<can_signal_t> >& can_signals = cmd->get_can_signals();
145 for(auto& sig: can_signals)
147 sig->set_parent(cmd.get());
151 std::vector<std::shared_ptr<diagnostic_message_t> >& diagnostic_messages = cms->get_diagnostic_messages();
152 for(auto& dm : diagnostic_messages)
154 dm->set_parent(cms.get());
159 const std::string application_t::get_diagnostic_bus() const