3#include <unordered_map>
5#include "../../_cexports/c_code_reader.h"
6#include "decl_config_base.hpp"
14 namespace SymbologyConversion
17 template <
class T1,
class T2>
18 T2 Convert(T1 symbolType,
const std::unordered_map<T1, T2> &symbologyMap)
20 auto symbol = std::find_if(symbologyMap.begin(), symbologyMap.end(),
21 [symbolType](
const auto &symbol) { return symbolType & symbol.first; });
23 return symbol != symbologyMap.end() ? symbol->second :
static_cast<T2
>(0);
26 inline Symbology Convert(CExports::CVCRValueSymbology symbolType)
28 const std::unordered_map<CExports::CVCRValueSymbology, Symbology> symbologyMap = {
48 return Convert(symbolType, symbologyMap);
51 inline Symbology Convert(CExports::CVCRValueSymbologyEx symbolType)
53 const std::unordered_map<CExports::CVCRValueSymbologyEx, Symbology> symbologyMap = {
62 return Convert(symbolType, symbologyMap);
Namespace for all decoding functionalities.
Definition decl_config_2d_codes.hpp:10
Symbology
Enum class listing all supported symbologies.
Definition decl_config_base.hpp:35
@ Code11
Code 11.
Definition decl_config_base.hpp:117
@ AustraliaPost
Australia Post.
Definition decl_config_base.hpp:122
@ Code128
Code 128.
Definition decl_config_base.hpp:77
@ GS1DataBarStacked
GS1 DataBar Stacked.
Definition decl_config_base.hpp:147
@ MicroQR
Micro QR code.
Definition decl_config_base.hpp:52
@ RoyalMail
RoyalMail 4-State Code.
Definition decl_config_base.hpp:132
@ GS1DataBarExpandedStacked
GS1 DataBar Expanded Stacked.
Definition decl_config_base.hpp:162
@ Ean13
EAN-13.
Definition decl_config_base.hpp:57
@ GS1DataBarExpanded
GS1 DataBar Expanded.
Definition decl_config_base.hpp:157
@ QR
QR code.
Definition decl_config_base.hpp:47
@ Pharmacode
Pharmacode.
Definition decl_config_base.hpp:107
@ Code39
Code 39.
Definition decl_config_base.hpp:82
@ Code32
Code 32 (Italian Pharmacode).
Definition decl_config_base.hpp:112
@ Pdf417
PDF417.
Definition decl_config_base.hpp:97
@ Interleaved2of5
Interleaved 2 of 5.
Definition decl_config_base.hpp:92
@ DutchPost
DutchPost (KIX Code).
Definition decl_config_base.hpp:127
@ UspsIntelligentMail
USPS Intelligent Mail.
Definition decl_config_base.hpp:137
@ MicroPdf417
MicroPDF417.
Definition decl_config_base.hpp:102
@ UpcA
UPC-A.
Definition decl_config_base.hpp:67
@ Ean8
EAN-8.
Definition decl_config_base.hpp:62
@ GS1DataBarLimited
GS1 DataBar Limited.
Definition decl_config_base.hpp:152
@ GS1DataBar14
GS1 DataBar-14.
Definition decl_config_base.hpp:142
@ Code93
Code 93.
Definition decl_config_base.hpp:87
@ DataMatrix
Data Matrix.
Definition decl_config_base.hpp:42
@ UpcE
UPC-E.
Definition decl_config_base.hpp:72
Root namespace for the Image Manager interface.
Definition c_bayer_to_rgb.h:17