Separate methods declarations and implementations.
authorRomain Forlot <romain.forlot@iot.bzh>
Wed, 8 Mar 2017 21:53:22 +0000 (22:53 +0100)
committerRomain Forlot <romain.forlot@iot.bzh>
Thu, 16 Mar 2017 16:10:39 +0000 (17:10 +0100)
Get out examples objects to test into another cpp that
will be used to be the template for the futur generated
code.

Change-Id: Ic630478b5419e7a18e4e6446edbac7fbe68299b9
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Conflicts:
src/configuration.hpp

src/configuration-generated.cpp [new file with mode: 0644]
src/configuration.cpp
src/configuration.hpp

diff --git a/src/configuration-generated.cpp b/src/configuration-generated.cpp
new file mode 100644 (file)
index 0000000..88f93bd
--- /dev/null
@@ -0,0 +1,56 @@
+
+/////////////////////////////////////////////////////////////////////////////////////
+//                                                     THIS IS AN EXAMPLE
+/////////////////////////////////////////////////////////////////////////////////////
+
+#include <configuration.hpp>
+
+#define OBD2_FUNCTIONAL_BROADCAST_ID 0x7df
+
+/*
+* Pre-defined OBD-II PIDs to query for if supported by the vehicle.
+*/
+ std::vector<obd2_signal_t> OBD2_PIDS = {
+       { 0x04, "obd2.engine.load", 0, 100, POURCENT, 5, false},
+       { 0x05, "obd2.engine.coolant.temperature", -40, 215, DEGREES_CELSIUS, 1, false},
+       { 0x0a, "obd2.fuel.pressure", 0, 765, KPA, 1, false},
+       { 0x0b, "obd2.intake.manifold.pressure", 0, 255, KPA, 1, false},
+       { 0x0c, "obd2.engine.speed", 0, 16383, RPM, 5, false},
+       { 0x0d, "obd2.vehicle.speed", 0, 255, KM_H, 5, false},
+       { 0x0f, "obd2.intake.air.temperature", -40, 215, DEGREES_CELSIUS, 1, false},
+       { 0x10, "obd2.mass.airflow", 0, 655, GRAMS_SEC, 5, false},
+       { 0x11, "obd2.throttle.position", 0, 100, POURCENT, 5, false},
+       { 0x1f, "obd2.running.time", 0, 65535, SECONDS, 1, false},
+       { 0x2d, "obd2.EGR.error", -100, 99, POURCENT, 0, false},
+       { 0x2f, "obd2.fuel.level", 0, 100, POURCENT, 1, false},
+       { 0x33, "obd2.barometric.pressure", 0, 255, KPA, 1, false},
+       { 0x4c, "obd2.commanded.throttle.position", 0, 100, POURCENT, 1, false},
+       { 0x52, "obd2.ethanol.fuel.percentage", 0, 100, POURCENT, 1, false},
+       { 0x5a, "obd2.accelerator.pedal.position", 0, 100, POURCENT, 5, false},
+       { 0x5b, "obd2.hybrid.battery-pack.remaining.life", 0, 100, POURCENT, 5, false},
+       { 0x5c, "obd2.engine.oil.temperature",-40, 210, DEGREES_CELSIUS, 1, false},
+       { 0x63, "obd2.engine.torque", 0, 65535, NM, 1, false}
+};
+
+std::vector<can_message_set_t> CAN_MESSAGE_SET =
+{
+       {0, "example_messages", 1, 2, 2, 0, 19},
+};
+
+std::vector<std::vector<can_message_definition_t>> CAN_MESSAGES_DEFINTION = {
+       {
+               {0x620, CanMessageFormat::STANDARD, {10, 0, nullptr}, false, (uint8_t)NULL},
+               {0x442, CanMessageFormat::STANDARD, {10, 0, nullptr}, false, (uint8_t)NULL},
+       },
+};
+
+/**
+ * @brief Dumb SIGNALS array. It is composed by CanMessageSet
+ * SIGNALS[MESSAGE_SET_ID][CanSignal]
+ */
+std::vector<std::vector<can_signal_t>> SIGNALS = {
+       {
+               {&(CAN_MESSAGES_DEFINTION[MESSAGE_SET_ID][0]), "can.driver_door.open", 2, 4, 1.000000, 0.000000, 0.000000, 0.000000, {10, 0, nullptr}, false, true, nullptr, 0, false, decoder_t::booleanDecoder, nullptr, false, 0.0},
+               {&(CAN_MESSAGES_DEFINTION[MESSAGE_SET_ID][1]), "can.driver_door.close", 0, 4, 1.000000, 0.000000, 0.000000, 0.000000, {10, 0, nullptr}, false, true, nullptr, 0, false, decoder_t::booleanDecoder, nullptr, false, 0.0}
+       },
+};
\ No newline at end of file
index 0c5e8d0..f0f7909 100644 (file)
  * limitations under the License.
  */
 
-/////////////////////////////////////////////////////////////////////////////////////
-//                                                     THIS IS AN EXAMPLE
-/////////////////////////////////////////////////////////////////////////////////////
-
 #include <configuration.hpp>
 
 #define OBD2_FUNCTIONAL_BROADCAST_ID 0x7df
 
-/*
-* Pre-defined OBD-II PIDs to query for if supported by the vehicle.
-*/
- std::vector<obd2_signal_t> OBD2_PIDS = {
-       { 0x04, "obd2.engine.load", 0, 100, POURCENT, 5, false},
-       { 0x05, "obd2.engine.coolant.temperature", -40, 215, DEGREES_CELSIUS, 1, false},
-       { 0x0a, "obd2.fuel.pressure", 0, 765, KPA, 1, false},
-       { 0x0b, "obd2.intake.manifold.pressure", 0, 255, KPA, 1, false},
-       { 0x0c, "obd2.engine.speed", 0, 16383, RPM, 5, false},
-       { 0x0d, "obd2.vehicle.speed", 0, 255, KM_H, 5, false},
-       { 0x0f, "obd2.intake.air.temperature", -40, 215, DEGREES_CELSIUS, 1, false},
-       { 0x10, "obd2.mass.airflow", 0, 655, GRAMS_SEC, 5, false},
-       { 0x11, "obd2.throttle.position", 0, 100, POURCENT, 5, false},
-       { 0x1f, "obd2.running.time", 0, 65535, SECONDS, 1, false},
-       { 0x2d, "obd2.EGR.error", -100, 99, POURCENT, 0, false},
-       { 0x2f, "obd2.fuel.level", 0, 100, POURCENT, 1, false},
-       { 0x33, "obd2.barometric.pressure", 0, 255, KPA, 1, false},
-       { 0x4c, "obd2.commanded.throttle.position", 0, 100, POURCENT, 1, false},
-       { 0x52, "obd2.ethanol.fuel.percentage", 0, 100, POURCENT, 1, false},
-       { 0x5a, "obd2.accelerator.pedal.position", 0, 100, POURCENT, 5, false},
-       { 0x5b, "obd2.hybrid.battery-pack.remaining.life", 0, 100, POURCENT, 5, false},
-       { 0x5c, "obd2.engine.oil.temperature",-40, 210, DEGREES_CELSIUS, 1, false},
-       { 0x63, "obd2.engine.torque", 0, 65535, NM, 1, false}
-};
-
-std::vector<can_message_set_t> CAN_MESSAGE_SET =
-{
-       {0, "example_messages", 1, 2, 2, 0, 19},
-};
-
-std::vector<std::vector<can_message_definition_t>> CAN_MESSAGES_DEFINTION = {
-       {
-               {0x620, CanMessageFormat::STANDARD, {10, 0, nullptr}, false, (uint8_t)NULL},
-               {0x442, CanMessageFormat::STANDARD, {10, 0, nullptr}, false, (uint8_t)NULL},
-       },
-};
-
-/**
- * @brief Dumb SIGNALS array. It is composed by CanMessageSet
- * SIGNALS[MESSAGE_SET_ID][CanSignal]
- */
-std::vector<std::vector<can_signal_t>> SIGNALS = {
-       {
-               {&(CAN_MESSAGES_DEFINTION[MESSAGE_SET_ID][0]), "can.driver_door.open", 2, 4, 1.000000, 0.000000, 0.000000, 0.000000, {10, 0, nullptr}, false, true, nullptr, 0, false, decoder_t::booleanDecoder, nullptr, false, 0.0},
-               {&(CAN_MESSAGES_DEFINTION[MESSAGE_SET_ID][1]), "can.driver_door.close", 0, 4, 1.000000, 0.000000, 0.000000, 0.000000, {10, 0, nullptr}, false, true, nullptr, 0, false, decoder_t::booleanDecoder, nullptr, false, 0.0}
-       },
-};
+// Dumb signals and message implementation. To get compile.
+ std::vector<obd2_signal_t> OBD2_PIDS;
+
+std::vector<can_message_set_t> CAN_MESSAGE_SET;
+
+std::vector<std::vector<can_message_definition_t>> CAN_MESSAGES_DEFINTION;
+
+std::vector<std::vector<can_signal_t>> SIGNALS;
 
 configuration_t::configuration_t()
-       : obd2_signals_{OBD2_PIDS}, can_message_set_{CAN_MESSAGE_SET}, can_signals_{SIGNALS}, can_message_definition_{CAN_MESSAGES_DEFINTION}
\ No newline at end of file
+       : obd2_signals_{OBD2_PIDS}, can_message_set_{CAN_MESSAGE_SET}, can_signals_{SIGNALS}, can_message_definition_{CAN_MESSAGES_DEFINTION}
+
+configuration_t& configuration_t::get_configuration()
+{ 
+       return *this;
+}
+
+can_bus_t& configuration_t::get_can_bus_manager() const
+{
+       return can_bus_manager_;
+}
+
+diagnostic_manager_t& configuration_t::get_diagnostic_manager() const
+{
+       return diagnostic_manager_;
+}
+
+uint8_t configuration_t::get_active_message_set() const
+{
+       return active_message_set_;
+}
+
+const std::vector<can_message_set_t>& configuration_t::get_can_message_set() const
+{
+       return can_message_set_;
+}
+
+const std::vector<can_signal_t>& configuration_t::get_can_signals() const
+{
+       return can_signals_[active_message_set_];
+}
+
+const std::vector<can_message_definition_t>& configuration_t::get_can_message_definition() const
+{
+       return can_message_definition_[active_message_set_];
+}
+
+const std::vector<obd2_signal_t>& configuration_t::get_obd2_signals() const
+{
+       return obd2_signals_;
+}
+
+uint32_t configuration_t::get_signal_id(obd2_signal_t& sig) const
+{
+       return sig.get_pid();
+}
+
+uint32_t configuration_t::get_signal_id(can_signal_t& sig) const
+{
+       return sig.get_message()->get_id();
+}
+
+void configuration_t::set_active_message_set(uint8_t id)
+{
+       active_message_set_ = id;
+}
\ No newline at end of file
index 92655a6..83b20e6 100644 (file)
@@ -51,61 +51,29 @@ class configuration_t
                const std::vector<std::vector<can_signal_t>> can_signals_;
                const std::vector<std::vector<can_message_definition_t>> can_message_definition_;
 
-               configuration_t& get_configuration()
-               { 
-                       return *this;
-               }
-
-               can_bus_t& get_can_bus_manager()
-               {
-                       return can_bus_manager_;
-               }
-
-               diagnostic_manager_t& get_diagnostic_manager()
-               {
-                       return diagnostic_manager_;
-               }
-
-               uint8_t get_active_message_set()
-               {
-                       return active_message_set_;
-               }
-
-               const std::vector<can_message_set_t>& get_can_message_set()
-               {
-                       return can_message_set_;
-               }
-
-               const std::vector<can_signal_t>& get_can_signals()
-               {
-                       return can_signals_[active_message_set_];
-               }
-
-               const std::vector<can_message_definition_t>& get_can_message_definition()
-               {
-                       return can_message_definition_[active_message_set_];
-               }
-
-               const std::vector<obd2_signal_t>& get_obd2_signals()
-               {
-                       return obd2_signals_;
-               }
-
-               uint32_t get_signal_id(obd2_signal_t& sig)
-               {
-                       return sig.get_pid();
-               }
-
-               uint32_t get_signal_id(can_signal_t& sig)
-               {
-                       return sig.get_message()->id;
-               }
-
-               void set_active_message_set(uint8_t id)
-               {
-                       active_message_set_ = id;
-               }
+               configuration_t& get_configuration() const;
 
+               can_bus_t& get_can_bus_manager() const;
+
+               diagnostic_manager_t& get_diagnostic_manager() const;
+
+               uint8_t get_active_message_set() const;
+
+               const std::vector<can_message_set_t>& get_can_message_set() const;
+
+               const std::vector<can_signal_t>& get_can_signals() const;
+
+               const std::vector<can_message_definition_t>& get_can_message_definition() const;
+
+               const std::vector<obd2_signal_t>& get_obd2_signals() const;
+
+               uint32_t get_signal_id(obd2_signal_t& sig) const;
+
+               uint32_t get_signal_id(can_signal_t& sig) const;
+
+               void set_active_message_set(uint8_t id);
+
+/*
                /// TODO: implement this function as method into can_bus class
                /// @brief Pre initialize actions made before CAN bus initialization
                /// @param[in] bus A CanBus struct defining the bus's metadata
@@ -129,5 +97,5 @@ class configuration_t
                /// @param[in] buses An array of active CAN buses.
                /// @param[in] busCount The length of the buses array.
                bool isBusActive(can_bus_dev_t* bus);
-
+               */
 };