From ed4d7bde0c6dd6d7f4812f2601e1fa2f681ed960 Mon Sep 17 00:00:00 2001 From: Romain Forlot Date: Tue, 25 Jun 2019 17:13:22 +0200 Subject: [PATCH] Use shared_ptr to set message_set parent Better to use shared_ptr instead of raw pointer if possible. Bug-AGL: SPEC-2386 Change-Id: Id853d8ac6cddd1e53edd84e3bf27b0f1f5d92d4b Signed-off-by: Stephane Desneux Signed-off-by: Romain Forlot --- low-can-binding/binding/application-generated.cpp | 2 +- low-can-binding/diagnostic/diagnostic-message.cpp | 2 +- low-can-binding/diagnostic/diagnostic-message.hpp | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/low-can-binding/binding/application-generated.cpp b/low-can-binding/binding/application-generated.cpp index f91d4154..45b6a8cc 100644 --- a/low-can-binding/binding/application-generated.cpp +++ b/low-can-binding/binding/application-generated.cpp @@ -841,7 +841,7 @@ application_t::application_t() std::vector >& diagnostic_messages = cms->get_diagnostic_messages(); for(auto& dm : diagnostic_messages) { - dm->set_parent(cms.get()); + dm->set_parent(cms); } } } diff --git a/low-can-binding/diagnostic/diagnostic-message.cpp b/low-can-binding/diagnostic/diagnostic-message.cpp index 701248dc..6ebb6ab1 100644 --- a/low-can-binding/diagnostic/diagnostic-message.cpp +++ b/low-can-binding/diagnostic/diagnostic-message.cpp @@ -114,7 +114,7 @@ void diagnostic_message_t::set_supported(bool value) supported_ = value; } -void diagnostic_message_t::set_parent(can_message_set_t* parent) +void diagnostic_message_t::set_parent(std::shared_ptr parent) { parent_ = parent; } diff --git a/low-can-binding/diagnostic/diagnostic-message.hpp b/low-can-binding/diagnostic/diagnostic-message.hpp index c2f31e35..4ae84358 100644 --- a/low-can-binding/diagnostic/diagnostic-message.hpp +++ b/low-can-binding/diagnostic/diagnostic-message.hpp @@ -39,13 +39,13 @@ enum UNIT { INVALID }; -class can_message_set_t; +class message_set_t; /// @brief - A representation of an OBD-II PID Mode 01 (Note : An OBD-II PID mode 01 contains only one information). class diagnostic_message_t { private: - can_message_set_t* parent_; /*!< parent_ - Pointer to the CAN message set holding this diagnostic message */ + std::shared_ptr parent_; /*!< parent_ - Pointer to the CAN message set holding this diagnostic message */ uint8_t pid_; /*!< pid_ - The 1 byte PID.*/ std::string generic_name_; /*!< generic_name_ - A human readable name to use for this PID when published.*/ int min_; /*!< min_ - Minimum value that can take this pid */ @@ -97,7 +97,7 @@ class diagnostic_message_t void set_timestamp(uint64_t timestamp); void set_supported(bool value); - void set_parent(can_message_set_t* parent); + void set_parent(std::shared_ptr parent); const DiagnosticRequest build_diagnostic_request() const; bool is_obd2_response(const can_message_t& can_message); -- 2.16.6