/// <inheritdoc /> public IHighlightAlgorithm <TVertex, TEdge> CreateAlgorithm( string highlightMode, IHighlightContext <TVertex, TEdge, TGraph> context, IHighlightController <TVertex, TEdge, TGraph> controller, IHighlightParameters parameters) { if (highlightMode is null) { throw new ArgumentNullException(nameof(highlightMode)); } if (context is null) { throw new ArgumentNullException(nameof(context)); } if (controller is null) { throw new ArgumentNullException(nameof(controller)); } switch (highlightMode) { case SimpleMode: return(new SimpleHighlightAlgorithm <TVertex, TEdge, TGraph>(controller, parameters)); } return(null); }
public IHighlightAlgorithm <TVertex, TEdge, TGraph> CreateAlgorithm(string highlightMode, IHighlightContext <TVertex, TEdge, TGraph> context, IHighlightController <TVertex, TEdge, TGraph> controller, IHighlightParameters parameters) { if (string.IsNullOrEmpty(highlightMode) || highlightMode == HighlightModeName) { return(new ReachableHighlightAlgorithm <TVertex, TEdge, TGraph>(controller, parameters)); } return(null); }
public IHighlightAlgorithm <TVertex, TEdge, TGraph> CreateAlgorithm( string highlightMode, IHighlightContext <TVertex, TEdge, TGraph> context, IHighlightController <TVertex, TEdge, TGraph> controller, IHighlightParameters parameters) { switch (highlightMode) { case "Simple": return(new SimpleHighlightAlgorithm <TVertex, TEdge, TGraph>(controller, parameters)); default: return(null); } }