コード例 #1
0
ファイル: Camera.cs プロジェクト: wade0930/ChangerTechnology
        public bool Open(Form1 form)
        {
            form1 = form;

            CameraCount = StCamera.OpenCameraList(app.MaxCameraCount, ahCameras, aCameraID, astrCameraName);
            if (CameraCount == 0)
            {
                //CameraCount = Enumerator.EnumerateDevices().Count;
                if (CameraCount == 0)
                {
                    return(false);
                }
                else
                {
                    SelectCameraCompany = 1;
                }

                for (int i = 0; i < app.MaxCameraCount; i++)
                {
                    selectDevHandle[i] = -1;
                }
            }

            AddrLink();
            return(true);
        }
コード例 #2
0
        public void Setting(byte Mode)         //Mode 0:Live 1:Hard 2:Soft
        {
            for (byte i = 0; i < app.MaxCameraCount; i++)
            {
                if (SelectCameraCompany == 0 && selectCameraHandle[i] != (IntPtr)0)
                {
                    m_Camera[i] = new StCamera(selectCameraHandle[i]);
                    m_Camera[i].StopTransfer();

                    if (Mode == 0)
                    {
                        m_Camera[i].TriggerMode = StTrg.STCAM_TRIGGER_MODE_OFF;
                    }
                    else if (Mode == 1)
                    {
                        m_Camera[i].TriggerMode      = StTrg.STCAM_TRIGGER_MODE_ON;
                        m_Camera[i].TriggerSource    = StTrg.STCAM_TRIGGER_SOURCE_HARDWARE;
                        m_Camera[i].IOPinMode[0]     = 16;
                        m_Camera[i].IOPinPolarity[0] = 0;
                    }
                    else if (Mode == 2)
                    {
                        m_Camera[i].TriggerMode   = StTrg.STCAM_TRIGGER_MODE_ON;
                        m_Camera[i].TriggerSource = StTrg.STCAM_TRIGGER_SOURCE_SOFTWARE;
                    }
                    //m_Camera[i].ExposureClock = (uint)CherngerUI.Properties.Settings.Default.ExposureClock;
                    //m_Camera[i].Gain = (ushort)CherngerUI.Properties.Settings.Default.Gain;
                    m_Camera[i].SetDisplayImageCallback(new StCamera.DisplayImageCallback(Receiver));

                    m_Camera[i].StopTransfer();
                }
            }
        }
コード例 #3
0
ファイル: Camera.cs プロジェクト: wade0930/ChangerTechnology
        public void Setting(byte Mode) //Mode 0:Live 1:Hard 2:Soft
        {
            for (byte i = 0; i < app.MaxCameraCount; i++)
            {
                if (SelectCameraCompany == 0 && selectCameraHandle[i] != (IntPtr)0)
                {
                    m_Camera[i] = new StCamera(selectCameraHandle[i]);
                    m_Camera[i].StopTransfer();

                    if (Mode == 0)
                    {
                        m_Camera[i].TriggerMode = StTrg.STCAM_TRIGGER_MODE_OFF;
                    }
                    else if (Mode == 1)
                    {
                        m_Camera[i].TriggerMode      = StTrg.STCAM_TRIGGER_MODE_ON;
                        m_Camera[i].TriggerSource    = StTrg.STCAM_TRIGGER_SOURCE_HARDWARE;
                        m_Camera[i].IOPinMode[0]     = 16;
                        m_Camera[i].IOPinPolarity[0] = 0;
                    }
                    else if (Mode == 2)
                    {
                        m_Camera[i].TriggerMode   = StTrg.STCAM_TRIGGER_MODE_ON;
                        m_Camera[i].TriggerSource = StTrg.STCAM_TRIGGER_SOURCE_SOFTWARE;
                    }

                    m_Camera[i].SetDisplayImageCallback(new StCamera.DisplayImageCallback(Receiver));
                    m_Camera[i].StopTransfer();
                }
                else if (SelectCameraCompany == 1 && selectDevHandle[i] != -1)
                {
                    m_dev[i].Open();

                    if (Mode == 0)
                    {
                        m_dev[i].TriggerSet.Close();
                    }
                    else if (Mode == 1)
                    {
                        m_dev[i].TriggerSet.Open(TriggerSourceEnum.Line2);
                    }
                    else if (Mode == 2)
                    {
                        m_dev[i].TriggerSet.Open(TriggerSourceEnum.Software);
                    }

                    using (IEnumParameter p = m_dev[i].ParameterCollection[ParametrizeNameSet.ImagePixelFormat])
                    {
                        p.SetValue("Mono8");
                    }

                    m_dev[i].StreamGrabber.SetBufferCount(8);
                    if (m_dev[i].StreamGrabber != null)
                    {
                        m_dev[i].StreamGrabber.ImageGrabbed += Receiver;
                    }
                }
            }
        }