DocSDK  2.4.1
c_api.h
Go to the documentation of this file.
1 /* Copyright 2021 ID R&D Inc. All Rights Reserved. */
2 
8 #pragma once
9 
10 #include <stdint.h>
11 #include <stddef.h>
12 
13 #include "config.h"
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18 
22 typedef struct DocSdkImage DocSdkImage;
23 
28 
32 typedef enum DocSdkErrorCode {
38 
42 typedef enum DocSdkColorEncoding {
46 
63 
79 
86 
89 
95 
98 
100  DocSdkValidationStatusCode status_code;
102 
111 
119  DocSdkLivenessCheckCalibration calibration;
120 
124  DocSdkValidationStatusCode* errors_to_ignore;
125 
131 
135 typedef enum DocSdkAttackType {
142 
146 typedef struct DocSdkFeature {
147  DocSdkAttackType attack_type;
150 } DocSdkFeature;
151 
155 typedef struct DocSdkLicenseInfo {
157  size_t num_features;
159 
166 DOCSDK_API void DocSdkSetErrorLogCallback(void (*callback)(DocSdkErrorCode, const char*));
167 
178 DOCSDK_API void DocSdkSetNumThreads(unsigned int num_threads);
179 
187 DOCSDK_API DocSdkLicenseInfo* DocSdkGetLicenseInfo(DocSdkErrorCode* error_code);
188 
194 
202 DOCSDK_API void DocSdkSetRuntimeLicense(const char* license_str, DocSdkErrorCode* error_code);
203 
211 DOCSDK_API DocSdkImage* DocSdkCreateImageFromBuffer(const uint8_t* bytes, size_t size, DocSdkErrorCode* error_code);
212 
219 DOCSDK_API DocSdkImage* DocSdkCreateImageFromFile(const char* file_path, DocSdkErrorCode* error_code);
220 
230 DOCSDK_API DocSdkImage* DocSdkCreateImageFromRawData(const uint8_t* data, size_t num_rows, size_t num_cols,
231  DocSdkColorEncoding encoding, DocSdkErrorCode* error_code);
232 
238 
245 DOCSDK_API DocSdkLivenessPipeline* DocSdkCreateLivenessPipeline(const char* config_path, DocSdkErrorCode* error_code);
246 
252 
258 
268  DocSdkImage* image,
270  DocSdkErrorCode* error_code);
271 
283  DocSdkLivenessPipeline* liveness_pipeline, DocSdkImage** images, size_t num_images,
284  DocSdkLivenessCheckOptions* options, DocSdkErrorCode* error_code);
285 
286 #ifdef __cplusplus
287 }
288 #endif
Definition: c_api.h:33
size_t num_errors_to_ignore
Specifies the number of elements in errors_to_ignore array.
Definition: c_api.h:129
DOCSDK_API void DocSdkSetNumThreads(unsigned int num_threads)
Sets the maximum number of CPU threads available for DocSDK. If 0 is passed, then the optimal number ...
DOCSDK_API DocSdkImage * DocSdkCreateImageFromBuffer(const uint8_t *bytes, size_t size, DocSdkErrorCode *error_code)
Liveness pipeline result.
Definition: c_api.h:83
Configurable options used for document liveness check.
Definition: c_api.h:115
#define DOCSDK_API
Definition: config.h:24
Definition: c_api.h:36
DOCSDK_API void DocSdkDestroyLivenessPipeline(DocSdkLivenessPipeline *liveness_pipeline)
DOCSDK_API void DocSdkDestroyImage(DocSdkImage *image)
struct DocSdkLivenessPipelineResult DocSdkLivenessPipelineResult
Liveness pipeline result.
DOCSDK_API void DocSdkDestroyLicenseInfo(DocSdkLicenseInfo *license_info)
uint64_t image_quality_warnings
Definition: c_api.h:97
DocSDK feature information.
Definition: c_api.h:146
DocSdkAttackType
Document spoofing attack type.
Definition: c_api.h:135
Definition: c_api.h:35
struct DocSdkLicenseInfo DocSdkLicenseInfo
Information about DocSDK features available with the installed license.
DocSdkValidationStatusCode status_code
Definition: c_api.h:100
DOCSDK_API DocSdkImage * DocSdkCreateImageFromFile(const char *file_path, DocSdkErrorCode *error_code)
DocSdkFeature * features
Definition: c_api.h:156
struct DocSdkImage DocSdkImage
Image representation.
Definition: c_api.h:22
Definition: c_api.h:44
char * pipeline_name
Definition: c_api.h:148
DocSdkImageQualityWarning
Image quality warning (image quality check is performed along with liveness check) ...
Definition: c_api.h:67
float quality_score
Image quality checking score, only filled if status_code == kDocSdkValidationStatusCodeOk.
Definition: c_api.h:94
struct DocSdkLivenessPipeline DocSdkLivenessPipeline
Document liveness checking pipeline.
Definition: c_api.h:27
Definition: c_api.h:136
DocSdkValidationStatusCode * errors_to_ignore
Defines which validation errors should be ignored during the liveness check, null allowed...
Definition: c_api.h:124
char * expiration_date
Definition: c_api.h:149
DocSdkAttackType attack_type
Definition: c_api.h:147
float liveness_probability
Definition: c_api.h:85
Definition: c_api.h:140
DocSdkLivenessCheckCalibration calibration
Score/threshold calibration to be used for document liveness check.
Definition: c_api.h:119
struct DocSdkFeature DocSdkFeature
DocSDK feature information.
Definition: c_api.h:137
float liveness_score
Definition: c_api.h:88
size_t num_features
Definition: c_api.h:157
DocSdkColorEncoding
Image color encoding.
Definition: c_api.h:42
DOCSDK_API DocSdkImage * DocSdkCreateImageFromRawData(const uint8_t *data, size_t num_rows, size_t num_cols, DocSdkColorEncoding encoding, DocSdkErrorCode *error_code)
DocSdkErrorCode
DocSDK error codes enumeration.
Definition: c_api.h:32
DOCSDK_API void DocSdkSetRuntimeLicense(const char *license_str, DocSdkErrorCode *error_code)
Sets the runtime license. Only takes effect in "Lambda" SDK distribution and should be called before ...
DOCSDK_API void DocSdkSetErrorLogCallback(void(*callback)(DocSdkErrorCode, const char *))
DOCSDK_API DocSdkLivenessCheckOptions DocSdkLivenessCheckOptionsDefault()
Information about DocSDK features available with the installed license.
Definition: c_api.h:155
Definition: c_api.h:34
DOCSDK_API DocSdkLivenessPipeline * DocSdkCreateLivenessPipeline(const char *config_path, DocSdkErrorCode *error_code)
DOCSDK_API DocSdkLivenessPipelineResult DocSdkLivenessPipelineCheckLiveness(DocSdkLivenessPipeline *liveness_pipeline, DocSdkImage *image, DocSdkLivenessCheckOptions *options, DocSdkErrorCode *error_code)
Definition: c_api.h:51
struct DocSdkLivenessCheckOptions DocSdkLivenessCheckOptions
Configurable options used for document liveness check.
Definition: c_api.h:43
DOCSDK_API DocSdkLicenseInfo * DocSdkGetLicenseInfo(DocSdkErrorCode *error_code)
Returns information (e.g. supported features and expiration dates) about the installed license if ava...
DOCSDK_API DocSdkLivenessPipelineResult DocSdkLivenessPipelineCheckLivenessSequence(DocSdkLivenessPipeline *liveness_pipeline, DocSdkImage **images, size_t num_images, DocSdkLivenessCheckOptions *options, DocSdkErrorCode *error_code)
DocSdkValidationStatusCode
Image validation status code (image validation is performed beforehand each liveness check) ...
Definition: c_api.h:50
DocSdkLivenessCheckCalibration
Score/threshold calibration to be used for document liveness check.
Definition: c_api.h:106