class: ewol::object::template<T> Signal


Description:



Synopsis:

+                                                                                          Signal       (ewol::object::SignalList & _objectLink,
const std::string & _name,
const std::string & _description);
+ virtual ~Signal ();
+ void bind (std::shared_ptr<ewol::Object> _obj,
void(TYPE::*_func)(constT & ));
+ void connect (std::shared_ptr<ewol::Object> _obj,
std::function<void(constT&)> _function);
+ void release (std::shared_ptr<ewol::Object> _obj);
+ void emit (const T & _data);

Object Hierarchy:

+SignalBase
+--> ewol::object::Signal

Detail:

Signal

+  Signal (ewol::object::SignalList & _objectLink,
const std::string & _name,
const std::string & _description);
Create a parameter with a specific type.


~Signal

+ virtual  ~Signal ();
Destructor.


bind

+ void bind (std::shared_ptr<ewol::Object> _obj,
void(TYPE::*_func)(constT & ));
Bind a callback function to the current signal (generic methis (simplest))


connect

+ void connect (std::shared_ptr<ewol::Object> _obj,
std::function<void(constT&)> _function);
Advanced binding a callback function to the current signal.


release

+ void release (std::shared_ptr<ewol::Object> _obj);
remove link on the signal.


emit

+ void emit (const T & _data);
Generate a signal on all interface listening.