From 5412b6a4cd9e08b742035dddace225c9bbf5a203 Mon Sep 17 00:00:00 2001 From: Romain Forlot Date: Fri, 19 May 2017 14:07:38 +0200 Subject: Set parent from configuration_generated objects. Change-Id: I8f07084c6364347ebad3e029b89aeef93129cce3 Signed-off-by: Romain Forlot --- .../binding/configuration-generated.cpp | 22 +++++++++++++++++++++- .../low-can-binding/can/can-message-definition.cpp | 7 +------ CAN-binder/low-can-binding/can/can-message-set.cpp | 12 +----------- 3 files changed, 23 insertions(+), 18 deletions(-) (limited to 'CAN-binder') diff --git a/CAN-binder/low-can-binding/binding/configuration-generated.cpp b/CAN-binder/low-can-binding/binding/configuration-generated.cpp index ad31c45..bce469e 100644 --- a/CAN-binder/low-can-binding/binding/configuration-generated.cpp +++ b/CAN-binder/low-can-binding/binding/configuration-generated.cpp @@ -456,7 +456,27 @@ configuration_t::configuration_t() } // 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 configuration_t::get_diagnostic_bus() const { diff --git a/CAN-binder/low-can-binding/can/can-message-definition.cpp b/CAN-binder/low-can-binding/can/can-message-definition.cpp index 256af88..a9ee20c 100644 --- a/CAN-binder/low-can-binding/can/can-message-definition.cpp +++ b/CAN-binder/low-can-binding/can/can-message-definition.cpp @@ -64,12 +64,7 @@ can_message_definition_t::can_message_definition_t( force_send_changed_{force_send_changed}, last_value_{CAN_MESSAGE_SIZE}, can_signals_{std::move(can_signals)} -{ - for(auto& sig: can_signals_) - { - sig->set_parent(this); - } -} +{} const std::string can_message_definition_t::get_bus_name() const { diff --git a/CAN-binder/low-can-binding/can/can-message-set.cpp b/CAN-binder/low-can-binding/can/can-message-set.cpp index 1e352d9..dcb859d 100644 --- a/CAN-binder/low-can-binding/can/can-message-set.cpp +++ b/CAN-binder/low-can-binding/can/can-message-set.cpp @@ -29,17 +29,7 @@ can_message_set_t::can_message_set_t( , name_{name} , can_messages_definition_{std::move(can_messages_definition)} , diagnostic_messages_{std::move(diagnostic_messages)} -{ - for(auto& cmd : can_messages_definition_) - { - cmd->set_parent(this); - } - - for(auto& dm : diagnostic_messages_) - { - dm->set_parent(this); - } -} +{} /// @brief Return vector holding all message definition handled by this message set. std::vector >& can_message_set_t::get_can_message_definition() -- cgit 1.2.3-korg