Example #1
0
        public STAApplicationContext()
        {
            SetupServer();

            if (!featureToggles[isDeviceMockedKey])
            {
                var touchOverlay = (new TouchOverlay()).AddToDisposeBag(_disposeBag);
                _deviceController   = (IDeviceController)touchOverlay;
                _touchInputProvider = (IInputProvider)touchOverlay;
            }
            else
            {
                var deviceMock = (new DeviceMock()).AddToDisposeBag(_disposeBag);
                _deviceController   = (IDeviceController)deviceMock;
                _touchInputProvider = (IInputProvider)deviceMock;
            }

            if (featureToggles[inputLoggingKey])
            {
                _inputSerializer = (new InputSerializer(_touchInputProvider))
                                   .AddToDisposeBag(_disposeBag);

                _inputLogger = (new InputLogger(_touchInputProvider))
                               .AddToDisposeBag(_disposeBag);
            }

            _tuioInputProvider = (new TuioObjectController(_touchInputProvider, _tangibleMarkerController))
                                 .AddToDisposeBag(_disposeBag);

            _tuioServer = (new TuioServer(_tuioInputProvider))
                          .AddToDisposeBag(_disposeBag);

            _menuViewController = (new MenuViewController(_deviceController))
                                  .AddToDisposeBag(_disposeBag);

            _deviceController.Init();
            _deviceController.Start();
        }