using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using bbiwarg.Graphics;
using bbiwarg.InputProviders;

namespace bbiwarg
{
    class MainBBIWARG
    {
        static void Main(string[] args)
        {
            Console.SetWindowSize(Constants.ConsoleWidth, Constants.ConsoleHeight);

            InputProvider inputProvider;
            //inputProvider = new InputProvider(); // camera
            inputProvider = new VideoInputProvider("..\\..\\videos\\touch\\4.skv"); // video
            inputProvider.initialize();
            inputProvider.start();


            InputHandler inputHandler = new InputHandler(inputProvider);

            if (Constants.OutputEnabled)
            {
                OutputWindow outputWindow = new OutputWindow(inputProvider, inputHandler);
                outputWindow.Run(Constants.OutputFrameRate);
            }
            else
                throw new NotImplementedException("non-video mode not supported yet");

            inputProvider.stop();
        }
    }
}
