From 3b41672f37d95321b2ee6a906ef188f3e0a0b832 Mon Sep 17 00:00:00 2001 From: Edouard DUPIN Date: Tue, 5 Apr 2016 22:41:25 +0200 Subject: [PATCH] [DEV] change API internal signal => signal'S' --- esignal/ISignal.h | 2 +- esignal/Interface.h | 42 +-------------- esignal/{Interface.cpp => InterfaceData.cpp} | 2 +- esignal/InterfaceData.h | 54 ++++++++++++++++++++ esignal/details/ISignal.hxx | 4 +- lutin_esignal.py | 3 +- test/test_isignal.cpp | 8 +-- 7 files changed, 66 insertions(+), 49 deletions(-) rename esignal/{Interface.cpp => InterfaceData.cpp} (97%) create mode 100644 esignal/InterfaceData.h diff --git a/esignal/ISignal.h b/esignal/ISignal.h index fe2a4bc..22943de 100644 --- a/esignal/ISignal.h +++ b/esignal/ISignal.h @@ -70,7 +70,7 @@ esignal::ISignal::ISignal(CLASS_TYPE* _class, m_description(_description) { // add a reference on the current signal ... if (m_signalInterfaceLink != nullptr) { - m_signalInterfaceLink->signal.add(this); + m_signalInterfaceLink->signals.add(this); } } diff --git a/esignal/Interface.h b/esignal/Interface.h index 99b2d50..f48dbe5 100644 --- a/esignal/Interface.h +++ b/esignal/Interface.h @@ -9,54 +9,16 @@ #include #include +#include namespace esignal { - class Base; - /** - * @brief Interface data to collect the Signal list (for abstarction connection) - */ - class InterfaceData { - private: - std::vector m_list; //!< list of availlable Parameters - public: - /** - * @brief Constructor. - */ - InterfaceData(); - /** - * @brief Destructor. - */ - virtual ~InterfaceData(); - /** - * @brief Register a signal class pointer in the List of signal list - * @note This class does not destroy the parameter pointer!!! - * @param[in] _pointerOnSignal Pointer on the signal that might be added. - */ - void add(esignal::Base* _pointerOnSignal); - /** - * @brief Remove a signal class pointer in the List of signal list - * @note This class does not destroy the parameter pointer!!! - * @param[in] _pointerOnSignal Pointer on the signal that might be removed. - */ - void remove(esignal::Base* _pointerOnSignal); - /** - * @brief Get All the signal list: - * @return vector on all the signals names - */ - std::vector getAll() const; - /** - * @brief Remove binding on all event class. - * @param[in] _sharedPtr sharedPtr to unlink (no type needed ...). - */ - void disconnect(const std::shared_ptr& _sharedPtr); - }; /** * @brief Interface to collect the Signal list (for abstarction connection) * It create a simple "signal" member that permit to access at the signalproperties. */ class Interface { public: - esignal::InterfaceData signal; //!< Interface to access at all signal properties... + esignal::InterfaceData signals; //!< Interface to access at all signals properties... }; } diff --git a/esignal/Interface.cpp b/esignal/InterfaceData.cpp similarity index 97% rename from esignal/Interface.cpp rename to esignal/InterfaceData.cpp index 68e0377..eb78399 100644 --- a/esignal/Interface.cpp +++ b/esignal/InterfaceData.cpp @@ -8,7 +8,7 @@ #include #include -#include +#include #include esignal::InterfaceData::InterfaceData() { diff --git a/esignal/InterfaceData.h b/esignal/InterfaceData.h new file mode 100644 index 0000000..ab73501 --- /dev/null +++ b/esignal/InterfaceData.h @@ -0,0 +1,54 @@ +/** + * @author Edouard DUPIN + * + * @copyright 2016, Edouard DUPIN, all right reserved + * + * @license APACHE v2.0 (see license file) + */ +#pragma once + +#include +#include + +namespace esignal { + class Base; + /** + * @brief Interface data to collect the Signal list (for abstarction connection) + */ + class InterfaceData { + private: + std::vector m_list; //!< list of availlable Parameters + public: + /** + * @brief Constructor. + */ + InterfaceData(); + /** + * @brief Destructor. + */ + virtual ~InterfaceData(); + /** + * @brief Register a signal class pointer in the List of signal list + * @note This class does not destroy the parameter pointer!!! + * @param[in] _pointerOnSignal Pointer on the signal that might be added. + */ + void add(esignal::Base* _pointerOnSignal); + /** + * @brief Remove a signal class pointer in the List of signal list + * @note This class does not destroy the parameter pointer!!! + * @param[in] _pointerOnSignal Pointer on the signal that might be removed. + */ + void remove(esignal::Base* _pointerOnSignal); + /** + * @brief Get All the signal list: + * @return vector on all the signals names + */ + std::vector getAll() const; + /** + * @brief Remove binding on all event class. + * @param[in] _sharedPtr sharedPtr to unlink (no type needed ...). + */ + void disconnect(const std::shared_ptr& _sharedPtr); + }; +} + diff --git a/esignal/details/ISignal.hxx b/esignal/details/ISignal.hxx index b9cd2de..82d820a 100644 --- a/esignal/details/ISignal.hxx +++ b/esignal/details/ISignal.hxx @@ -19,14 +19,14 @@ esignal::ISignal::ISignal(esignal::Interface* _signalInterfaceLink, m_description(_description) { // add a reference on the current signal ... if (m_signalInterfaceLink != nullptr) { - m_signalInterfaceLink->signal.add(this); + m_signalInterfaceLink->signals.add(this); } } template esignal::ISignal::~ISignal() { if (m_signalInterfaceLink != nullptr) { - m_signalInterfaceLink->signal.remove(this); + m_signalInterfaceLink->signals.remove(this); } } diff --git a/lutin_esignal.py b/lutin_esignal.py index eac590f..8ca95a4 100644 --- a/lutin_esignal.py +++ b/lutin_esignal.py @@ -33,7 +33,7 @@ def create(target, module_name): my_module.add_src_file([ 'esignal/debug.cpp', 'esignal/Connection.cpp', - 'esignal/Interface.cpp', + 'esignal/InterfaceData.cpp', 'esignal/Base.cpp', 'esignal/details/LockSharedPtrRef.cpp', 'esignal/details/RefCount.cpp', @@ -43,6 +43,7 @@ def create(target, module_name): my_module.add_header_file([ 'esignal/debug.h', 'esignal/Interface.h', + 'esignal/InterfaceData.h', 'esignal/Base.h', 'esignal/Signal.h', 'esignal/ISignal.h', diff --git a/test/test_isignal.cpp b/test/test_isignal.cpp index 32325a2..064ec18 100644 --- a/test/test_isignal.cpp +++ b/test/test_isignal.cpp @@ -103,25 +103,25 @@ TEST(test_isignal_counter, localbasicInterfaceGetListSignal) { list.push_back("int"); list.push_back("string"); list.push_back("float"); - EXPECT_EQ(localClass.signal.getAll(), list); + EXPECT_EQ(localClass.signals.getAll(), list); } TEST(test_isignal_counter, localbasicInterfaceDisconnectNullPtr) { testISignal localClass; - localClass.signal.disconnect(nullptr); + localClass.signals.disconnect(nullptr); } TEST(test_isignal_counter, localbasicInterfaceDisconnectSharedPtr) { testISignal localClass; std::shared_ptr tmp = std::make_shared(); - localClass.signal.disconnect(tmp); + localClass.signals.disconnect(tmp); EXPECT_EQ(localClass.m_signalInt.size(), 0); EXPECT_EQ(localClass.m_signalInt.empty(), true); localClass.m_signalInt.connect(tmp, &testCallbackIShared::callbackConstInt); EXPECT_EQ(localClass.m_signalInt.size(), 1); EXPECT_EQ(localClass.m_signalInt.empty(), false); localClass.m_signalInt.emit(34567); - localClass.signal.disconnect(tmp); + localClass.signals.disconnect(tmp); EXPECT_EQ(localClass.m_signalInt.size(), 0); EXPECT_EQ(localClass.m_signalInt.empty(), true); }