zxing-cpp v3.0
Loading...
Searching...
No Matches
ZXing::ReaderOptions Class Reference

#include <ReaderOptions.h>

Public Member Functions

 ReaderOptions ()
 ~ReaderOptions ()
 ReaderOptions (const ReaderOptions &)
ReaderOptionsoperator= (const ReaderOptions &)
 ReaderOptions (ReaderOptions &&) noexcept
ReaderOptionsoperator= (ReaderOptions &&) noexcept
const BarcodeFormatsformats () const noexcept
ReaderOptionsformats (BarcodeFormats &&v) &
ReaderOptions && formats (BarcodeFormats &&v) &&
ReaderOptionsformats (const BarcodeFormats &v) &
ReaderOptions && formats (const BarcodeFormats &v) &&
ReaderOptionssetFormats (BarcodeFormats &&v) &
ReaderOptions && setFormats (BarcodeFormats &&v) &&
ReaderOptionssetFormats (const BarcodeFormats &v) &
ReaderOptions && setFormats (const BarcodeFormats &v) &&
bool tryHarder () const noexcept
ReaderOptionstryHarder (bool v) &
ReaderOptions && tryHarder (bool v) &&
ReaderOptionssetTryHarder (bool v) &
ReaderOptions && setTryHarder (bool v) &&
bool tryRotate () const noexcept
ReaderOptionstryRotate (bool v) &
ReaderOptions && tryRotate (bool v) &&
ReaderOptionssetTryRotate (bool v) &
ReaderOptions && setTryRotate (bool v) &&
bool tryInvert () const noexcept
ReaderOptionstryInvert (bool v) &
ReaderOptions && tryInvert (bool v) &&
ReaderOptionssetTryInvert (bool v) &
ReaderOptions && setTryInvert (bool v) &&
bool tryDownscale () const noexcept
ReaderOptionstryDownscale (bool v) &
ReaderOptions && tryDownscale (bool v) &&
ReaderOptionssetTryDownscale (bool v) &
ReaderOptions && setTryDownscale (bool v) &&
Binarizer binarizer () const noexcept
ReaderOptionsbinarizer (Binarizer v) &
ReaderOptions && binarizer (Binarizer v) &&
ReaderOptionssetBinarizer (Binarizer v) &
ReaderOptions && setBinarizer (Binarizer v) &&
bool isPure () const noexcept
ReaderOptionsisPure (bool v) &
ReaderOptions && isPure (bool v) &&
ReaderOptionssetIsPure (bool v) &
ReaderOptions && setIsPure (bool v) &&
uint16_t downscaleThreshold () const noexcept
ReaderOptionsdownscaleThreshold (uint16_t v) &
ReaderOptions && downscaleThreshold (uint16_t v) &&
ReaderOptionssetDownscaleThreshold (uint16_t v) &
ReaderOptions && setDownscaleThreshold (uint16_t v) &&
uint8_t downscaleFactor () const noexcept
ReaderOptionsdownscaleFactor (uint8_t v) &
ReaderOptions && downscaleFactor (uint8_t v) &&
ReaderOptionssetDownscaleFactor (uint8_t v) &
ReaderOptions && setDownscaleFactor (uint8_t v) &&
uint8_t minLineCount () const noexcept
ReaderOptionsminLineCount (uint8_t v) &
ReaderOptions && minLineCount (uint8_t v) &&
ReaderOptionssetMinLineCount (uint8_t v) &
ReaderOptions && setMinLineCount (uint8_t v) &&
uint8_t maxNumberOfSymbols () const noexcept
ReaderOptionsmaxNumberOfSymbols (uint8_t v) &
ReaderOptions && maxNumberOfSymbols (uint8_t v) &&
ReaderOptionssetMaxNumberOfSymbols (uint8_t v) &
ReaderOptions && setMaxNumberOfSymbols (uint8_t v) &&
bool validateOptionalChecksum () const noexcept
ReaderOptionsvalidateOptionalChecksum (bool v) &
ReaderOptions && validateOptionalChecksum (bool v) &&
ReaderOptionssetValidateOptionalChecksum (bool v) &
ReaderOptions && setValidateOptionalChecksum (bool v) &&
bool returnErrors () const noexcept
ReaderOptionsreturnErrors (bool v) &
ReaderOptions && returnErrors (bool v) &&
ReaderOptionssetReturnErrors (bool v) &
ReaderOptions && setReturnErrors (bool v) &&
EanAddOnSymbol eanAddOnSymbol () const noexcept
ReaderOptionseanAddOnSymbol (EanAddOnSymbol v) &
ReaderOptions && eanAddOnSymbol (EanAddOnSymbol v) &&
ReaderOptionssetEanAddOnSymbol (EanAddOnSymbol v) &
ReaderOptions && setEanAddOnSymbol (EanAddOnSymbol v) &&
TextMode textMode () const noexcept
ReaderOptionstextMode (TextMode v) &
ReaderOptions && textMode (TextMode v) &&
ReaderOptionssetTextMode (TextMode v) &
ReaderOptions && setTextMode (TextMode v) &&
CharacterSet characterSet () const noexcept
ReaderOptionscharacterSet (CharacterSet v) &
ReaderOptions && characterSet (CharacterSet v) &&
ReaderOptionssetCharacterSet (CharacterSet v) &
ReaderOptions && setCharacterSet (CharacterSet v) &&
ReaderOptionscharacterSet (std::string_view v) &
ReaderOptions && characterSet (std::string_view v) &&
ReaderOptionssetCharacterSet (std::string_view v) &
ReaderOptions && setCharacterSet (std::string_view v) &&

Detailed Description

Configuration options for barcode reading and decoding behavior.

ReaderOptions encapsulates a set of flags and parameters that control how barcode detection and decoding is performed. It provides fluent setters that support chaining. Both name(val) and setName(val) forms are available for convenience and compatibility.

The class is intended to be passed to the ReadBarcodes function to influence scanning heuristics, performance vs. accuracy trade-offs, output formatting, and symbol filtering. Instances can be reused across multiple read operations.

The default settings are optimized for detection rate and can be tuned for speed or specific use-cases.

See also
BarcodeFormats, Binarizer, TextMode, CharacterSet, ReadBarcodes

Constructor & Destructor Documentation

◆ ReaderOptions() [1/3]

ZXing::ReaderOptions::ReaderOptions ( )

◆ ~ReaderOptions()

ZXing::ReaderOptions::~ReaderOptions ( )

◆ ReaderOptions() [2/3]

ZXing::ReaderOptions::ReaderOptions ( const ReaderOptions & )

◆ ReaderOptions() [3/3]

ZXing::ReaderOptions::ReaderOptions ( ReaderOptions && )
noexcept

Member Function Documentation

◆ operator=() [1/2]

ReaderOptions & ZXing::ReaderOptions::operator= ( const ReaderOptions & )

◆ operator=() [2/2]

ReaderOptions & ZXing::ReaderOptions::operator= ( ReaderOptions && )
noexcept

◆ formats() [1/5]

const BarcodeFormats & ZXing::ReaderOptions::formats ( ) const
noexcept

Specify a set of BarcodeFormats that should be searched for, the default is all supported formats.

◆ formats() [2/5]

ReaderOptions & ZXing::ReaderOptions::formats ( BarcodeFormats && v) &

◆ formats() [3/5]

ReaderOptions && ZXing::ReaderOptions::formats ( BarcodeFormats && v) &&

◆ formats() [4/5]

ReaderOptions & ZXing::ReaderOptions::formats ( const BarcodeFormats & v) &
inline

◆ formats() [5/5]

ReaderOptions && ZXing::ReaderOptions::formats ( const BarcodeFormats & v) &&
inline

◆ setFormats() [1/4]

ReaderOptions & ZXing::ReaderOptions::setFormats ( BarcodeFormats && v) &
inline

◆ setFormats() [2/4]

ReaderOptions && ZXing::ReaderOptions::setFormats ( BarcodeFormats && v) &&
inline

◆ setFormats() [3/4]

ReaderOptions & ZXing::ReaderOptions::setFormats ( const BarcodeFormats & v) &
inline

◆ setFormats() [4/4]

ReaderOptions && ZXing::ReaderOptions::setFormats ( const BarcodeFormats & v) &&
inline

◆ tryHarder() [1/3]

bool ZXing::ReaderOptions::tryHarder ( ) const
noexcept

Spend more time to try to find a barcode; optimize for accuracy, not speed.

◆ tryHarder() [2/3]

ReaderOptions & ZXing::ReaderOptions::tryHarder ( bool v) &

◆ tryHarder() [3/3]

ReaderOptions && ZXing::ReaderOptions::tryHarder ( bool v) &&

◆ setTryHarder() [1/2]

ReaderOptions & ZXing::ReaderOptions::setTryHarder ( bool v) &
inline

◆ setTryHarder() [2/2]

ReaderOptions && ZXing::ReaderOptions::setTryHarder ( bool v) &&
inline

◆ tryRotate() [1/3]

bool ZXing::ReaderOptions::tryRotate ( ) const
noexcept

Also try detecting code in 90, 180 and 270 degree rotated images.

◆ tryRotate() [2/3]

ReaderOptions & ZXing::ReaderOptions::tryRotate ( bool v) &

◆ tryRotate() [3/3]

ReaderOptions && ZXing::ReaderOptions::tryRotate ( bool v) &&

◆ setTryRotate() [1/2]

ReaderOptions & ZXing::ReaderOptions::setTryRotate ( bool v) &
inline

◆ setTryRotate() [2/2]

ReaderOptions && ZXing::ReaderOptions::setTryRotate ( bool v) &&
inline

◆ tryInvert() [1/3]

bool ZXing::ReaderOptions::tryInvert ( ) const
noexcept

Also try detecting inverted ("reversed reflectance") codes if the format allows for those.

◆ tryInvert() [2/3]

ReaderOptions & ZXing::ReaderOptions::tryInvert ( bool v) &

◆ tryInvert() [3/3]

ReaderOptions && ZXing::ReaderOptions::tryInvert ( bool v) &&

◆ setTryInvert() [1/2]

ReaderOptions & ZXing::ReaderOptions::setTryInvert ( bool v) &
inline

◆ setTryInvert() [2/2]

ReaderOptions && ZXing::ReaderOptions::setTryInvert ( bool v) &&
inline

◆ tryDownscale() [1/3]

bool ZXing::ReaderOptions::tryDownscale ( ) const
noexcept

Also try detecting code in downscaled images (depending on image size).

◆ tryDownscale() [2/3]

ReaderOptions & ZXing::ReaderOptions::tryDownscale ( bool v) &

◆ tryDownscale() [3/3]

ReaderOptions && ZXing::ReaderOptions::tryDownscale ( bool v) &&

◆ setTryDownscale() [1/2]

ReaderOptions & ZXing::ReaderOptions::setTryDownscale ( bool v) &
inline

◆ setTryDownscale() [2/2]

ReaderOptions && ZXing::ReaderOptions::setTryDownscale ( bool v) &&
inline

◆ binarizer() [1/3]

Binarizer ZXing::ReaderOptions::binarizer ( ) const
noexcept

Binarizer to use internally when using the ReadBarcode function.

◆ binarizer() [2/3]

ReaderOptions & ZXing::ReaderOptions::binarizer ( Binarizer v) &

◆ binarizer() [3/3]

ReaderOptions && ZXing::ReaderOptions::binarizer ( Binarizer v) &&

◆ setBinarizer() [1/2]

ReaderOptions & ZXing::ReaderOptions::setBinarizer ( Binarizer v) &
inline

◆ setBinarizer() [2/2]

ReaderOptions && ZXing::ReaderOptions::setBinarizer ( Binarizer v) &&
inline

◆ isPure() [1/3]

bool ZXing::ReaderOptions::isPure ( ) const
noexcept

Set to true if the input contains nothing but a single perfectly aligned barcode (generated image).

◆ isPure() [2/3]

ReaderOptions & ZXing::ReaderOptions::isPure ( bool v) &

◆ isPure() [3/3]

ReaderOptions && ZXing::ReaderOptions::isPure ( bool v) &&

◆ setIsPure() [1/2]

ReaderOptions & ZXing::ReaderOptions::setIsPure ( bool v) &
inline

◆ setIsPure() [2/2]

ReaderOptions && ZXing::ReaderOptions::setIsPure ( bool v) &&
inline

◆ downscaleThreshold() [1/3]

uint16_t ZXing::ReaderOptions::downscaleThreshold ( ) const
noexcept

Image size ( min(width, height) ) threshold at which to start downscaled scanning.

◆ downscaleThreshold() [2/3]

ReaderOptions & ZXing::ReaderOptions::downscaleThreshold ( uint16_t v) &

◆ downscaleThreshold() [3/3]

ReaderOptions && ZXing::ReaderOptions::downscaleThreshold ( uint16_t v) &&

◆ setDownscaleThreshold() [1/2]

ReaderOptions & ZXing::ReaderOptions::setDownscaleThreshold ( uint16_t v) &
inline

◆ setDownscaleThreshold() [2/2]

ReaderOptions && ZXing::ReaderOptions::setDownscaleThreshold ( uint16_t v) &&
inline

◆ downscaleFactor() [1/3]

uint8_t ZXing::ReaderOptions::downscaleFactor ( ) const
noexcept

Scale factor used during downscaling, meaningful values are 2, 3 and 4.

◆ downscaleFactor() [2/3]

ReaderOptions & ZXing::ReaderOptions::downscaleFactor ( uint8_t v) &

◆ downscaleFactor() [3/3]

ReaderOptions && ZXing::ReaderOptions::downscaleFactor ( uint8_t v) &&

◆ setDownscaleFactor() [1/2]

ReaderOptions & ZXing::ReaderOptions::setDownscaleFactor ( uint8_t v) &
inline

◆ setDownscaleFactor() [2/2]

ReaderOptions && ZXing::ReaderOptions::setDownscaleFactor ( uint8_t v) &&
inline

◆ minLineCount() [1/3]

uint8_t ZXing::ReaderOptions::minLineCount ( ) const
noexcept

The number of scan lines in a linear barcode that have to be equal to accept the result, default is 2.

◆ minLineCount() [2/3]

ReaderOptions & ZXing::ReaderOptions::minLineCount ( uint8_t v) &

◆ minLineCount() [3/3]

ReaderOptions && ZXing::ReaderOptions::minLineCount ( uint8_t v) &&

◆ setMinLineCount() [1/2]

ReaderOptions & ZXing::ReaderOptions::setMinLineCount ( uint8_t v) &
inline

◆ setMinLineCount() [2/2]

ReaderOptions && ZXing::ReaderOptions::setMinLineCount ( uint8_t v) &&
inline

◆ maxNumberOfSymbols() [1/3]

uint8_t ZXing::ReaderOptions::maxNumberOfSymbols ( ) const
noexcept

The maximum number of symbols (barcodes) to detect / look for in the image with ReadBarcodes.

◆ maxNumberOfSymbols() [2/3]

ReaderOptions & ZXing::ReaderOptions::maxNumberOfSymbols ( uint8_t v) &

◆ maxNumberOfSymbols() [3/3]

ReaderOptions && ZXing::ReaderOptions::maxNumberOfSymbols ( uint8_t v) &&

◆ setMaxNumberOfSymbols() [1/2]

ReaderOptions & ZXing::ReaderOptions::setMaxNumberOfSymbols ( uint8_t v) &
inline

◆ setMaxNumberOfSymbols() [2/2]

ReaderOptions && ZXing::ReaderOptions::setMaxNumberOfSymbols ( uint8_t v) &&
inline

◆ validateOptionalChecksum() [1/3]

bool ZXing::ReaderOptions::validateOptionalChecksum ( ) const
noexcept

Validate optional checksums where applicable (e.g. Code39, ITF).

◆ validateOptionalChecksum() [2/3]

ReaderOptions & ZXing::ReaderOptions::validateOptionalChecksum ( bool v) &

◆ validateOptionalChecksum() [3/3]

ReaderOptions && ZXing::ReaderOptions::validateOptionalChecksum ( bool v) &&

◆ setValidateOptionalChecksum() [1/2]

ReaderOptions & ZXing::ReaderOptions::setValidateOptionalChecksum ( bool v) &
inline

◆ setValidateOptionalChecksum() [2/2]

ReaderOptions && ZXing::ReaderOptions::setValidateOptionalChecksum ( bool v) &&
inline

◆ returnErrors() [1/3]

bool ZXing::ReaderOptions::returnErrors ( ) const
noexcept

If true, return the barcodes with errors as well (e.g. checksum errors, see Barcode::error()).

◆ returnErrors() [2/3]

ReaderOptions & ZXing::ReaderOptions::returnErrors ( bool v) &

◆ returnErrors() [3/3]

ReaderOptions && ZXing::ReaderOptions::returnErrors ( bool v) &&

◆ setReturnErrors() [1/2]

ReaderOptions & ZXing::ReaderOptions::setReturnErrors ( bool v) &
inline

◆ setReturnErrors() [2/2]

ReaderOptions && ZXing::ReaderOptions::setReturnErrors ( bool v) &&
inline

◆ eanAddOnSymbol() [1/3]

EanAddOnSymbol ZXing::ReaderOptions::eanAddOnSymbol ( ) const
noexcept

Specify whether to ignore, read or require EAN-2/5 add-on symbols while scanning EAN/UPC codes.

◆ eanAddOnSymbol() [2/3]

ReaderOptions & ZXing::ReaderOptions::eanAddOnSymbol ( EanAddOnSymbol v) &

◆ eanAddOnSymbol() [3/3]

ReaderOptions && ZXing::ReaderOptions::eanAddOnSymbol ( EanAddOnSymbol v) &&

◆ setEanAddOnSymbol() [1/2]

ReaderOptions & ZXing::ReaderOptions::setEanAddOnSymbol ( EanAddOnSymbol v) &
inline

◆ setEanAddOnSymbol() [2/2]

ReaderOptions && ZXing::ReaderOptions::setEanAddOnSymbol ( EanAddOnSymbol v) &&
inline

◆ textMode() [1/3]

TextMode ZXing::ReaderOptions::textMode ( ) const
noexcept

Specifies the TextMode that controls the return of the Barcode::text() function.

◆ textMode() [2/3]

ReaderOptions & ZXing::ReaderOptions::textMode ( TextMode v) &

◆ textMode() [3/3]

ReaderOptions && ZXing::ReaderOptions::textMode ( TextMode v) &&

◆ setTextMode() [1/2]

ReaderOptions & ZXing::ReaderOptions::setTextMode ( TextMode v) &
inline

◆ setTextMode() [2/2]

ReaderOptions && ZXing::ReaderOptions::setTextMode ( TextMode v) &&
inline

◆ characterSet() [1/5]

CharacterSet ZXing::ReaderOptions::characterSet ( ) const
noexcept

Specifies fallback character set to use instead of auto-detecting it (when applicable).

◆ characterSet() [2/5]

ReaderOptions & ZXing::ReaderOptions::characterSet ( CharacterSet v) &

◆ characterSet() [3/5]

ReaderOptions && ZXing::ReaderOptions::characterSet ( CharacterSet v) &&

◆ setCharacterSet() [1/4]

ReaderOptions & ZXing::ReaderOptions::setCharacterSet ( CharacterSet v) &
inline

◆ setCharacterSet() [2/4]

ReaderOptions && ZXing::ReaderOptions::setCharacterSet ( CharacterSet v) &&
inline

◆ characterSet() [4/5]

ReaderOptions & ZXing::ReaderOptions::characterSet ( std::string_view v) &

◆ characterSet() [5/5]

ReaderOptions && ZXing::ReaderOptions::characterSet ( std::string_view v) &&

◆ setCharacterSet() [3/4]

ReaderOptions & ZXing::ReaderOptions::setCharacterSet ( std::string_view v) &
inline

◆ setCharacterSet() [4/4]

ReaderOptions && ZXing::ReaderOptions::setCharacterSet ( std::string_view v) &&
inline

The documentation for this class was generated from the following file: