public CameraControl(int cameraId, int controlIndex) { _cameraId = cameraId; _props = ASICameraDll.GetControlCaps(_cameraId, controlIndex); _auto = GetAutoSetting(); }
private bool GetAutoSetting() { bool isAuto; ASICameraDll.GetControlValue(_cameraId, _props.ControlType, out isAuto); return(isAuto); }
public void CloseCamera() { _info = null; _controls = null; ASICameraDll.CloseCamera(_cameraId); _status = ASI_STATUS.CLOSED; }
public void OpenCamera() { ASICameraDll.OpenCamera(_cameraId); _info = ASICameraDll.GetCameraProperties(_cameraId); ASICameraDll.InitCamera(_cameraId); _status = ASI_STATUS.OPENED; }
public static Camera GetCameraByIndex(int cameraIndex) { if (cameraIndex >= Count || cameraIndex < 0) { throw new IndexOutOfRangeException(); } ASICameraDll.ASI_CAMERA_INFO infoTemp = ASICameraDll.GetCameraProperties(cameraIndex); int cameraId = infoTemp.CameraID; return(_cameras[cameraId] ?? (_cameras[cameraId] = new Camera(cameraId))); }
public bool GetExposureData(IntPtr buffer, int bufferSize) { return(ASICameraDll.GetDataAfterExp(_cameraId, buffer, bufferSize)); }
public void StopExposure() { ASICameraDll.StopExposure(_cameraId); }
public void StartExposure(int exposureMs, bool isDark) { ASICameraDll.StartExposure(_cameraId, exposureMs, isDark); _status = ASI_STATUS.EXPOSURING; }
public void PulseGuideOff(ASICameraDll.ASI_GUIDE_DIRECTION direction) { ASICameraDll.PulseGuideOff(_cameraId, direction); }
public bool GetVideoData(IntPtr buffer, int bufferSize, int waitMs) { return(ASICameraDll.GetVideoData(_cameraId, buffer, bufferSize, waitMs)); }
public void StopVideoCapture() { ASICameraDll.StopVideoCapture(_cameraId); _status = ASI_STATUS.OPENED; }
public void StartVideoCapture() { ASICameraDll.StartVideoCapture(_cameraId); _status = ASI_STATUS.EXPOSURING; }
public void DisableDarkSubtract() { ASICameraDll.DisableDarkSubtract(_cameraId); }
public bool EnableDarkSubtract(string darkImageFilePath) { return(ASICameraDll.EnableDarkSubtract(_cameraId, darkImageFilePath)); }
private void RefreshCameraInfoCache() { using (MyStopWatch.Measure()) { _info = ASICameraDll.GetCameraProperties(_cameraId); } }