public CameraControl(int cameraId, int controlIndex) { _cameraId = cameraId; ASICameraDll2.ASIGetControlCaps(_cameraId, controlIndex, out _props); //_auto = GetAutoSetting(); }
public void CloseCamera() { _info = null; _controls = null; ASICameraDll2.ASICloseCamera(_cameraId); _status = ASI_STATUS.CLOSED; }
public object Init(object id) { ASICameraDll2.ASIInitCamera(_nameIdDictionary[(string)id]); ASICameraDll2.ASIOpenCamera(_nameIdDictionary[(string)id]); ASICameraDll2.ASISetStartPos(0, 0, 0); throw new NotImplementedException(); }
public void OpenCamera() { ASICameraDll2.ASIOpenCamera(_cameraId); ASICameraDll2.ASI_CAMERA_INFO ci; ASICameraDll2.ASIGetCameraProperty(out ci, _cameraId); _info = ci; ASICameraDll2.ASIInitCamera(_cameraId); _status = ASI_STATUS.OPENED; }
public bool GetExposureData(IntPtr buffer, int bufferSize) { var v = ASICameraDll2.ASIGetDataAfterExp(_cameraId, buffer, bufferSize); if (v == ASICameraDll2.ASI_ERROR_CODE.ASI_SUCCESS) { return(true); } else { return(false); } }
public bool GetVideoData(IntPtr buffer, int bufferSize, int waitMs) { var v = ASICameraDll2.ASIGetVideoData(_cameraId, buffer, bufferSize, waitMs); if (v == ASICameraDll2.ASI_ERROR_CODE.ASI_SUCCESS) { return(true); } else { return(false); } }
public static Camera GetCameraByIndex(int cameraIndex) { if (cameraIndex >= Count || cameraIndex < 0) { throw new IndexOutOfRangeException(); } ASICameraDll2.ASI_CAMERA_INFO infoTemp; ASICameraDll2.ASIGetCameraProperty(out infoTemp, cameraIndex); int cameraId = infoTemp.CameraID; return(_cameras[cameraId] ?? (_cameras[cameraId] = new Camera(cameraId))); }
public List <string> SearchDevices() { _nameIdDictionary = new Dictionary <string, int>(); int number = ASICameraDll2.ASIGetNumOfConnectedCameras(); List <string> ret = new List <string>(); for (int i = 0; i < number; i++) { ASICameraDll2.ASIGetCameraProperty(out ASICameraDll2.ASI_CAMERA_INFO cameraInfo, i); string name = cameraInfo.Name + " - " + cameraInfo.CameraID; ret.Add(name); _nameIdDictionary.Add(name, cameraInfo.CameraID); } return(ret); }
public void StopExposure() { ASICameraDll2.ASIStopExposure(_cameraId); }
public void StartExposure(ASICameraDll2.ASI_BOOL isDark) { ASICameraDll2.ASIStartExposure(_cameraId, isDark); _status = ASI_STATUS.EXPOSURING; }
public void PulseGuideOff(ASICameraDll2.ASI_GUIDE_DIRECTION direction) { ASICameraDll2.ASIPulseGuideOff(_cameraId, direction); }
public void StopVideoCapture() { ASICameraDll2.ASIStopVideoCapture(_cameraId); _status = ASI_STATUS.OPENED; }
//public int DroppedFrames //{ // get { return ASICameraDll2.GetDroppedFrames(_cameraId); } //} //public bool EnableDarkSubtract(string darkImageFilePath) //{ // return ASICameraDll2.EnableDarkSubtract(_cameraId, darkImageFilePath); //} //public void DisableDarkSubtract() //{ // ASICameraDll.DisableDarkSubtract(_cameraId); //} public void StartVideoCapture() { ASICameraDll2.ASIStartVideoCapture(_cameraId); _status = ASI_STATUS.EXPOSURING; }
public void Stop() { _thread.Abort(); ASICameraDll2.ASIStopExposure(0); ASICameraDll2.ASICloseCamera(0); }