#include </builds/gaudi/Gaudi/GaudiHive/src/PRGraph/Visitors/Promoters.h>
Definition at line 48 of file Promoters.h.
◆ DecisionUpdater()
concurrency::DecisionUpdater::DecisionUpdater |
( |
EventSlot & |
slot, |
|
|
const Cause & |
cause, |
|
|
bool |
ifTrace = false |
|
) |
| |
|
inline |
◆ visit() [1/5]
virtual bool concurrency::IGraphVisitor::visit |
|
inline |
◆ visit() [2/5]
Reimplemented from concurrency::IGraphVisitor.
Definition at line 104 of file Promoters.cpp.
110 if (
true == node.isOptimist() )
112 else if ( AState::EVTACCEPTED ==
state )
113 decision = !node.isLiar();
114 else if ( AState::EVTREJECTED ==
state )
115 decision = node.isLiar();
117 if ( -1 != decision ) {
122 for (
const auto&
output : node.getOutputDataNodes() )
123 for (
auto& consumer :
output->getConsumers() ) consumer->accept( promoter );
127 auto& parents = node.getParentDecisionHubs();
128 if ( parents.size() == 1 ) {
129 parents[0]->accept( vis );
131 auto scout = SubSlotScout(
m_slot, node );
132 for (
auto& p : parents ) {
134 if ( scout.reply() ) p->accept( vis );
138 auto scout = ActiveLineageScout(
m_slot, node );
139 for (
auto& p : parents ) {
141 if ( scout.reply() ) p->accept( vis );
◆ visit() [3/5]
virtual bool concurrency::IGraphVisitor::visit |
|
inline |
◆ visit() [4/5]
virtual bool concurrency::IGraphVisitor::visit |
|
inline |
◆ visit() [5/5]
virtual bool concurrency::IGraphVisitor::visit |
|
inline |
◆ m_cause
Cause concurrency::DecisionUpdater::m_cause |
◆ m_slot
EventSlot* concurrency::DecisionUpdater::m_slot |
◆ m_trace
bool concurrency::DecisionUpdater::m_trace |
The documentation for this class was generated from the following files: