From ab6a4a5eb285a1ca88b3ad87ee035b9956e253ed Mon Sep 17 00:00:00 2001 From: Romain Forlot Date: Thu, 20 Jul 2017 16:40:35 +0200 Subject: Examples reorganization Separated by protocols and created signals from reversed engineered signals. Meld all used signals into an "agl-vcar" folder to be used as default. Change-Id: I27f7bc227a6fcea3db6672819e6a4d7bbf09863b Signed-off-by: Romain Forlot --- examples/basic/application-generated.cpp | 203 +++++++++++++++++++++++++++++++ examples/basic/generate_example.cpp | 203 ------------------------------- 2 files changed, 203 insertions(+), 203 deletions(-) create mode 100644 examples/basic/application-generated.cpp delete mode 100644 examples/basic/generate_example.cpp (limited to 'examples/basic') diff --git a/examples/basic/application-generated.cpp b/examples/basic/application-generated.cpp new file mode 100644 index 0000000..88ee94b --- /dev/null +++ b/examples/basic/application-generated.cpp @@ -0,0 +1,203 @@ +#include "application.hpp" +#include "../can/can-decoder.hpp" + + +// >>>>> handlers.cpp >>>>> +#include "can/canread.h" + +using openxc::can::read::publishNumericalMessage; + +void handleSteeringWheelMessage(CanMessage* message, + CanSignal* signals, int signalCount, Pipeline* pipeline) { + publishNumericalMessage("latitude", 42.0, pipeline); +} + +openxc_DynamicField handleInverted(CanSignal* signal, CanSignal* signals, + int signalCount, float value, bool* send) { + return openxc::payload::wrapNumber(value * -1); +} + +void initializeMyStuff() { } + +void initializeOtherStuff() { } + +void myLooper() { + // this function will be called once each time through the main loop, after + // all CAN message processing has been completed +} + +// <<<<< handlers.cpp <<<<< + +application_t::application_t() + : can_bus_manager_{utils::config_parser_t{"/etc/dev-mapping.conf"}} + , can_message_set_{ + {std::make_shared(can_message_set_t{0,"example", + { // beginning can_message_definition_ vector + {std::make_shared(can_message_definition_t{"hs",0x128,can_message_format_t::STANDARD,frequency_clock_t(5.00000f),true, + { // beginning can_signals vector + {std::make_shared (can_signal_t{ + "engine_speed", + 12, + 8, + 1.00000f, + 0.00000, + 0, + 0, + frequency_clock_t(15.0000f), + true, + false, + { + }, + false, + nullptr, + nullptr, + false + })}, + {std::make_shared (can_signal_t{ + "GearshiftPosition", + 41, + 3, + 1.00000f, + 0.00000, + 0, + 0, + frequency_clock_t(0.00000f), + true, + false, + { + {1,"FIRST"}, + {4,"FOURTH"}, + {6,"NEUTRAL"}, + {5,"REVERSE"}, + {2,"SECOND"}, + {3,"THIRD"} + }, + false, + nullptr, + nullptr, + false + })}, + {std::make_shared (can_signal_t{ + "SteeringWheelAngle", + 52, + 12, + 0.153920f, + 0.00000, + 0, + 0, + frequency_clock_t(0.00000f), + true, + false, + { + }, + false, + handleUnsignedSteeringWheelAngle, + nullptr, + false + })}, + {std::make_shared (can_signal_t{ + "steering_wheel_angle_error", + 44, + 12, + 1.00000f, + 0.00000, + 0, + 0, + frequency_clock_t(0.00000f), + true, + false, + { + }, + false, + ignoreDecoder, + nullptr, + false + })}, + {std::make_shared (can_signal_t{ + "steering_angle_sign", + 52, + 12, + 1.00000f, + 0.00000, + 0, + 0, + frequency_clock_t(0.00000f), + true, + false, + { + }, + false, + ignoreDecoder, + nullptr, + false + })} + } // end can_signals vector + })} // end can_message_definition entry + + }, // end can_message_definition vector + { // beginning diagnostic_messages_ vector + {std::make_shared(diagnostic_message_t{ + 12, + "", + 0, + 0, + UNIT::INVALID, + 1.00000f, + handleObd2Pid, + nullptr, + true + })} +, {std::make_shared(diagnostic_message_t{ + 12, + "", + 0, + 0, + UNIT::INVALID, + 1.00000f, + nullptr, + nullptr, + true + })} +, {std::make_shared(diagnostic_message_t{ + 6, + "", + 0, + 0, + UNIT::INVALID, + 1.00000f, + handleMyDiagRequest, + nullptr, + true + })} + + } // end diagnostic_messages_ vector + })} // end can_message_set entry + } // end can_message_set vector +{ + for(auto& cms: can_message_set_) + { + std::vector >& can_messages_definition = cms->get_can_message_definition(); + for(auto& cmd : can_messages_definition) + { + cmd->set_parent(cms.get()); + std::vector >& can_signals = cmd->get_can_signals(); + for(auto& sig: can_signals) + { + sig->set_parent(cmd.get()); + } + } + + std::vector >& diagnostic_messages = cms->get_diagnostic_messages(); + for(auto& dm : diagnostic_messages) + { + dm->set_parent(cms.get()); + } + } + } + +const std::string application_t::get_diagnostic_bus() const +{ + return "hs"; +} + + diff --git a/examples/basic/generate_example.cpp b/examples/basic/generate_example.cpp deleted file mode 100644 index 88ee94b..0000000 --- a/examples/basic/generate_example.cpp +++ /dev/null @@ -1,203 +0,0 @@ -#include "application.hpp" -#include "../can/can-decoder.hpp" - - -// >>>>> handlers.cpp >>>>> -#include "can/canread.h" - -using openxc::can::read::publishNumericalMessage; - -void handleSteeringWheelMessage(CanMessage* message, - CanSignal* signals, int signalCount, Pipeline* pipeline) { - publishNumericalMessage("latitude", 42.0, pipeline); -} - -openxc_DynamicField handleInverted(CanSignal* signal, CanSignal* signals, - int signalCount, float value, bool* send) { - return openxc::payload::wrapNumber(value * -1); -} - -void initializeMyStuff() { } - -void initializeOtherStuff() { } - -void myLooper() { - // this function will be called once each time through the main loop, after - // all CAN message processing has been completed -} - -// <<<<< handlers.cpp <<<<< - -application_t::application_t() - : can_bus_manager_{utils::config_parser_t{"/etc/dev-mapping.conf"}} - , can_message_set_{ - {std::make_shared(can_message_set_t{0,"example", - { // beginning can_message_definition_ vector - {std::make_shared(can_message_definition_t{"hs",0x128,can_message_format_t::STANDARD,frequency_clock_t(5.00000f),true, - { // beginning can_signals vector - {std::make_shared (can_signal_t{ - "engine_speed", - 12, - 8, - 1.00000f, - 0.00000, - 0, - 0, - frequency_clock_t(15.0000f), - true, - false, - { - }, - false, - nullptr, - nullptr, - false - })}, - {std::make_shared (can_signal_t{ - "GearshiftPosition", - 41, - 3, - 1.00000f, - 0.00000, - 0, - 0, - frequency_clock_t(0.00000f), - true, - false, - { - {1,"FIRST"}, - {4,"FOURTH"}, - {6,"NEUTRAL"}, - {5,"REVERSE"}, - {2,"SECOND"}, - {3,"THIRD"} - }, - false, - nullptr, - nullptr, - false - })}, - {std::make_shared (can_signal_t{ - "SteeringWheelAngle", - 52, - 12, - 0.153920f, - 0.00000, - 0, - 0, - frequency_clock_t(0.00000f), - true, - false, - { - }, - false, - handleUnsignedSteeringWheelAngle, - nullptr, - false - })}, - {std::make_shared (can_signal_t{ - "steering_wheel_angle_error", - 44, - 12, - 1.00000f, - 0.00000, - 0, - 0, - frequency_clock_t(0.00000f), - true, - false, - { - }, - false, - ignoreDecoder, - nullptr, - false - })}, - {std::make_shared (can_signal_t{ - "steering_angle_sign", - 52, - 12, - 1.00000f, - 0.00000, - 0, - 0, - frequency_clock_t(0.00000f), - true, - false, - { - }, - false, - ignoreDecoder, - nullptr, - false - })} - } // end can_signals vector - })} // end can_message_definition entry - - }, // end can_message_definition vector - { // beginning diagnostic_messages_ vector - {std::make_shared(diagnostic_message_t{ - 12, - "", - 0, - 0, - UNIT::INVALID, - 1.00000f, - handleObd2Pid, - nullptr, - true - })} -, {std::make_shared(diagnostic_message_t{ - 12, - "", - 0, - 0, - UNIT::INVALID, - 1.00000f, - nullptr, - nullptr, - true - })} -, {std::make_shared(diagnostic_message_t{ - 6, - "", - 0, - 0, - UNIT::INVALID, - 1.00000f, - handleMyDiagRequest, - nullptr, - true - })} - - } // end diagnostic_messages_ vector - })} // end can_message_set entry - } // end can_message_set vector -{ - for(auto& cms: can_message_set_) - { - std::vector >& can_messages_definition = cms->get_can_message_definition(); - for(auto& cmd : can_messages_definition) - { - cmd->set_parent(cms.get()); - std::vector >& can_signals = cmd->get_can_signals(); - for(auto& sig: can_signals) - { - sig->set_parent(cmd.get()); - } - } - - std::vector >& diagnostic_messages = cms->get_diagnostic_messages(); - for(auto& dm : diagnostic_messages) - { - dm->set_parent(cms.get()); - } - } - } - -const std::string application_t::get_diagnostic_bus() const -{ - return "hs"; -} - - -- cgit