Hedgehog
3.1.0
A library to generate hybrid pipeline workflow systems
|
Default concrete implementation of the notifier abstraction for the graph core. More...
#include "graph_notifier.h"
Public Member Functions | |
GraphNotifier ()=default | |
Default constructor. | |
~GraphNotifier () override=default | |
Default destructor. | |
void | initialize (abstraction::NotifierAbstraction *notifierAbstraction) override |
Redefine the implementor to do nothing, the graph do nothing by itself. | |
void | addSlot (abstraction::SlotAbstraction *slot) override |
Add slot to the graph, add slot to all output nodes recursively. | |
void | removeSlot (abstraction::SlotAbstraction *slot) override |
Remove slot to the graph, add slot to all output nodes recursively. | |
std::set< abstraction::SlotAbstraction * > const & | connectedSlots () const override |
Do not use, a graph does not have slots by itself. | |
void | notify () override |
Do not use, a graph does not notify. | |
void | notifyAllTerminated () override |
Do not use, a graph does not notify. | |
![]() | |
ImplementorNotifier () | |
Default constructor. | |
virtual | ~ImplementorNotifier ()=default |
Default destructor. | |
std::set< abstraction::NotifierAbstraction * > & | notifiers () |
Accessor to the linked NotifierAbstraction. | |
virtual void | initialize (abstraction::NotifierAbstraction *notifierAbstraction) |
Initialize the implementor Notifier by setting the corresponding abstraction. | |
virtual std::set< abstraction::SlotAbstraction * > const & | connectedSlots () const =0 |
Accessor to the connected slots. | |
virtual void | addSlot (abstraction::SlotAbstraction *slot)=0 |
Add a slot to the connected slots. | |
virtual void | removeSlot (abstraction::SlotAbstraction *slot)=0 |
Remove a slot to the connected slots. | |
virtual void | notify ()=0 |
Notify the connected slots to wake up. | |
virtual void | notifyAllTerminated ()=0 |
Notify the connected slots that this notifier is terminated. | |
Additional Inherited Members | |
![]() | |
std::unique_ptr< std::set< abstraction::NotifierAbstraction * > > | abstractNotifiers_ = nullptr |
Set of linked NotifierAbstraction. | |
Default concrete implementation of the notifier abstraction for the graph core.
Definition at line 31 of file graph_notifier.h.
|
explicitdefault |
Default constructor.
|
overridedefault |
Default destructor.
|
inlineoverridevirtual |
Add slot to the graph, add slot to all output nodes recursively.
slot | Slot to add |
Implements hh::core::implementor::ImplementorNotifier.
Definition at line 46 of file graph_notifier.h.
|
inlineoverridevirtual |
Do not use, a graph does not have slots by itself.
std::runtime_error | A graph has no connected connectedSlots by itself |
Implements hh::core::implementor::ImplementorNotifier.
Definition at line 61 of file graph_notifier.h.
|
inlineoverridevirtual |
Redefine the implementor to do nothing, the graph do nothing by itself.
notifierAbstraction | Abstraction not used |
Reimplemented from hh::core::implementor::ImplementorNotifier.
Definition at line 42 of file graph_notifier.h.
|
inlineoverridevirtual |
Do not use, a graph does not notify.
std::runtime_error | A graph has no slot to notify |
Implements hh::core::implementor::ImplementorNotifier.
Definition at line 67 of file graph_notifier.h.
|
inlineoverridevirtual |
Do not use, a graph does not notify.
std::runtime_error | A graph has no slot to notify |
Implements hh::core::implementor::ImplementorNotifier.
Definition at line 71 of file graph_notifier.h.
|
inlineoverridevirtual |
Remove slot to the graph, add slot to all output nodes recursively.
slot | Slot to remove |
Implements hh::core::implementor::ImplementorNotifier.
Definition at line 54 of file graph_notifier.h.