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); } } } }
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"]; }
public Evaluator(string gateWay, string serviceGuid, EvaluationSetting evalSetting) { this.gateWay = gateWay; this.serviceGuid = serviceGuid; this.evalSetting = evalSetting; }