예제 #1
0
        static void Main(string[] args)
        {
            QhyCcd        camera  = null;
            Mount         mount   = null;
            CameraDisplay display = null;

            while (true)
            {
                Console.Write("> ");
                Console.Out.Flush();
                var cmd = Console.ReadLine().Split((char[])null, StringSplitOptions.RemoveEmptyEntries);
                if (cmd.Length == 0)
                {
                    continue;
                }
                if (cmd[0] == "quit")
                {
                    break;
                }
                try
                {
                    if (camera != null)
                    {
                        ReplCamera(cmd, camera, ref display);
                    }
                    else if (mount != null)
                    {
                        ReplMount(cmd, mount).Wait();
                    }
                    else
                    {
                        ReplMain(cmd, ref camera, ref mount);
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine($"Error processing command - {e.GetType().FullName}: {e.Message}");
                    Console.WriteLine(e.ToString());
                }
            }
            camera?.Dispose();
        }