AUI Framework
master
Cross-platform base for C++ UI apps
|
Classes# | |
struct | call_wrapper |
Public Types# | |
using | func_t = std::function<void(const Args&...)> |
using | emits_args_t = std::tuple<Args...> |
Public Member Functions# | |
template<typename Projection> | |
auto | projected (Projection &&projection) const |
call_wrapper | operator() (const Args &... args) |
ASignal (ASignal &&) noexcept=default | |
ASignal (const ASignal &) noexcept | |
ASignal & | operator= (ASignal &&) noexcept=default |
ASignal & | operator= (const ASignal &) noexcept |
operator bool () const | |
Check whether signal contains any connected slots or not. | |
void | clearAllOutgoingConnections () const noexcept override |
Destroys all connections of this signal, if any. | |
void | clearAllOutgoingConnectionsWith (aui::no_escape< AObjectBase > object) const noexcept override |
Destroys all connections with passed receiver, if any. | |
bool | hasOutgoingConnections () const noexcept |
bool | hasOutgoingConnectionsWith (aui::no_escape< AObjectBase > object) const noexcept override |
bool | isAtSignalEmissionState () const noexcept |
Additional Inherited Members# | |
![]() | |
static _weak< AObject > | weakPtrFromObject (AObject *object) |
static void | addIngoingConnectionIn (aui::no_escape< AObjectBase > object, _< Connection > connection) |
Adds a connection to the specified object. | |
static void | removeIngoingConnectionIn (aui::no_escape< AObjectBase > object, Connection &connection, std::unique_lock< ASpinlockMutex > &lock) |
Removes a connection from the specified object. | |
|
inlineoverridevirtualnoexcept |
Implements AAbstractSignal.
|
inlineoverridevirtualnoexcept |
receiver | object to clear connections with. |
Implements AAbstractSignal.
|
inlinenodiscardoverridevirtualnoexcept |
receiver | receiver objects to check connections with. |
Implements AAbstractSignal.
|
inline |
It's very useful then signal argument values calculation is expensive and you do not want to calculate them if no slots connected to the signal.