예제 #1
0
        public void Populate(IGraph <IVisual, IVisualEdge> graph)
        {
            var adapter = new VisualThingTransformer().Reverted();
            var mapper  = new GraphMapper <IThing, IVisual, ILink, IVisualEdge>(ThingGraph, graph, adapter);

            mapper.ConvertSinkSource();
        }
예제 #2
0
        public void ProveSample(ISampleGraphFactory <IGraphEntity, IGraphEdge> data)
        {
            data.Count = 10;
            data.Populate();
            this.ReportDetail(data.GetType().FullName + "\t" + data.Count);

            var thingGraph = new ThingGraph();
            var mapper     =
                new GraphMapper <IGraphEntity, IThing, IGraphEdge, ILink>(
                    data.Graph, thingGraph, new GraphEntity2ThingTransformer());

            ProveMapper <IGraphEntity, IThing, IGraphEdge, ILink>(data.Graph, thingGraph, mapper);
        }
예제 #3
0
 private void _LoadGraphToRecognizerManager()
 {
     _graph = GraphMapper.GetGraphNodes();
     _speechManager.SetStartNode(_graph.Where(x => x.Type == NodeType.Start).FirstOrDefault());
     foreach (var node in _graph)
     {
         foreach (var arista in node.Answer)
         {
             arista.Target        = _graph.FirstOrDefault(x => x.Id.Equals(arista.TargetId));
             arista.Target.Parent = node;
             if (node.Type == NodeType.Decision)
             {
                 _speechManager.AddKeywordRecognition(node, arista);
             }
         }
     }
 }
예제 #4
0
        public void ProveMapper <TItemOne, TItemTwo, TEdgeOne, TEdgeTwo>(
            IGraph <TItemOne, TEdgeOne> source, IGraph <TItemTwo, TEdgeTwo> target,
            GraphMapper <TItemOne, TItemTwo, TEdgeOne, TEdgeTwo> mapper)
            where TEdgeOne : IEdge <TItemOne>, TItemOne
            where TEdgeTwo : IEdge <TItemTwo>, TItemTwo
        {
            var testerOne = new MapperTester <TItemOne, TItemTwo, TEdgeOne, TEdgeTwo>();

            mapper.ConvertSinkSource();

            testerOne.ProveConversion(source, target, mapper.Get);

            //mapper.Clear();
            mapper.ConvertSourceSink();
            var testerTwo = new MapperTester <TItemTwo, TItemOne, TEdgeTwo, TEdgeOne>();

            testerTwo.ProveConversion(target, source, mapper.Get);
        }
예제 #5
0
        public virtual void Prove()
        {
            base.AddData();
            var visualGraph = new VisualGraph();
            var mapper      =
                new GraphMapper <IThing, IVisual, ILink, IVisualEdge> (
                    (IThingGraph)this.Graph,
                    visualGraph,
                    new VisualThingTransformer().Reverted());

            //mapper.showMarkers = false;
            mapper.ConvertSinkSource();
            Assert.AreEqual(this.Graph.Count, visualGraph.Count);
            this.Graph.Clear();
            mapper.Clear();
            mapper.ConvertSourceSink();
            this.ReportGraph(this.Graph, "Reread");
            Assert.AreEqual(this.Graph.Count, visualGraph.Count);

            ReportSummary();
        }
예제 #6
0
        public IGraphPair <IGraphEntity, IThing, IGraphEdge, ILink> MakeGraphPair(
            ISampleGraphFactory <IGraphEntity, IGraphEdge> source, ThingGraph target)
        {
            source.Count = 10;
            source.Populate();

            var mapper =
                new GraphMapper <IGraphEntity, IThing, IGraphEdge, ILink>(
                    source.Graph,
                    target,
                    new GraphEntity2ThingTransformer());

            mapper.ConvertSinkSource();

            var graphPair =
                new GraphPair <IGraphEntity, IThing, IGraphEdge, ILink>(
                    new Graph <IGraphEntity, IGraphEdge>(),
                    target,
                    new GraphEntity2ThingTransformer());

            return(graphPair);
        }
예제 #7
0
 public void GivenTheSut()
 {
     Sut = new GraphMapper();
 }
예제 #8
0
        public List <Question> GetAll(string graphPath = "Graph/dialogo ejemplo.graphml")
        {
            var graph = GraphMapper.GetGraphNodes(graphPath);

            return(graph);
        }