Beispiel #1
0
        /// <summary>
        /// Instantiate a new camera with the default or the current settings (not sure), avoid using this one
        /// </summary>
        /// <exception cref="NoCameraDetectedException">Thrown when their is no camera detected</exception>
        public NikonCamera()
        {
            triggerControl = new DOTask(System.Configuration.ConfigurationManager.AppSettings["NikonTrigger"], "NikonTrigger");
            writer         = new DigitalSingleChannelWriter(triggerControl.Stream);

            relayControl = new RelayBoxComponent(System.Configuration.ConfigurationManager.AppSettings["NikonRelay"], "Nikon Power");
            PowerOn();


            deviceManager = new CameraDeviceManager();
            deviceManager.PhotoCaptured      += DeviceManager_PhotoCaptured;
            deviceManager.CameraConnected    += DeviceManager_CameraConnected;
            deviceManager.CameraDisconnected += DeviceManager_CameraDisconnected;
            FolderForPhotos = "FlowVisualization";
            bool ok    = deviceManager.ConnectToCamera();
            int  count = 0;

            while (!ok && count < 10)
            {
                count++;
                Thread.Sleep(500);
                ok = deviceManager.ConnectToCamera();
            }
            if (!ok)
            {
                throw new NoCameraDetectedException {
                          Source = "Nikon"
                };
            }

            deviceManager.SelectedCameraDevice.CaptureInSdRam = true;
        }
Beispiel #2
0
        public CameraControl()
        {
            DeviceManager = new CameraDeviceManager();

            DeviceManager.UseExperimentalDrivers = true;
            DeviceManager.DisableNativeDrivers   = false;

            DeviceManager.CameraSelected     += CameraSelected;
            DeviceManager.CameraConnected    += CameraConnected;
            DeviceManager.CameraDisconnected += CameraDisconnected;

            DeviceManager.ConnectToCamera();
        }
        //private void Mix_Faces_Button_Click(object sender, RoutedEventArgs e)
        //{
        //  StopVideo();
        //  mixFacesWindow.Open();
        //}

        private void StartCamera()
        {
            try
            {
                DeviceManager = new CameraDeviceManager();
                DeviceManager.CloseAll();
                DeviceManager.ConnectToCamera();
                DeviceManager.SelectedCameraDevice = DeviceManager.ConnectedDevices.First();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Vérifier l'appareil photo");
            }
        }
        public CapturePhotoViewModel()
        {
            DeviceManager = new CameraDeviceManager();
            //DeviceManager.CameraSelected += DeviceManager_CameraSelected;
            //DeviceManager.CameraConnected += DeviceManager_CameraConnected;
            //DeviceManager.PhotoCaptured += DeviceManager_PhotoCaptured;
            //DeviceManager.CameraDisconnected += DeviceManager_CameraDisconnected;
            // For experimental Canon driver support- to use canon driver the canon sdk files should be copied in application folder
            DeviceManager.UseExperimentalDrivers = true;
            DeviceManager.DisableNativeDrivers   = false;
            FolderForPhotos = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyPictures), "Test");
            DeviceManager.ConnectToCamera();

            RefreshDisplay();
        }
Beispiel #5
0
        private void DeviceManager_CameraConnected(ICameraDevice cameraDevice)
        {
            bool ok = deviceManager.ConnectToCamera();

            if (!ok)
            {
                throw new NoCameraDetectedException();
            }
            else
            {
                DateTime date = DateTime.Now;
                string   str  = string.Format("{0}-{1:00}-{2:00},{3:00}:{4:00}: Nikon Camera connected",
                                              date.Year,
                                              date.Month,
                                              date.Day, date.Hour, date.Minute);
                using StreamWriter writerL = new StreamWriter("log.txt", true);
                writerL.WriteLine(str);
            }
        }