import {type DetectedQuadResultItem, type DeskewedImageResultItem} from "../ddn"; import {CaptureVisionRouter} from "../cvr"; import {MultiFrameResultCrossFilter} from "../utility"; /** * CrossVerificationStatus describes the status of the captured results. *
Code Snippet:
* * ``` * let router = CaptureVisionRouter.getInstance() * let filter = new MultiFrameResultCrossFilter() * filter.enableResultCrossVerification(EnumCapturedResultItemType.CRIT_DETECTED_QUAD, true) * router.addFilter(filter) * * router.addResultReceiver({ * onProcessedDocumentResultReceived: result => { * if(result.detectedQuadResultItems && result.detectedQuadResultItems.length > 0) { * //Because result cross verification of DETECT_QUAD is enabled, * //crossVerificationStatus of item will be CVS_PASSED or CVS_FAILED. * let crossVerificationStatus = result.detectedQuadResultItems[0].crossVerificationStatus * } * }, * }) * //... * router.startCapturing(EnumPresetTemplate.PT_DETECT_DOCUMENT_BOUNDARIES) * ``` * * @remarks If {@link CaptureVisionRouter} doesn't add {@link MultiFrameResultCrossFilter} via {@link CaptureVisionRouter.addFilter} * or added {@link MultiFrameResultCrossFilter} doesn't enable verification for the corresponding type, * the crossVerificationStatus property of the item for that type will always remain {@link CVS_NOT_VERIFIED}. ** Currently, only {@link DetectedQuadResultItem} and {@link DeskewedImageResultItem} have the crossVerificationStatus property. * * @see {@link MultiFrameResultCrossFilter.enableResultCrossVerification} * @see {@link DetectedQuadResultItem.crossVerificationStatus} * @see {@link DeskewedImageResultItem.crossVerificationStatus} * */ export enum EnumCrossVerificationStatus { /** The cross verification has not been performed yet. */ CVS_NOT_VERIFIED = 0, /** The cross verification has been passed successfully. */ CVS_PASSED = 1, /** The cross verification has failed. */ CVS_FAILED = 2 }