libcamera: signal: Split Slot implementation to reusable classes

Move the Slot* classes to bound_method.{h,cpp} and rename them to
Bound*Method*. They will be reused to implement asynchronous method
invocation similar to cross-thread signal delivery.

This is only a move and rename, no functional changes are included.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>
This commit is contained in:
Laurent Pinchart
2019-08-17 18:32:28 +03:00
parent a66e5ca8c6
commit 0e65ed8145
11 changed files with 197 additions and 166 deletions
+3 -2
View File
@@ -10,13 +10,14 @@
#include <list>
#include <memory>
#include <libcamera/bound_method.h>
namespace libcamera {
class Message;
template<typename... Args>
class Signal;
class SignalBase;
class SlotBase;
class Thread;
class Object
@@ -36,7 +37,7 @@ protected:
private:
template<typename... Args>
friend class Signal;
friend class SlotBase;
friend class BoundMethodBase;
friend class Thread;
void connect(SignalBase *signal);