override protected void Close()
 {
     if (FCamera != null)
     {
         FCamera.Stop();
         FCamera = null;
     }
 }
示例#2
0
 public override void Close()
 {
     if (FCamera != null)
     {
         FCamera.Stop();
         FCamera = null;
     }
 }
示例#3
0
        public bool Start()
        {
            Device.Create(CLEyeCameraDevice.CameraUUID(_camera.TrackerId));
            Device.AutoExposure     = true;
            Device.AutoGain         = true;
            Device.AutoWhiteBalance = true;
            Device.Start();

            ConsoleService.Write(string.Format("[Camera, {0}] Started", _camera.GUID));
            ConsoleService.Write(string.Format("[Camera, {0}] Resolution={1}, ColorMode={2}", _camera.GUID, Device.Resolution, Device.ColorMode));

            return(Enabled = true);
        }
示例#4
0
        public void Initialize(CameraModel camera)
        {
            _camera             = camera;
            Device              = new CLEyeCameraDevice();
            Device.BitmapReady += Device_BitmapReady;
            Device.Resolution   = CLEyeCameraResolution.CLEYE_VGA;
            Device.ColorMode    = CLEyeCameraColorMode.CLEYE_COLOR_RAW;
            //CLEYE_QVGA - 15, 30, 60, 75, 100, 125
            //CLEYE_VGA - 15, 30, 40, 50, 60, 75
            Device.Framerate = 60;
            _camera.GUID     = CLEyeCameraDevice.CameraUUID(_camera.TrackerId).ToString();

            ConsoleService.Write(string.Format("[Camera, {0}] Initialized", _camera.GUID));
        }
示例#5
0
        void FillList()
        {
            try
            {
                int nCams = CLEyeCameraDevice.CLEyeGetCameraCount();
                FDevices.SliceCount = nCams;

                for (int i = 0; i < nCams; i++)
                {
                    FDevices[i] = CLEyeCameraDevice.CLEyeGetCameraUUID(i).ToString();
                }
                FStatus[0] = "OK";
            }
            catch (Exception e)
            {
                FStatus[0] = e.Message;
            }
        }
示例#6
0
        ///////////////////////////////////////////////////////////////////////////////
        // Public methods                                                            //
        ///////////////////////////////////////////////////////////////////////////////
        #region PUBLICMETHODS
        #endregion //PUBLICMETHODS

        ///////////////////////////////////////////////////////////////////////////////
        // Inherited methods                                                         //
        ///////////////////////////////////////////////////////////////////////////////
        #region OVERRIDES

        /// <summary>
        /// Overridden. Initializes the first found connected
        /// PlayStation3 camera as an input device for
        /// the ITU GazeTracker.
        /// </summary>
        public override void InitCamera()
        {
            // Query for number of connected cameras
            int numCameras = CLEyeCameraDevice.CameraCount;

            if (numCameras == 0)
            {
                MessageBox.Show("Could not find any PS3Eye cameras!");
                return;
            }

            // Create cameras, set some parameters and start capture
            if (numCameras >= 1)
            {
                this.playStationEyeCamera            = new CLEyeCameraDevice();
                this.playStationEyeCamera.Framerate  = 30;
                this.playStationEyeCamera.Resolution = CLEyeCameraResolution.CLEYE_VGA;
                this.playStationEyeCamera.ColorMode  = CLEyeCameraColorMode.CLEYE_GRAYSCALE;
                this.playStationEyeCamera.Create(CLEyeCameraDevice.CameraUUID(0));
                this.playStationEyeCamera.FrameCaptureComplete +=
                    new CLEyeCameraDevice.FrameCapHandler(this.PlayStationEyeCamera_FrameCaptureComplete);

                GTSettings.Current.Camera.ZoomDefault       = this.playStationEyeCamera.Zoom;
                GTSettings.Current.Camera.ZoomMinimum       = -500;
                GTSettings.Current.Camera.ZoomMaximum       = 500;
                GTSettings.Current.Camera.FocusAuto         = this.playStationEyeCamera.AutoGain;
                GTSettings.Current.Camera.ExposureAuto      = this.playStationEyeCamera.AutoExposure;
                GTSettings.Current.Camera.ExposureDefault   = this.playStationEyeCamera.Exposure;
                GTSettings.Current.Camera.ExposureMinimum   = -500;
                GTSettings.Current.Camera.ExposureMaximum   = 500;
                GTSettings.Current.Camera.FocusDefault      = this.playStationEyeCamera.Gain;
                GTSettings.Current.Camera.FocusMinimum      = 0;
                GTSettings.Current.Camera.FocusMaximum      = 75;
                GTSettings.Current.Camera.BrightnessDefault = this.playStationEyeCamera.LensBrightness;
                GTSettings.Current.Camera.BrightnessMinimum = -500;
                GTSettings.Current.Camera.BrightnessMaximum = 500;
            }
        }
示例#7
0
        public override bool Open()
        {
            try
            {
                if (FDevice == new Guid())
                {
                    FDevice = CLEyeCameraDevice.CLEyeGetCameraUUID(0);
                }
                FCamera = new CLEyeCameraDevice(FResolution, FColorMode, FFps);
                FCamera.Start(FDevice);
                FOutput.Image.Initialise(GetSize(FResolution), GetColor(FColorMode));

                FCamera.setLED(FLED);
                FParameterChange = true;

                Status = "OK";
                return(true);
            }
            catch (Exception e)
            {
                Status = e.Message;
                return(false);
            }
        }
示例#8
0
        public int GetConnectedCount()
        {
            ConsoleService.Write("Camera Count: " + CLEyeCameraDevice.CLEyeGetCameraCount());

            return(CLEyeCameraDevice.CLEyeGetCameraCount());
        }