Exemple #1
0
 /// <summary>
 ///     Invokes the <see cref="CreatedNode" /> event
 /// </summary>
 /// <param name="mapSquare">The <see cref="CreatedNode" />'s parameter</param>
 public void RegisterNewNode(MapSquare mapSquare)
 {
     if (CreatedNode != null)
     {
         CreatedNode.Invoke(mapSquare);
     }
 }
Exemple #2
0
    public TNode GetChild(TKey child)
    {
        CreatedNode entry;

        if (createdChildren.ContainsKey(child))
        {
            entry             = createdChildren[child];
            entry.Marked      = true;
            entry.AccessOrder = nextAccessOrder++;
            return(entry.Node);
        }

        var node = childCreator(child);

        entry = new CreatedNode(node)
        {
            AccessOrder = nextAccessOrder++
        };
        createdChildren[child] = entry;

        parentObject.AddChild(node);

        return(node);
    }