/* * Copyright 2016 Nu-book Inc. * Copyright 2016 ZXing authors */ // SPDX-License-Identifier: Apache-2.0 #pragma once #include "PDFBarcodeMetadata.h" #include "PDFBoundingBox.h" #include "PDFDetectionResultColumn.h" #include "ZXNullable.h" #include namespace ZXing { namespace Pdf417 { /** * @author Guenther Grau */ class DetectionResult { BarcodeMetadata _barcodeMetadata; std::vector> _detectionResultColumns; Nullable _boundingBox; public: DetectionResult() = default; DetectionResult(const BarcodeMetadata& barcodeMetadata, const Nullable& boundingBox); void init(const BarcodeMetadata& barcodeMetadata, const Nullable& boundingBox); const std::vector> & allColumns(); int barcodeColumnCount() const { return _barcodeMetadata.columnCount(); } int barcodeRowCount() const { return _barcodeMetadata.rowCount(); } int barcodeECLevel() const { return _barcodeMetadata.errorCorrectionLevel(); } void setBoundingBox(const BoundingBox& boundingBox) { _boundingBox = boundingBox; } const Nullable & getBoundingBox() const { return _boundingBox; } void setBoundingBox(const Nullable& box) { _boundingBox = box; } void setColumn(int barcodeColumn, const Nullable& detectionResultColumn) { _detectionResultColumns[barcodeColumn] = detectionResultColumn; } const Nullable& column(int barcodeColumn) const { return _detectionResultColumns[barcodeColumn]; } Nullable& column(int barcodeColumn) { return _detectionResultColumns[barcodeColumn]; } }; } // Pdf417 } // ZXing