protected NodeIterator(Node rootNode,boolean showLeafNodes,boolean showDecisionNodes,boolean showDirectedGraphNodes){
  this.root=rootNode;
  this.showLeafNodes=showLeafNodes;
  this.showDecisionNodes=showDecisionNodes;
  this.showDirectedGraphNodes=showDirectedGraphNodes;
  this.current=root;
  alreadySeen.add(current);
  if (!currentIsSuitable()) {
    nextSuitableNodeDepthFirst();
  }
}

protected NodeIterator ( Node rootNode , boolean showLeafNodes , boolean showDecisionNodes , boolean showDirectedGraphNodes ) { this . root = rootNode ; this . showLeafNodes = showLeafNodes ; this . showDecisionNodes = showDecisionNodes ; this . showDirectedGraphNodes = showDirectedGraphNodes ; this . current = root ; alreadySeen . add ( current ) ; if ( ! currentIsSuitable ( ) ) { nextSuitableNodeDepthFirst ( ) ; } }
iterate over the subtree below rootnode .
