The Gaudi Framework  v28r3 (cc1cf868)
IGraphVisitor.h
Go to the documentation of this file.
1 #ifndef IGRAPHVISITOR_H_
2 #define IGRAPHVISITOR_H_
3 
4 #include "EventSlot.h"
5 
6 namespace concurrency {
7 
8  class DecisionNode;
9  class AlgorithmNode;
10  class DataNode;
11 
12  class IGraphVisitor {
13  public:
14  virtual ~IGraphVisitor() = default;
15 
16  virtual bool visitEnter(DecisionNode&) const {return true;};
17  virtual bool visit(DecisionNode&) {return true;};
18 
19  virtual bool visitEnter(AlgorithmNode&) const {return true;};
20  virtual bool visit(AlgorithmNode&) {return true;};
21 
22  virtual bool visitEnter(DataNode&) const {return true;};
23  virtual bool visit(DataNode&) {return true;};
24 
25  virtual void reset() {m_nodesSucceeded = 0;};
26 
27  public:
28  int m_nodesSucceeded;
30  };
31 }
32 
33 #endif /* IGRAPHVISITOR_H_ */
virtual bool visit(DecisionNode &)
Definition: IGraphVisitor.h:17
virtual bool visitEnter(DataNode &) const
Definition: IGraphVisitor.h:22
virtual bool visitEnter(DecisionNode &) const
Definition: IGraphVisitor.h:16
virtual bool visit(AlgorithmNode &)
Definition: IGraphVisitor.h:20
virtual bool visit(DataNode &)
Definition: IGraphVisitor.h:23
Class representing the event slot.
Definition: EventSlot.h:11
virtual bool visitEnter(AlgorithmNode &) const
Definition: IGraphVisitor.h:19
virtual ~IGraphVisitor()=default