Exemple #1
0
        protected override void ProcessEdgeNotTaken(ITreeEdge <FC> edge)
        {
            ITreeNode <FC> predecessor = (ITreeNode <FC>)edge.Predecessor;
            ITreeNode <FC> successor   = (ITreeNode <FC>)edge.Successor;

            edge.EdgeClass = predecessor.SpanningTreeIndex < successor.SpanningTreeIndex
                ? IsAncestor(predecessor, successor) ? EdgeClass.ForwardEdge : EdgeClass.CrossEdge
                : IsAncestor(successor, predecessor) ? EdgeClass.BackEdge : EdgeClass.CrossEdge;
        }
 protected virtual void ProcessEdgeNotTaken(ITreeEdge <FC> edge)
 {
 }
 protected virtual void ProcessEdgeAfter(ITreeEdge <FC> edge)
 {
 }
        //--//

        protected virtual void ProcessEdgeBefore(ITreeEdge <FC> edge)
        {
        }
Exemple #5
0
        //--//

        protected override void ProcessEdgeBefore(ITreeEdge <FC> edge)
        {
            edge.EdgeClass = EdgeClass.TreeEdge;
        }