예제 #1
0
        public async Task <bool> get_results(LinkedList <long> time_p, LinkedList <PointF> point_p, bool golden = true)
        {
            bool ret = false;
            List <TimePointF>       tpf    = new List <TimePointF>();
            LinkedListNode <long>   node_t = time_p.First;
            LinkedListNode <PointF> node_p = point_p.First;

            for (int i = 0; i < time_p.Count; i++)
            {
                tpf.Add(new TimePointF(node_p.Value, node_t.Value));
                node_p = node_p.Next;
                node_t = node_t.Next;
            }
            ResultEventArgs rea = new ResultEventArgs();
            await Task.Run(() =>
            {
                var re_list = r.Recognize(tpf, golden);
                int c       = re_list.Names.Length;
                for (int i = 0; i < c; i++)
                {
                    rea.add_result(re_list[i].Name, re_list[i].Score);
                }
            });

            ResultsCalculatedEvent(this, rea);
            ret = true;
            return(ret);
        }
예제 #2
0
        public bool get_results_sync(List <TimePointF> tpf, bool golden = true)
        {
            bool            ret     = false;
            var             re_list = r.Recognize(tpf, golden);
            int             c       = re_list.Names.Length;
            ResultEventArgs rea     = new ResultEventArgs();

            for (int i = 0; i < c; i++)
            {
                rea.add_result(re_list[i].Name, re_list[i].Score);
            }
            ResultsCalculatedEvent(this, rea);
            ret = true;
            return(ret);
        }