Example #1
0
        private CameraStatus ConvertToCameraStatus(ASI_EXPOSURE_STATUS asi_EXPOSURE_STATUS)
        {
            switch (asi_EXPOSURE_STATUS)
            {
            case ASI_EXPOSURE_STATUS.ASI_EXP_IDLE:
                return(CameraStatus.Idle);

            case ASI_EXPOSURE_STATUS.ASI_EXP_WORKING:
                return(CameraStatus.Working);

            case ASI_EXPOSURE_STATUS.ASI_EXP_SUCCESS:
                return(CameraStatus.CaptureSuccess);

            case ASI_EXPOSURE_STATUS.ASI_EXP_FAILED:
                return(CameraStatus.Error);

            default:
                return(CameraStatus.Unknown);
            }
        }
Example #2
0
        public Result GetCaputreStat(out CameraStatus captureStatus, bool logSuccessResult = false)
        {
            ASI_ERROR_CODE asi_error_code = ASI_ERROR_CODE.ASI_SUCCESS;
            Exception      exception      = null;
            Result         result;

            ASI_EXPOSURE_STATUS aSI_EXPOSURE_STATUS = ASI_EXPOSURE_STATUS.ASI_EXP_WORKING;

            try
            {
                asi_error_code = ASIGetExpStatus(CameraID, out aSI_EXPOSURE_STATUS);
            }
            catch (Exception e)
            {
                exception = e;
            }
            result = GetOperationResult("ASIGetExpStatus", asi_error_code, exception, logSuccessResult);

            Status        = result.Code == ErrorCode.OK ? ConvertToCameraStatus(aSI_EXPOSURE_STATUS) : CameraStatus.Unknown;
            captureStatus = Status;

            return(result);
        }
 public static ASI_ERROR_CODE ASIGetExpStatus(int iCameraID, out ASI_EXPOSURE_STATUS pExpStatus)
 {
     return(IntPtr.Size == 8 /* 64bit */ ? ASIGetExpStatus64(iCameraID, out pExpStatus) : ASIGetExpStatus32(iCameraID, out pExpStatus));
 }
 private static extern ASI_ERROR_CODE ASIGetExpStatus64(int iCameraID, out ASI_EXPOSURE_STATUS pExpStatus);