CVB++ 15.0
decl_config_pharma_codes.hpp
1#pragma once
2
3#include "../../_cexports/c_code_reader.h"
4
5namespace Cvb
6{
7 CVB_BEGIN_INLINE_NS
8
9 namespace CodeReader
10 {
11 namespace Config
12 {
14
29 class Pharmacode final : public ConfigBase<Pharmacode>
30 {
31 friend class Cvb::CodeReader::Decoder;
32
33 private:
34 Pharmacode(Decoder &decoder) noexcept
35 : ConfigBase<Pharmacode>(decoder)
36 {
37 }
38
39 public:
41
45 Pharmacode &SetMinNumberBars(int value);
46
48
52 int MinNumberBars() const;
53
55
60 Pharmacode &SetMaxNumberBars(int value);
61
63
67 int MaxNumberBars() const;
68
70
74 Pharmacode &SetMinValue(int value);
75
77
81 int MinValue() const;
82
84
88 Pharmacode &SetMaxValue(int value);
89
91
95 int MaxValue() const;
96 };
97
98 template <>
99 struct Mapper<Symbology::Pharmacode>
100 {
101 using Type = Config::Pharmacode;
102 };
103
104 template <>
105 struct ReverseMapper<Config::Pharmacode>
106 {
107 static constexpr Symbology type = Symbology::Pharmacode;
108 };
109
111
126 class Code32 final : public ConfigBase<Code32>
127 {
128 friend class Cvb::CodeReader::Decoder;
129
130 private:
131 Code32(Decoder &decoder) noexcept
132 : ConfigBase<Code32>(decoder)
133 {
134 }
135 };
136
137 template <>
138 struct Mapper<Symbology::Code32>
139 {
140 using Type = Config::Code32;
141 };
142
143 template <>
144 struct ReverseMapper<Config::Code32>
145 {
146 static constexpr Symbology type = Symbology::Code32;
147 };
148
149 } // namespace Config
150 } // namespace CodeReader
151
152 CVB_END_INLINE_NS
153} // namespace Cvb
Configuration class for Code 32 barcodes (Italian Pharmacode).
Definition decl_config_pharma_codes.hpp:127
Configuration class for Pharmacodes.
Definition decl_config_pharma_codes.hpp:30
int MaxNumberBars() const
Gets the maximum number of bars for decoding.
Definition detail_config_pharma_codes.hpp:29
int MinValue() const
Gets the minimum value for decoding.
Definition detail_config_pharma_codes.hpp:39
Pharmacode & SetMaxValue(int value)
Sets the maximum value for decoding.
Definition detail_config_pharma_codes.hpp:44
int MinNumberBars() const
Gets the minimum number of bars for decoding.
Definition detail_config_pharma_codes.hpp:19
Pharmacode & SetMinValue(int value)
Sets the minimum value for decoding.
Definition detail_config_pharma_codes.hpp:34
Pharmacode & SetMaxNumberBars(int value)
Sets the maximum number of bars for decoding.
Definition detail_config_pharma_codes.hpp:24
int MaxValue() const
Gets the maximum value for decoding.
Definition detail_config_pharma_codes.hpp:49
Pharmacode & SetMinNumberBars(int value)
Sets the minimum number of bars for decoding.
Definition detail_config_pharma_codes.hpp:14
Class for decoding.
Definition decl_decoder.hpp:101
This namespace contains the configuration classes for all supported codes.
Definition decl_config_2d_codes.hpp:14
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
@ Pharmacode
Pharmacode.
Definition decl_config_base.hpp:107
@ Code32
Code 32 (Italian Pharmacode).
Definition decl_config_base.hpp:112
Root namespace for the Image Manager interface.
Definition c_bayer_to_rgb.h:17