void DownOneLevel(INode current) { LogDebuggingInfo("Before Push :" + CallStack.Count); var frame = new NodeWalkerFrame(current); mLinker.Link(current); CallStack.Push(frame); LogDebuggingInfo("After Push :" + CallStack.Count); // Prepare loop frame.GetValidator().BeginLoop(); }
public void Assign(INode node) { var blackboardNode = node as IBlackboardNode <TChild>; if (blackboardNode != null) { mLinker.Link <TParent> (this); mChildBoard.Context = this.mInitFunc(this.Board.Context); IBlackboardNode <TChild> specificNode = blackboardNode; specificNode.Board = this.mChildBoard; } }