ScBarcodeScannerSettings.h
Go to the documentation of this file.
1 
10 #ifndef SC_BARCODE_SCANNER_SETTINGS_H_
11 #define SC_BARCODE_SCANNER_SETTINGS_H_
12 
13 #include <Scandit/ScConfig.h>
14 #include <Scandit/ScCommon.h>
15 #include <Scandit/ScBarcode.h>
19 
21 
31 typedef enum {
71 
76 
82 typedef enum {
103 
115 
124 typedef enum {
142 
258 typedef struct ScOpaqueBarcodeScannerSettings ScBarcodeScannerSettings;
261 
274 SC_EXPORT
276 
288 SC_EXPORT
291 
312 SC_EXPORT
314  ScError *error);
315 
324 SC_EXPORT
326 
337 SC_EXPORT
339 
352 SC_EXPORT
354 
370 SC_EXPORT
372  ScBarcodeScannerSettings const *settings);
373 
384 SC_EXPORT
386  ScBarcodeScannerSettings *settings);
387 
422 SC_EXPORT
424  ScSymbology symbology,
425  ScBool enabled);
440 SC_EXPORT
442  ScBarcodeScannerSettings *settings, ScSymbology symbology);
443 
462 SC_EXPORT
464  ScBool enabled);
465 
475 SC_EXPORT
477 
487 SC_EXPORT
489  ScBarcodeScannerSettings const *settings);
490 
501 SC_EXPORT
503  ScBarcodeScannerSettings *settings, uint32_t max_locations);
504 
526 SC_EXPORT
528 
541 SC_EXPORT
543  ScRectangleF scan_area);
544 
562 SC_EXPORT
564  ScBarcodeScannerSettings const *settings);
565 
576 SC_EXPORT
578  ScRectangleF rect);
579 
589 SC_EXPORT
591  ScBarcodeScannerSettings const *settings);
592 
602 SC_EXPORT
604  ScBarcodeScannerSettings *settings, ScCodeLocationConstraint constraint);
605 
616 SC_EXPORT
618  ScBarcodeScannerSettings const *settings);
619 
630 SC_EXPORT
632  ScRectangleF rect);
633 
643 SC_EXPORT
645  ScBarcodeScannerSettings const *settings);
646 
656 SC_EXPORT
658  ScBarcodeScannerSettings *settings, ScCodeLocationConstraint constraint);
659 
668 #define SC_CIRCLE_RADIUS_INFINITE -1.0f
669 
680 SC_EXPORT
682  ScPointF *relative_center,
683  float *relative_radius);
684 
712 SC_EXPORT
714  ScPointF relative_center,
715  float relative_radius);
716 
741 SC_EXPORT
743  ScBarcodeScannerSettings const *settings);
744 
764 SC_EXPORT
766  ScCodeDirection direction);
767 
782 #define SC_DUPLICATE_FILTER_OFF (0)
783 
789 #define SC_DUPLICATE_FILTER_INFINITE (-1)
790 
805 SC_EXPORT
807  ScBarcodeScannerSettings const *settings);
808 
834 SC_EXPORT
836  int32_t filter);
837 
851 SC_EXPORT
853 
865 SC_EXPORT
867  ScArucoDictionary const *dictionary);
868 
870 
871 #endif // SC_BARCODE_SCANNER_SETTINGS_H_
Definition: ScBarcodeScannerSettings.h:102
ScBarcodeScannerSettings * sc_barcode_scanner_settings_new_from_json(char const *json_data, ScError *error)
Create a new barcode scanner settings object from a json description.
ArUco Symbology Dictionary.
The area can be defined but will not be used by the barcode scanner.
Definition: ScBarcodeScannerSettings.h:140
Restrict decoding to the specified area.
Definition: ScBarcodeScannerSettings.h:130
ScCodeDirection sc_barcode_scanner_settings_get_code_direction_hint(ScBarcodeScannerSettings const *settings)
Get the code direction hint.
ScBarcodeScannerSettings * sc_barcode_scanner_settings_new_with_preset(ScBarcodeScannerSettingsPresetFlags preset)
Create a new barcode scanner settings object.
void sc_barcode_scanner_settings_retain(ScBarcodeScannerSettings const *settings)
Increase reference count of barcode scanner settings.
ScBarcodeScannerSettings * sc_barcode_scanner_settings_clone(ScBarcodeScannerSettings *settings)
Creates and returns a deep copy of the barcode scanner settings object.
ScCodeDirection
Enum for different code directions.
Definition: ScBarcodeScannerSettings.h:82
ScBool sc_barcode_scanner_settings_get_multi_scan_enabled(ScBarcodeScannerSettings const *settings)
Get whether scanning multiple codes in a single frame is enabled.
void sc_barcode_scanner_settings_set_code_direction_hint(ScBarcodeScannerSettings *settings, ScCodeDirection direction)
Set the code direction hint.
void sc_barcode_scanner_settings_set_code_duplicate_filter(ScBarcodeScannerSettings *settings, int32_t filter)
Specifies the duplicate filter to use for the session.
void sc_barcode_scanner_settings_set_code_location_constraint_2d(ScBarcodeScannerSettings *settings, ScCodeLocationConstraint constraint)
Set the 2d code location constraint.
Property collection manipulation.
char * sc_barcode_scanner_settings_as_json(ScBarcodeScannerSettings const *settings)
Returns the settings contained in the object as json.
int32_t sc_barcode_scanner_settings_get_code_duplicate_filter(ScBarcodeScannerSettings const *settings)
Get the code duplicate filter of the scan session.
Definition: ScBarcodeScannerSettings.h:86
void sc_barcode_scanner_settings_release(ScBarcodeScannerSettings const *settings)
Decrease reference count of barcode scanner settings object by one.
Preset for hand held devices that need to scan one code at a time.
Definition: ScBarcodeScannerSettings.h:69
void sc_barcode_scanner_settings_set_code_location_area_1d(ScBarcodeScannerSettings *settings, ScRectangleF rect)
Set code location area for 1d codes.
ScCodeLocationConstraint sc_barcode_scanner_settings_get_code_location_constraint_1d(ScBarcodeScannerSettings const *settings)
Get 1d code location constraint.
An opaque data structure holding configuration options for the barcode scanner.
Handle to a collection of properties.
void sc_barcode_scanner_settings_set_search_area(ScBarcodeScannerSettings *settings, ScRectangleF scan_area)
Set the area of the image in which barcodes are searched.
ScRectangleF sc_barcode_scanner_settings_get_code_location_area_2d(ScBarcodeScannerSettings const *settings)
Get 2d code location area.
Functions for retrieving barcode information.
ScBool sc_barcode_scanner_settings_set_aruco_dictionary(ScBarcodeScannerSettings *settings, ScArucoDictionary const *dictionary)
Replaces the ARUCO Dictionary in the scanner settings, or adds one if none is given in the settings...
ScPropertyCollection * sc_barcode_scanner_settings_get_properties(ScBarcodeScannerSettings *settings)
Retrieves the barcode scanner settings properties handle.
void sc_barcode_scanner_settings_get_circle_of_interest(ScBarcodeScannerSettings const *settings, ScPointF *relative_center, float *relative_radius)
Returns the circle of interest.
#define SC_EXTERN_C_BEGIN
Start of external C code.
Definition: ScConfig.h:19
ScBarcodeScannerSettingsPreset
List of barcode scanner settings presets.
Definition: ScBarcodeScannerSettings.h:31
uint32_t sc_barcode_scanner_settings_get_max_num_locations_to_process_per_frame(ScBarcodeScannerSettings const *settings)
Get the maximum number of barcode locations to be processed in every frame.
void sc_barcode_scanner_settings_set_code_location_area_2d(ScBarcodeScannerSettings *settings, ScRectangleF rect)
Set code location area for 2d codes.
ScRectangleF sc_barcode_scanner_settings_get_code_location_area_1d(ScBarcodeScannerSettings const *settings)
Get 1d code location area.
void sc_barcode_scanner_settings_set_code_location_constraint_1d(ScBarcodeScannerSettings *settings, ScCodeLocationConstraint constraint)
Set the 1d code location constraint.
ScSymbology
Enumeration of all supported 1d and 2d barcode symbologies.
Definition: ScBarcode.h:27
void sc_barcode_scanner_settings_set_multi_scan_enabled(ScBarcodeScannerSettings *settings, ScBool enabled)
Set whether scanning multiple codes in a single frame is enabled.
void sc_barcode_scanner_settings_set_max_num_locations_to_process_per_frame(ScBarcodeScannerSettings *settings, uint32_t max_locations)
Set the maximum number of barcode locations to be processed in every frame.
Definition: ScBarcodeScannerSettings.h:108
Definition: ScBarcodeScannerSettings.h:98
Definition: ScBarcodeScannerSettings.h:90
#define SC_EXTERN_C_END
End of external C code.
Definition: ScConfig.h:28
High effort preset.
Definition: ScBarcodeScannerSettings.h:55
ScBarcodeScannerSettings * sc_barcode_scanner_settings_new(void)
Create a new barcode scanner settings object.
ScPropertyCollection const * sc_barcode_scanner_settings_get_properties_const(ScBarcodeScannerSettings const *settings)
Retrieves the barcode scanner settings read-only properties handle.
Structure for holding error information.
Definition: ScCommon.h:264
ArUco symbology dictionary interface.
ScCodeLocationConstraint
Code location constraint.
Definition: ScBarcodeScannerSettings.h:124
int32_t ScBarcodeScannerSettingsPresetFlags
A bit-field of ScBarcodeScannerSettingsPreset.
Definition: ScBarcodeScannerSettings.h:75
Common definitions used throughout the ScanditSDK API.
ScSymbologySettings * sc_barcode_scanner_settings_get_symbology_settings(ScBarcodeScannerSettings *settings, ScSymbology symbology)
Retrieve symbology-specific settings.
Common functions and data structures.
ScCodeLocationConstraint sc_barcode_scanner_settings_get_code_location_constraint_2d(ScBarcodeScannerSettings const *settings)
Get 2d code location constraint.
Definition: ScBarcodeScannerSettings.h:113
ScRectangleF sc_barcode_scanner_settings_get_search_area(ScBarcodeScannerSettings const *settings)
Get the area of the image in which barcodes are searched.
A 2-dimensional rectangle with floating point precision.
Definition: ScCommon.h:158
The area indicates the most likely code position.
Definition: ScBarcodeScannerSettings.h:136
Contains symbology-specific settings.
Barcode symbology configuration.
void sc_barcode_scanner_settings_set_symbology_enabled(ScBarcodeScannerSettings *settings, ScSymbology symbology, ScBool enabled)
Enable/disable decoding of a certain symbology.
void sc_barcode_scanner_settings_set_circle_of_interest(ScBarcodeScannerSettings *settings, ScPointF relative_center, float relative_radius)
Sets the circle of interest.
Definition: ScBarcodeScannerSettings.h:94
No (default) preset.
Definition: ScBarcodeScannerSettings.h:42
A 2-dimensional point with floating point precision.
Definition: ScCommon.h:99
int32_t ScBool
Boolean value, can be SC_TRUE or SC_FALSE.
Definition: ScConfig.h:167