#include <nodesystem.h>

A GNodeIterator iterates over all children of a g-node. It is returned by NodeFunctions::GetChildren and PortListFunctions::GetPorts. Because both creation and iterator advance can return errors, the iteration doesn't provide the node of the current iteration directly, but wrapped in a Result. Therefore you have to write the loop as follows:
| NODE | The node class over which the iterator loops (e.g. Node or MutablePort). | 
Public Member Functions | |
| GNodeIterator ()=default | |
| Result< void > | operator++ () | 
| const NODE & | operator* () const | 
| const NODE * | operator-> () const | 
  Public Member Functions inherited from GNodeIteratorBase | |
| Result< void > | Init (const NodeSystemInterface *nodeSystem, const GNodeHandle &node) | 
| Result< void > | Init (const NodeSystemInterface *nodeSystem, Result< GNodeHandle > &&node) | 
| Result< void > | Init (const NodeSystemInterface *nodeSystem, Result< const GNodeHandle & > &&node) | 
| Result< void > | MoveToNext () | 
| Bool | HasEntry () const | 
| operator Bool () const | |
| const GNodeHandle & | GetHandle () const | 
| const MutableGNode & | GetNode () const | 
Private Types | |
| template<typename SUPER > | |
| using | ResultFunctions = ResultIteratorFunctions< SUPER > | 
Private Member Functions | |
| Result< void > | Init (const NodeSystemInterface *nodeSystem, const GNodeHandle &node) | 
| Result< void > | Filter () | 
Additional Inherited Members | |
  Protected Attributes inherited from GNodeIteratorBase | |
| const NodeSystemInterface * | _nodeSystem | 
| NodePath | _nodePath | 
| const GNodeData * | _nodeData | 
| const GNodeData * | _baseData | 
| Int | _childIndex | 
| MutableGNode | _child | 
      
  | 
  private | 
      
  | 
  default | 
Constructs a @CLASS object with default values.
| Result<void> operator++ | ( | ) | 
Advances this iterator to the next child node.
| const NODE& operator* | ( | ) | const | 
Returns the current child node. This function must not be called when this iterator doesn't point to a valid child node.
| const NODE* operator-> | ( | ) | const | 
Returns the current child node. This function must not be called when this iterator doesn't point to a valid child node.
      
  | 
  private | 
      
  | 
  private |