ScArucoDictionary.h
1 /*
2  * This file is part of the Scandit SDK
3  *
4  * Copyright (c) 2023 Scandit AG. All rights reserved.
5  */
6 
7 #ifndef SC_ARUCO_DICTIONARY_H
8 #define SC_ARUCO_DICTIONARY_H
9 
10 #include <Scandit/ScConfig.h>
11 
12 #if defined(__cplusplus)
13 extern "C" {
14 #endif
15 
19 typedef enum {
20  SC_ARUCO_DICTIONARY_PRESET_4X4_250 = 2,
21  SC_ARUCO_DICTIONARY_PRESET_5X5_50 = 4,
22  SC_ARUCO_DICTIONARY_PRESET_5X5_100 = 5,
23  SC_ARUCO_DICTIONARY_PRESET_5X5_250 = 6,
24  SC_ARUCO_DICTIONARY_PRESET_5X5_1000 = 7,
25  SC_ARUCO_DICTIONARY_PRESET_5X5_1023 = 16, // From original ArUco paper
26  SC_ARUCO_DICTIONARY_PRESET_6X6_250 = 10,
27 } ScArucoDictionaryPreset;
28 
29 typedef struct ScOpaqueArucoDictionary ScArucoDictionary;
30 
37 SC_EXPORT ScArucoDictionary *sc_aruco_dictionary_from_preset(ScArucoDictionaryPreset preset);
38 
39 SC_EXPORT void sc_aruco_dictionary_retain(ScArucoDictionary *dictionary);
40 SC_EXPORT void sc_aruco_dictionary_release(ScArucoDictionary *dictionary);
41 
48 SC_EXPORT ScArucoDictionary *sc_aruco_dictionary_new(uint32_t marker_size);
49 SC_EXPORT void sc_aruco_dictionary_free(ScArucoDictionary *dictionary);
50 
65 SC_EXPORT ScBool sc_aruco_dictionary_add_marker(ScArucoDictionary *dictionary,
66  uint8_t *marker_bits,
67  uint32_t marker_size);
68 
69 #if defined(__cplusplus)
70 }
71 #endif
72 #endif
Common definitions used throughout the ScanditSDK API.
int32_t ScBool
Boolean value, can be SC_TRUE or SC_FALSE.
Definition: ScConfig.h:127