/// <summary>
 /// Reset TouchScreenHidReport and EgsGestureHidReport properties.
 /// </summary>
 public void ResetHidReportObjects()
 {
     if (TouchScreenHidReport == null)
     {
         Debugger.Break();
     }
     if (EgsGestureHidReport == null)
     {
         Debugger.Break();
     }
     TouchScreenHidReport.Reset();
     EgsGestureHidReport.Reset();
     OnHidReportObjectsReset(EventArgs.Empty);
 }
        internal void InitializeOnceAtStartup()
        {
            if (HidReportsUpdate != null)
            {
                HidReportsUpdate.InitializeOnceAtStartup(this);
            }
            TouchScreenHidReport.InitializeOnceAtStartup(this);
            EgsGestureHidReport.InitializeOnceAtStartup(this);

            AddPropertiesToHidAccessPropertyList();
            InitializePropertiesByDefaultValue();

            TemperatureInCelsius.ValueUpdated    += delegate { OnPropertyChanged(nameof(TemperatureInCelsiusString)); };
            TemperatureInFahrenheit.ValueUpdated += delegate { OnPropertyChanged(nameof(TemperatureInFahrenheitString)); };
        }
示例#3
0
        internal void InitializeOnceAtStartup()
        {
            if (HidReportsUpdate != null)
            {
                HidReportsUpdate.InitializeOnceAtStartup(this);
            }
            TouchScreenHidReport.InitializeOnceAtStartup(this);
            EgsGestureHidReport.InitializeOnceAtStartup(this);

            AddPropertiesToHidAccessPropertyList();
            InitializePropertiesByDefaultValue();

            TemperatureInCelsius.ValueUpdated    += delegate { OnPropertyChanged(nameof(TemperatureInCelsiusString)); };
            TemperatureInFahrenheit.ValueUpdated += delegate { OnPropertyChanged(nameof(TemperatureInFahrenheitString)); };

            CameraViewImageSourceBitmapCapture.InitializeOnceAtStartup(this);
            FaceDetectionOnHost.InitializeOnceAtStartup(this);
            // static event
            Microsoft.Win32.SystemEvents.DisplaySettingsChanged += EgsGestureHidReport.OnDisplaySettingsChanged;
        }
        public void SetSettings(EgsDeviceSettings value)
        {
            Trace.Assert(value != null);

            if (_Settings != null)
            {
                _Settings.HidAccessPropertyUpdated -= EgsDeviceSettings_HidAccessPropertyUpdated;
                _Settings.CurrentConnectedEgsDevice = null;
                _Settings = null;
            }
            value.CurrentConnectedEgsDevice = this;
            value.HidAccessPropertyUpdated += EgsDeviceSettings_HidAccessPropertyUpdated;
            _Settings = value;

            // NOTE: When device is connected and then settings is updated, the app sets the settings from host to device.
            if (IsHidDeviceConnected)
            {
                SetAllSettingsToDeviceAndReadStatusFromDevice();
            }
            TouchScreenHidReport.Reset();
            EgsGestureHidReport.Reset();
        }
示例#5
0
        /// <summary>
        /// This method should be called only from EgsDevicesManager.  This updates only connection state of "Camera".
        /// </summary>
        internal void TrySetIsCameraDeviceConnectedToTrue()
        {
            Debug.WriteLine("[EgsDevice] TrySetIsCameraDeviceConnectedToTrue() called.  DateTime.Now = " + DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss.fff", CultureInfo.InvariantCulture));

            // NOTE (en): We confirmed there is time lag, from setting "CameraViewImageSourceBitmapSize" to becoming that the app can get correct values related to the "CameraViewImageSourceBitmapSize".
            // NOTE (ja): PCの機種によっては??カメラの解像度設定から、表示領域の内部状態が更新されてHIDで取得できるようになるまで、タイムラグがあることを確認した!!
            System.Threading.Thread.Sleep(300);

            // The next line updates device.CameraViewImageSourceBitmapCapture.IsCameraDeviceConnected
            CameraViewImageSourceBitmapCapture.SetupCameraDevice();
            CameraViewImageSourceBitmapCapture.UpdateIsUpdatingImageSource();
            // MUSTDO: Check if the application works correctly or not, if the next block is activated.  Currently it works correctly.
            if (true)
            {
                System.Threading.Thread.Sleep(300);
                // NOTE: Just in case, I leave the code to get the value again.
                GetReadonlyHidAccessPropertyByGetHidFeatureReport(Settings.CaptureImageSize);
                System.Threading.Thread.Sleep(100);
                GetReadonlyHidAccessPropertyByGetHidFeatureReport(Settings.CameraViewImageSourceRectInCaptureImage);
                EgsGestureHidReport.UpdateImageSizeRelatedProperties();
            }
        }