Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            var           usage     = @"
    Usage: Launch a local instance of Caffe Host service.\n\
    Command line arguments: \n\
        -gateway     SERVERURI       ServerUri\n\
        -evalconfig  ConfigFile      path to config file specifying measurment data and settings\n\
        -log         LogFile         Path to log file\n\
";
            List <string> args_list = args.ToList();

            args_list.Add("-con");
            args = args_list.ToArray();
            var parse          = new ArgumentParser(args);
            var usePort        = VHubSetting.RegisterServicePort;
            var gatewayServers = parse.ParseStrings("-gateway", new string[] { "vm-hub.trafficmanager.net" });
            var serviceName    = "EvaluationServerService";

            var configFile  = parse.ParseString("-evalconfig", "");
            var evalSetting = new EvaluationSetting(configFile);

            var bAllParsed = parse.AllParsed(usage);

            // prepare parameters for registering this recognition instance to vHub gateway
            var startParam = new VHubBackendStartParam();

            /// Add traffic manager gateway, see http://azure.microsoft.com/en-us/services/traffic-manager/,
            /// Gateway that is added as traffic manager will be repeatedly resovled via DNS resolve
            foreach (var gatewayServer in gatewayServers)
            {
                if (!(StringTools.IsNullOrEmpty(gatewayServer)))
                {
                    startParam.AddOneTrafficManager(gatewayServer, usePort);
                }
            }
            ;

            // start a local instance.
            Console.WriteLine("Local instance started and registered to {0}", gatewayServers[0]);
            Console.WriteLine("Current working directory: {0}", Directory.GetCurrentDirectory());
            Console.WriteLine("Press ENTER to exit");
            RemoteInstance.StartLocal(serviceName, startParam,
                                      () => new EvaluationServerInstance(gatewayServers[0], configFile, evalSetting));
            while (RemoteInstance.IsRunningLocal(serviceName))
            {
                if (Console.KeyAvailable)
                {
                    var cki = Console.ReadKey(true);
                    if (cki.Key == ConsoleKey.Enter)
                    {
                        Console.WriteLine("ENTER pressed, exiting...");
                        RemoteInstance.StopLocal(serviceName);
                    }
                    else
                    {
                        System.Threading.Thread.Sleep(10);
                    }
                }
            }
        }
Ejemplo n.º 2
0
        public EvaluationServerInstance(string gateWay, string configFile, EvaluationSetting evalSetting) :
            /// Fill in your recognizing engine name here
            base(providerName)
        {
            /// CSharp does support closure, so we have to pass the recognizing instance somewhere,
            /// We use a static variable for this example. But be aware that this method of variable passing will hold a reference to SampleRecogInstanceCSharp

            EvaluationServerInstance.Current = this;
            Func <VHubBackendStartParam, bool> del = InitializeRecognizer;

            this.OnStartBackEnd.Add(del);

            EvaluationServerInstance.gateWay     = gateWay;
            EvaluationServerInstance.evalSetting = evalSetting;

            EvaluationServerInstance.domainName = evalSetting.config["service_name"];
        }
Ejemplo n.º 3
0
 public Evaluator(string gateWay, string serviceGuid, EvaluationSetting evalSetting)
 {
     this.gateWay     = gateWay;
     this.serviceGuid = serviceGuid;
     this.evalSetting = evalSetting;
 }