/// <summary> /// Initializes a new instance of the <see cref="EdgeUIElement"/> class. /// </summary> /// <param name="graphProvider">The <see cref="IGraphProvider"/>.</param> /// <param name="edge">The edge.</param> public EdgeUIElement(IGraphProvider graphProvider, Edge <NodeData, EdgeData> edge) : base(graphProvider, edge.Data) { this.Edge = edge; edge.EdgeDirectionChanged += new System.EventHandler <System.EventArgs>((s, e) => this.InvalidateModel()); }
public Store(string id, IGraphProvider provider) { _id = id; _provider = provider; _graphs[GraphType.Meta] = provider.CreateGraph(id, GraphType.Meta); _graphs[GraphType.Data] = provider.CreateGraph(id, GraphType.Data); _graphs[GraphType.Infer] = provider.CreateGraph(id, GraphType.Infer); }
/// <summary> /// Initializes a new instance of the <see cref="IAlgorithmMenuItemViewModel"/> class. /// </summary> /// <param name="graphProvider">The <see cref="IGraphProvider"/>.</param> /// <param name="messageHandler">The <see cref="IMessageHandler"/>.</param> /// <param name="parentViewModel">The parent view model.</param> /// <param name="algorithm">The <see cref="IGraphAlgorithm"/>.</param> public IAlgorithmMenuItemViewModel(IGraphProvider graphProvider, IMessageHandler messageHandler, MenuItemViewModel parentViewModel, IGraphAlgorithm algorithm) : base(parentViewModel) { this.graphProvider = graphProvider; this.messageHandler = messageHandler; this.Header = algorithm.Name; this.Command = new RelayCommand(param => this.Execute(algorithm)); }
/// <summary> /// Initializes a new instance of the <see cref="NodeUIElement"/> class. /// </summary> /// <param name="graphProvider">The <see cref="IGraphProvider"/>.</param> /// <param name="node">The node.</param> public NodeUIElement(IGraphProvider graphProvider, Node <NodeData, EdgeData> node) : base(graphProvider, node.Data) { this.Node = node; this.TranslateTransform = new TranslateTransform3D((Vector3D)node.Data.Position); this.Transform = this.TranslateTransform; node.Data.NodeMoved += new System.EventHandler <NodeMovedEventArgs>(this.NodeMoved); }
/// <summary> /// Initializes a new instance of the <see cref="CategoryMenuItemViewModel"/> class. /// </summary> /// <param name="graphProvider">The <see cref="IGraphProvider"/>.</param> /// <param name="messageHandler">The <see cref="IMessageHandler"/>.</param> /// <param name="header">The header.</param> /// <param name="algorithms">The <see cref="IGraphAlgorithm">algorithms</see>.</param> public CategoryMenuItemViewModel(IGraphProvider graphProvider, IMessageHandler messageHandler, string header, IEnumerable <IGraphAlgorithm> algorithms) : base(null) { this.Header = header; foreach (var algorithm in algorithms) { this.ChildMenuItems.Add(new IAlgorithmMenuItemViewModel(graphProvider, messageHandler, this, algorithm)); } }
public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) { EditorGUI.BeginProperty(position, label, property); if (GUI.Button(position, label, EditorStyles.objectField)) { GraphEditorWindow window = GraphEditorWindow.ShowWindow(); IGraphProvider behavior = (IGraphProvider)property.GetParent(); window.Load <T>(behavior, property.serializedObject.targetObject); } EditorGUI.EndProperty(); }
public AzureResourceProvider( IHttpContextAccessor contextAccessor, ITokenAcquisition tokenAcquisition, IHttpClientFactory httpClientFactory, IGraphProvider graphProvider, ILogger <AzureResourceProvider> logger) : base(contextAccessor, tokenAcquisition) { _httpClientFactory = httpClientFactory; _graphProvider = graphProvider; _logger = logger; }
public AuthorizationManager( IHttpContextAccessor contextAccessor, ITokenAcquisition tokenAcquisition, IConfiguration configuration, IAzureResourceProvider azureResourceProvider, IGraphProvider graphProvider) : base(contextAccessor, tokenAcquisition) { _azureResourceProvider = azureResourceProvider; _configuration = configuration; _graphProvider = graphProvider; }
public GraphNode(Graph root, Guid templateId) : base(root, templateId) { Id = templateId; var cmdProvider = ServiceProvider.Get <ICommandProvider>(); _provider = ServiceProvider.Get <IGraphProvider>(); Actions.Add("Go to Graph", cmdProvider.Create(GoToGraph)); LinkedGraphId = templateId; }
/// <summary> /// Initializes a new instance of the <see cref="MainWindowViewModel"/> class. /// </summary> /// <param name="graphProvider">The <see cref="IGraphProvider"/>.</param> /// <param name="fileSelector">The <see cref="IFileSelector"/>.</param> /// <param name="messageHandler">The <see cref="IMessageHandler"/>.</param> public MainWindowViewModel(IGraphProvider graphProvider, IFileSelector fileSelector, IMessageHandler messageHandler) { this.GraphViewModel = graphProvider ?? throw new ArgumentNullException("graphProvider"); this.FileSelector = fileSelector ?? throw new ArgumentNullException("fileSelector"); this.MessageHandler = messageHandler ?? throw new ArgumentNullException("messageHandler"); this.LoadGraphCommand = new RelayCommand(param => this.LoadGraph()); this.SaveGraphCommand = new RelayCommand(param => this.SaveGraph()); this.ExitCommand = new RelayCommand(param => App.Current.Shutdown()); this.AlgorithmMenuItems = AlgorithmsMenuBuilder.GetMenuItems(this.GraphViewModel, messageHandler); }
public void Load(Type type, IGraphProvider behavior, UnityEngine.Object target) { if (behavior == null) { Close(); } this.m_TargetObject = target; this.m_Behavior = behavior; this.m_GraphView = Activator.CreateInstance(type, this, behavior.GetGraph(), this.m_TargetObject) as IGraphView; EditorUtility.SetDirty(this); this.titleContent = new GUIContent(ObjectNames.NicifyVariableName(behavior.GetGraph().GetType().Name) + " Editor"); this.m_GraphView.CenterGraphView(); Repaint(); }
/// <summary> /// Creates the visual representation for an edge. /// </summary> /// <param name="edge">The edge.</param> /// <param name="graphProvider">The <see cref="IGraphProvider"/>.</param> /// <param name="translateTransform1">The <see cref="TranslateTransform3D"/> of the visual element representing the first node of the edge.</param> /// <param name="translateTransform2">The <see cref="TranslateTransform3D"/> of the visual element representing the second node of the edge.</param> /// <returns>The visual representation for an edge.</returns> public static UIElement3D CreateVisual(this Edge <NodeData, EdgeData> edge, IGraphProvider graphProvider, TranslateTransform3D translateTransform1, TranslateTransform3D translateTransform2) { if (edge.Data == null) { edge.Data = new EdgeData(); } if (edge.FirstNode == edge.SecondNode) { return(new SelfEdgeUIElement(graphProvider, edge, translateTransform1)); } else { return(new RegularEdgeUIElement(graphProvider, edge, translateTransform1, translateTransform2)); } }
/// <summary> /// Initializes a new instance of the <see cref="GraphUIElement"/> class. /// </summary> /// <param name="graphProvider">The <see cref="IGraphProvider"/>.</param> /// <param name="graphData">The graph data.</param> public GraphUIElement(IGraphProvider graphProvider, GraphDataBase graphData) { this.GraphProvider = graphProvider; var colorBinding = new Binding(); colorBinding.Mode = BindingMode.OneWay; colorBinding.Source = graphData; colorBinding.Path = new PropertyPath("Color"); BindingOperations.SetBinding(this, GraphUIElement.ColorProperty, colorBinding); graphData.Blinking += new System.EventHandler <AnimationEventArgs>(this.Blinking); this.observer = new PropertyObserver <GraphDataBase>(graphData) .RegisterHandler(g => g.Marked, g => this.InvalidateModel()); }
/// <summary> /// Computes traversible path between given points /// </summary> public static T[] GetPath(T start, T goal, IGraphProvider <T> provider) { if (start == null || goal == null) { return(new T[0]); } var open = new PList(); var closed = new PList(); open.Add(new SearchNode <T>(start, 0f, provider.H(start, goal), null)); var result = TraversePath(goal, open, closed, provider); if (result != null) { return(result.RetraceSteps()); } return(new T[0]); }
/// <summary> /// Initializes a new instance of the <see cref="RegularEdgeUIElement"/> class. /// </summary> /// <param name="graphProvider">The <see cref="IGraphProvider"/>.</param> /// <param name="edge">The edge.</param> /// <param name="translateTransform1">The <see cref="TranslateTransform3D"/> of the visual element representing the first node of the edge.</param> /// <param name="translateTransform2">The <see cref="TranslateTransform3D"/> of the visual element representing the second node of the edge.</param> public RegularEdgeUIElement(IGraphProvider graphProvider, Edge <NodeData, EdgeData> edge, TranslateTransform3D translateTransform1, TranslateTransform3D translateTransform2) : base(graphProvider, edge) { this.translateTransform1 = translateTransform1; this.translateTransform2 = translateTransform2; this.positionXDescriptor = DependencyPropertyDescriptor.FromProperty(TranslateTransform3D.OffsetXProperty, typeof(TranslateTransform3D)); this.positionXDescriptor.AddValueChanged(translateTransform1, (s, e) => this.UpdatePosition()); this.positionXDescriptor.AddValueChanged(translateTransform2, (s, e) => this.UpdatePosition()); this.positionYDescriptor = DependencyPropertyDescriptor.FromProperty(TranslateTransform3D.OffsetYProperty, typeof(TranslateTransform3D)); this.positionYDescriptor.AddValueChanged(translateTransform1, (s, e) => this.UpdatePosition()); this.positionYDescriptor.AddValueChanged(translateTransform2, (s, e) => this.UpdatePosition()); this.positionZDescriptor = DependencyPropertyDescriptor.FromProperty(TranslateTransform3D.OffsetZProperty, typeof(TranslateTransform3D)); this.positionZDescriptor.AddValueChanged(translateTransform1, (s, e) => this.UpdatePosition()); this.positionZDescriptor.AddValueChanged(translateTransform2, (s, e) => this.UpdatePosition()); this.UpdatePosition(); }
/// <summary> /// Gets the menu items. /// Retrieves all implementations of <see cref="IGraphAlgorithm"/> from this assembly in a hierarchical structure. /// </summary> /// <param name="graphProvider">The <see cref="IGraphProvider"/>.</param> /// <param name="messageHandler">The <see cref="IMessageHandler"/>.</param> /// <returns>The menu items.</returns> public static IEnumerable <MenuItemViewModel> GetMenuItems(IGraphProvider graphProvider, IMessageHandler messageHandler) { var menuItems = new ObservableCollection <MenuItemViewModel>(); var algorithms = GetTypesByInterface(new Assembly[] { Assembly.GetExecutingAssembly() }, typeof(IGraphAlgorithm)); var instances = algorithms.Select(a => (IGraphAlgorithm)Activator.CreateInstance(a)).OrderBy(a => a.Category).ThenBy(a => a.Name); var categories = instances.Select(a => a.Category).Where(c => c != null).Distinct(); foreach (var category in categories) { menuItems.Add(new CategoryMenuItemViewModel(graphProvider, messageHandler, category, instances.Where(a => category.Equals(a.Category)))); } foreach (var algorithm in instances.Where(a => a.Category == null)) { menuItems.Add(new IAlgorithmMenuItemViewModel(graphProvider, messageHandler, null, algorithm)); } return(menuItems); }
private static SearchNode <T> TraversePath(T goal, PList open, PList closed, IGraphProvider <T> _provider) { if (open.Count == 0) { return(null); } var current = open.FindBest(); if (current.Node == goal) { return(current); } closed.Add(current); var edges = _provider.GetEdges(current.Node); foreach (var e in edges) { if (closed.HasNode(e.Node)) { continue; } var openChild = open.FindNode(e.Node); if (!openChild) { openChild = new SearchNode <T>(e.Node, e.Cost, _provider.H(e.Node, goal), current); open.Add(openChild); } else { float g = current.G + e.Cost; if ((g + openChild.H) < openChild.F) { openChild.SetParent(current, e.Cost); } } } return(TraversePath(goal, open, closed, _provider)); }
public Logic( IGraphProvider graphProvider, IBitmapProvider bitmapProvider, Log logger, Commands commands, ConnectionData connectionData) { GraphProvider = graphProvider; Bitmap = bitmapProvider.Bitmap; Logger = logger; Commands = commands; bitmapProvider.ShowBitmap(); graphProvider.ShowGraph(); _groundSprite = BitmapLoader.Load(SolutionDirectory.Get(@"Images\Shooter\Tiles\tile_05.png"), 16, 16); _waterSprite = BitmapLoader.Load(SolutionDirectory.Get(@"Images\Shooter\Tiles\tile_19.png"), 16, 16); _treeSprite = BitmapLoader.Load(SolutionDirectory.Get(@"Images\Shooter\Tiles\tile_183.png"), 16, 16); Commands.Login(connectionData.Host, connectionData.Port, connectionData.UserName, connectionData.Password); Logger.LogCommands = true; }
/// <summary> /// Initializes a new instance of a QueryableGraph <T> class /// </summary> /// <param name="graphProvider"></param> internal TypedQueryableGraph(IGraphProvider graphProvider) : base(graphProvider) { }
public static IStore Create(string id, IGraphProvider provider) { return(new Store(id, provider)); }
public SetProvider(IGraphProvider graphProvider) { _graphProvider = graphProvider; _setList = new ConcurrentDictionary<string, IStore>(); }
/// <summary> /// Creates the visual representation for a node. /// </summary> /// <param name="node">The node.</param> /// <param name="graphProvider">The <see cref="IGraphProvider"/>.</param> /// <returns>The visual representation for a node.</returns> public static NodeUIElement CreateVisual(this Node <NodeData, EdgeData> node, IGraphProvider graphProvider) { if (node.Data == null) { node.Data = new NodeData(); } return(new NodeUIElement(graphProvider, node)); }
/// <summary> /// Initializes a new instance of the <see cref="MainWindow"/> class. /// </summary> /// <param name="graphProvider">The <see cref="IGraphProvider"/>.</param> public MainWindow(IGraphProvider graphProvider) { this.InitializeComponent(); this.graphProvider = graphProvider; }
public GraphLoader(IClientEndpointsManager manager, IGraphProvider graphProvider) { _manager = manager; _graphProvider = graphProvider; }
/// <summary> /// Initializes a new instance of a QueryableGraph <T> class, for internal usage /// </summary> private TypedQueryableGraph(IGraphProvider graphProvider, GraphExpression graphExpression, LabelledTreeNode <Type, Term> typeGraph) : base(graphProvider, graphExpression) { TypeGraph = typeGraph; }
public Checkpoint(IGraphProvider graphProvider) { _graphProvider = graphProvider; }
//public MMForm() //{ // InitializeComponent(); // init(); //} public MMForm(IGraphProvider provider) { InitializeComponent(); init(); this.provider = provider; }
/// <summary> /// Returns an instance of a QueryableGraph /// </summary> /// <param name="graphExpression">codifies the query to be executed</param> /// <param name="graphProvider">manages the translation of graph expression to generic graph query result</param> public QueryableGraph(IGraphProvider graphProvider, GraphExpression graphExpression = null) { GraphProvider = graphProvider; GraphExpression = graphExpression ?? GraphExpression.Empty; }
public void Load <T>(IGraphProvider behavior, UnityEngine.Object target) { Load(typeof(T), behavior, target); }
/// <summary> /// Initializes a new instance of the <see cref="SelfEdgeUIElement"/> class. /// </summary> /// <param name="graphProvider">The <see cref="IGraphProvider"/>.</param> /// <param name="edge">The edge.</param> /// <param name="translateTransform">The <see cref="TranslateTransform3D"/> of the visual element representing the node of the edge.</param> public SelfEdgeUIElement(IGraphProvider graphProvider, Edge<NodeData, EdgeData> edge, TranslateTransform3D translateTransform) : base(graphProvider, edge) { this.Transform = translateTransform; }