Workspace 6.21.5
|
Specialization for a thread-safe GeneralObserver. More...
#include <Workspace/DataExecution/Events/generalobserver.h>
Public Types | |
using | MemberFunc = typename DataExecutionPrivate::EventProcessor< SenderEventType, ReceiverEventType, ReceiverType, ReceiverOrBaseType, ReturnType >::MemberFunc |
Public Types inherited from ObserverType< SenderEventType, ReceiverEventType, ReceiverType, ReceiverOrBaseType, ReturnType > | |
using | MemberFunc = typename Processor::MemberFunc |
using | Processor = DataExecutionPrivate::EventProcessor< SenderEventType, ReceiverEventType, ReceiverType, ReceiverOrBaseType, ReturnType > |
Public Member Functions | |
GeneralObserver (Observable &sender, const EventIDSingleton< SenderEventType > &eventId, ReceiverType &receiver, MemberFunc func) | |
virtual void | update (const ObservableEvent &e) |
Public Member Functions inherited from Observer | |
void | destroy () |
const EventID & | getEventID () const |
void | moveToThread (QThread *thread) |
virtual void | update (const ObservableEvent &event) |
Additional Inherited Members | |
Protected Member Functions inherited from ObserverType< SenderEventType, ReceiverEventType, ReceiverType, ReceiverOrBaseType, ReturnType > | |
ObserverType (Observable &sender, const EventIDSingleton< SenderEventType > &eventId, ReceiverType &receiver, typename Processor::MemberFunc func) | |
void | processEvent (const ObservableEvent &e) |
Protected Member Functions inherited from Observer | |
Observer (const Observer &) | |
Observer (Observable &subject, const EventID &eventID, bool ownedBySubject=false, bool attach=true) | |
virtual | ~Observer () |
bool | isOwnedBySubject () const |
void | setOwnedBySubject (bool ownedBySubject) const |
virtual bool | updateInNotificationThread (const ObservableEvent &event) |
virtual void | updateInObserverThread (const ObservableEvent &event) |
This specialization is meant for observers that can safely be called from any thread directly. The notification and receiving threads can be different and no thread synchronisation is necessary.
using MemberFunc = typename DataExecutionPrivate::EventProcessor<SenderEventType, ReceiverEventType, ReceiverType, ReceiverOrBaseType, ReturnType>::MemberFunc |
|
inline |
|
inlinevirtual |
Reimplemented from Observer.