Enrollment 28.2.0
Loading...
Searching...
No Matches
PrintCaptureDeviceTechnology.h
Go to the documentation of this file.
1
9
10#pragma once
12#include "enrollment/Export.h"
13#include <ostream>
14
15namespace inno
16{
67 };
68
69 // The numbers are from ISO standard and are tested in unit tests.
70 // NOLINTBEGIN(cppcoreguidelines-avoid-magic-numbers,readability-magic-numbers)
71
78 */
79 static constexpr int PrintToIsoCaptureDeviceTechnology(PrintCaptureDeviceTechnology printCaptureDeviceTechnology)
80 {
81 switch (printCaptureDeviceTechnology)
82 {
84 return 0;
86 return 1;
88 return 2;
90 return 3;
92 return 4;
94 return 5;
96 return 6;
98 return 7;
100 return 8;
102 return 9;
104 return 10;
106 return 11;
108 return 12;
110 return 13;
112 return 14;
114 return 15;
116 return 16;
118 return 17;
120 return 18;
122 return 19;
124 return 20;
125 default:
126 break;
127 }
128
129 throw EnrollmentInvalidArgumentException("Invalid conversion from PrintCaptureDeviceTechnology to ISO");
130 }
131
138 */
139 static constexpr PrintCaptureDeviceTechnology IsoToPrintCaptureDeviceTechnology(int isoCaptureDeviceTechnology)
140 {
141 switch (isoCaptureDeviceTechnology)
142 {
143 case 0:
145 case 1:
147 case 2:
149 case 3:
151 case 4:
153 case 5:
155 case 6:
157 case 7:
159 case 8:
161 case 9:
163 case 10:
165 case 11:
167 case 12:
169 case 13:
171 case 14:
173 case 15:
175 case 16:
177 case 17:
179 case 18:
181 case 19:
183 case 20:
185 default:
186 break;
187 }
188
189 throw EnrollmentInvalidArgumentException("Invalid conversion from ISO to PrintCaptureDeviceTechnology");
190 }
191 // NOLINTEND(cppcoreguidelines-avoid-magic-numbers,readability-magic-numbers)
192
193 inline std::ostream& operator<<(std::ostream& os, PrintCaptureDeviceTechnology printCaptureDeviceTechnology)
194 {
195 switch (printCaptureDeviceTechnology)
196 {
198 os << "UNKNOWN";
199 break;
201 os << "WHITE_LIGHT_OPTICAL_TIR";
202 break;
204 os << "WHITE_LIGHT_OPTICAL_DIRECT";
205 break;
207 os << "WHITE_LIGHT_OPTICAL_TOUCHLESS";
208 break;
210 os << "MONOCHROMATIC_VISIBLE_OPTICAL_TIR";
211 break;
213 os << "MONOCHROMATIC_VISIBLE_OPTICAL_DIRECT";
214 break;
216 os << "MONOCHROMATIC_VISIBLE_OPTICAL_TOUCHLESS";
217 break;
219 os << "MONOCHROMATIC_VISIBLE_IR_OPTICAL_TIR";
220 break;
222 os << "MONOCHROMATIC_VISIBLE_IR_OPTICALTOUCHLESS";
223 break;
225 os << "MONOCHROMATIC_VISIBLE_IR_OPTICAL";
226 break;
228 os << "MULTISPECTRAL_OPTICAL_TIR";
229 break;
231 os << "MULTISPECTRAL_OPTICAL_DIRECT";
232 break;
234 os << "MULTISPECTRAL_OPTICAL_TOUCHLESS";
235 break;
237 os << "ELECTRO_LUMINESCENT";
238 break;
240 os << "SEMICONDUCTOR_CAPACITIVE";
241 break;
243 os << "SEMICONDUCTOR_RF";
244 break;
246 os << "SEMICONDUCTOR_THERMAL";
247 break;
249 os << "PRESSURE_SENSITIVE";
250 break;
252 os << "ULTRASOUND";
253 break;
255 os << "MECHANICAL";
256 break;
258 os << "GLASS_FIBER";
259 break;
260 }
261 return os;
262 }
263
264} // namespace inno
Base exception for all enrollment-sdk invalid argument exceptions.
Definition EnrollmentException.h:96
@ UNKNOWN
Unknown or Unspecified.
Definition FaceCaptureDeviceTechnology.h:23
PrintCaptureDeviceTechnology
It shall indicate the class of capture device technology used to acquire the captured biometric sampl...
Definition PrintCaptureDeviceTechnology.h:22
static constexpr PrintCaptureDeviceTechnology IsoToPrintCaptureDeviceTechnology(int isoCaptureDeviceTechnology)
Function converts ISO capture technology to PrintCaptureDeviceTechnology.
Definition PrintCaptureDeviceTechnology.h:138
static constexpr int PrintToIsoCaptureDeviceTechnology(PrintCaptureDeviceTechnology printCaptureDeviceTechnology)
Function converts PrintCaptureDeviceTechnology to ISO capture technology.
Definition PrintCaptureDeviceTechnology.h:78
@ MONOCHROMATIC_VISIBLE_IR_OPTICAL
Monochromatic IR optical touchless.
Definition PrintCaptureDeviceTechnology.h:43
@ WHITE_LIGHT_OPTICAL_DIRECT
White light optical direct view on platen.
Definition PrintCaptureDeviceTechnology.h:29
@ MULTISPECTRAL_OPTICAL_TIR
Multispectral optical TIR.
Definition PrintCaptureDeviceTechnology.h:45
@ MONOCHROMATIC_VISIBLE_OPTICAL_DIRECT
Monochromatic visible optical direct view on platen.
Definition PrintCaptureDeviceTechnology.h:35
@ MONOCHROMATIC_VISIBLE_OPTICAL_TOUCHLESS
Monochromatic visible optical touchless.
Definition PrintCaptureDeviceTechnology.h:37
@ ULTRASOUND
Ultrasound.
Definition PrintCaptureDeviceTechnology.h:61
@ SEMICONDUCTOR_THERMAL
Semiconductor thermal.
Definition PrintCaptureDeviceTechnology.h:57
@ GLASS_FIBER
Glass fiber.
Definition PrintCaptureDeviceTechnology.h:65
@ UNKNOWN
Unknown or unspecified.
Definition PrintCaptureDeviceTechnology.h:24
@ SEMICONDUCTOR_RF
Semiconductor RF.
Definition PrintCaptureDeviceTechnology.h:55
@ MECHANICAL
Mechanical.
Definition PrintCaptureDeviceTechnology.h:63
@ PRESSURE_SENSITIVE
Pressure sensitive.
Definition PrintCaptureDeviceTechnology.h:59
@ MONOCHROMATIC_VISIBLE_IR_OPTICALTOUCHLESS
Monochromatic IR optical direct view on platen.
Definition PrintCaptureDeviceTechnology.h:41
@ MONOCHROMATIC_VISIBLE_IR_OPTICAL_TIR
Monochromatic IR optical TIR.
Definition PrintCaptureDeviceTechnology.h:39
@ MULTISPECTRAL_OPTICAL_TOUCHLESS
Multispectral optical touchless.
Definition PrintCaptureDeviceTechnology.h:49
@ WHITE_LIGHT_OPTICAL_TIR
White light optical TIR.
Definition PrintCaptureDeviceTechnology.h:26
@ WHITE_LIGHT_OPTICAL_TOUCHLESS
White light optical touchless.
Definition PrintCaptureDeviceTechnology.h:31
@ MONOCHROMATIC_VISIBLE_OPTICAL_TIR
Monochromatic visible optical TIR.
Definition PrintCaptureDeviceTechnology.h:33
@ ELECTRO_LUMINESCENT
Electro luminescent.
Definition PrintCaptureDeviceTechnology.h:51
@ MULTISPECTRAL_OPTICAL_DIRECT
Multispectral optical direct view on platen.
Definition PrintCaptureDeviceTechnology.h:47
@ SEMICONDUCTOR_CAPACITIVE
Semiconductor capacitive.
Definition PrintCaptureDeviceTechnology.h:53