The Gaudi Framework  v32r2 (46d42edc)
concurrency::NodePropertiesValidator Class Reference

#include <src/PRGraph/Visitors/Validators.h>

Inheritance diagram for concurrency::NodePropertiesValidator:
Collaboration diagram for concurrency::NodePropertiesValidator:

Public Member Functions

bool visitEnter (AlgorithmNode &) const override
 
bool visitEnter (DataNode &) const override
 
bool visitEnter (ConditionNode &) const override
 
bool visit (DecisionNode &) override
 
std::string reply () const
 
bool passed () const
 
virtual bool visit (DecisionNode &)
 
virtual bool visit (AlgorithmNode &)
 
virtual bool visit (DataNode &)
 
virtual bool visit (ConditionNode &)
 
virtual bool visitEnter (DecisionNode &) const
 
virtual bool visitEnter (AlgorithmNode &) const
 
virtual bool visitEnter (DataNode &) const
 
virtual bool visitEnter (ConditionNode &) const
 
- Public Member Functions inherited from concurrency::IGraphVisitor
virtual ~IGraphVisitor ()=default
 
virtual bool visitEnter (DecisionNode &) const
 
virtual bool visit (AlgorithmNode &)
 
virtual bool visit (DataNode &)
 
virtual bool visit (ConditionNode &)
 
virtual void reset ()
 

Private Attributes

std::ostringstream m_status {" No 'Concurrent'/'Prompt' contradictions found"}
 
bool m_foundViolations {false}
 

Detailed Description

Definition at line 13 of file Validators.h.

Member Function Documentation

◆ passed()

bool concurrency::NodePropertiesValidator::passed ( ) const
inline

Definition at line 25 of file Validators.h.

◆ reply()

std::string concurrency::NodePropertiesValidator::reply ( ) const
inline

Definition at line 24 of file Validators.h.

24 { return m_status.str(); };
T str(T... args)

◆ visit() [1/5]

virtual bool concurrency::IGraphVisitor::visit
inline

Definition at line 19 of file IGraphVisitor.h.

19 { return true; };

◆ visit() [2/5]

virtual bool concurrency::IGraphVisitor::visit
inline

Definition at line 22 of file IGraphVisitor.h.

22 { return true; };

◆ visit() [3/5]

virtual bool concurrency::IGraphVisitor::visit
inline

Definition at line 25 of file IGraphVisitor.h.

25 { return true; };

◆ visit() [4/5]

virtual bool concurrency::IGraphVisitor::visit
inline

Definition at line 16 of file IGraphVisitor.h.

16 { return true; };

◆ visit() [5/5]

bool concurrency::NodePropertiesValidator::visit ( DecisionNode node)
overridevirtual

Reimplemented from concurrency::IGraphVisitor.

Definition at line 5 of file Validators.cpp.

5  {
6 
7  if ( node.m_modeConcurrent && node.m_modePromptDecision ) {
8 
9  if ( !m_foundViolations )
10  m_status
11  << " 'Concurrent'/'Prompt' contradiction(s) found. Settings are mutually exclusive within a task group. "
12  "Discarding 'Prompt' for ";
13 
14  m_status << ( m_foundViolations ? ", " : "" ) << node.getNodeName();
15 
16  if ( !m_foundViolations ) m_foundViolations = true;
17 
18  return false;
19  }
20 
21  return true;
22  }

◆ visitEnter() [1/7]

virtual bool concurrency::IGraphVisitor::visitEnter
inline

Definition at line 21 of file IGraphVisitor.h.

21 { return true; };

◆ visitEnter() [2/7]

virtual bool concurrency::IGraphVisitor::visitEnter
inline

Definition at line 24 of file IGraphVisitor.h.

24 { return true; };

◆ visitEnter() [3/7]

virtual bool concurrency::IGraphVisitor::visitEnter
inline

Definition at line 15 of file IGraphVisitor.h.

15 { return true; };

◆ visitEnter() [4/7]

virtual bool concurrency::IGraphVisitor::visitEnter
inline

Definition at line 18 of file IGraphVisitor.h.

18 { return true; };

◆ visitEnter() [5/7]

bool concurrency::NodePropertiesValidator::visitEnter ( AlgorithmNode ) const
inlineoverridevirtual

Reimplemented from concurrency::IGraphVisitor.

Definition at line 18 of file Validators.h.

18 { return false; };

◆ visitEnter() [6/7]

bool concurrency::NodePropertiesValidator::visitEnter ( DataNode ) const
inlineoverridevirtual

Reimplemented from concurrency::IGraphVisitor.

Definition at line 19 of file Validators.h.

19 { return false; };

◆ visitEnter() [7/7]

bool concurrency::NodePropertiesValidator::visitEnter ( ConditionNode ) const
inlineoverridevirtual

Reimplemented from concurrency::IGraphVisitor.

Definition at line 20 of file Validators.h.

20 { return false; };

Member Data Documentation

◆ m_foundViolations

bool concurrency::NodePropertiesValidator::m_foundViolations {false}
private

Definition at line 29 of file Validators.h.

◆ m_status

std::ostringstream concurrency::NodePropertiesValidator::m_status {" No 'Concurrent'/'Prompt' contradictions found"}
private

Definition at line 28 of file Validators.h.


The documentation for this class was generated from the following files: