protected void OnVisitingNode(VisitingNodeEventArgs e) { var handler = this.VisitingNode; if (handler != null) { handler(this, e); } }
private void OnVisitingNode(VisitingNodeEventArgs e) { var handler = this.VisitingNode; if (handler != null) { logger.Trace("Before firing VisitingNode event."); handler(this, e); logger.Trace("VisitingNode event fired."); } }
public override INode Traverse(INode root) { VisitedNodeCollection visited = new VisitedNodeCollection(); Queue <INode> nodeQueue = new Queue <INode>(); nodeQueue.Enqueue(root); visited.Add(root); INode curr = null; VisitingNodeEventArgs e; while (nodeQueue.Any()) { curr = nodeQueue.Dequeue(); this.OnVisitingNode(e = new VisitingNodeEventArgs(curr)); if (e.Found) { // if we were looking for this particular node, return it! return(curr); } this.OnVisitedNode(curr); foreach (var adjacentNode in curr.GetAdjacentNodes()) { if (visited.NotContains(adjacentNode)) { visited.Add(adjacentNode); nodeQueue.Enqueue(adjacentNode); } } } return(null); }
private void HandleVisitingNodeInComponent(object sender, VisitingNodeEventArgs e) { OnVisitingNode(e); }