Face SDK  1.8.1 Mozart release
Face Recognition Software Development Kit
remote_license.h
Go to the documentation of this file.
1 
4 #pragma once
5 
6 #include <face_sdk_base/export.h>
7 #include <c_interface/common/common.h>
8 #include <c_interface/common/face_sdk_class.h>
9 
10 extern "C"
11 {
19  typedef uint8_t *(*face_sdk__on_load_cb_t)(uint64_t *license_data_size);
20 
23  typedef void(*face_sdk__on_updated_cb_t)(const uint8_t *license_data, uint64_t license_data_size);
24 
27  typedef void(*face_sdk__on_free_data_cb_t)(const uint8_t *license_data);
28 
31  DECLARE_FACE_SDK_CLASS(remote_license_callback)
32 
33  bool FACE_SDK_C_EXPORT face_sdk__make_remote_license_callback(
34  face_sdk__on_load_cb_t on_load_cb,
35  face_sdk__on_updated_cb_t on_updated_cb,
36  face_sdk__on_free_data_cb_t on_free_data_cb,
38  );
39 
46 
47 
48 
49 
55  DECLARE_FACE_SDK_CLASS(remote_license)
56 
57 
58 
60  bool FACE_SDK_C_EXPORT face_sdk__remote_license__force_update(const face_sdk__remote_license_t *license);
61 
71  bool FACE_SDK_C_EXPORT face_sdk__make_remote_license(uint8_t *token,
72  uint64_t token_size,
73  face_sdk__remote_license_t **license);
74 
86  bool FACE_SDK_C_EXPORT face_sdk__make_remote_license_1(uint8_t *token,
87  uint64_t token_size,
88  uint8_t *file_name,
89  uint64_t file_name_size,
90  face_sdk__remote_license_t **license);
91 
102  bool FACE_SDK_C_EXPORT face_sdk__make_remote_license_2(uint8_t *token,
103  uint64_t token_size,
104  const face_sdk__remote_license_callback_t *callback,
105  face_sdk__remote_license_t **license);
106 
119  bool FACE_SDK_C_EXPORT face_sdk__make_remote_license_3(uint8_t *token,
120  uint64_t token_size,
121  uint8_t *request,
122  uint64_t request_size,
123  const face_sdk__remote_license_callback_t *callback,
124  face_sdk__remote_license_t **license);
125 
133  bool FACE_SDK_C_EXPORT face_sdk__make_default_license(void **license, int *type);
134 
140  void FACE_SDK_C_EXPORT face_sdk__remote_license_free(face_sdk__remote_license_t *license);
141 
143 }
144 
void(* face_sdk__on_free_data_cb_t)(const uint8_t *license_data)
Called when license data should be free.
Definition: remote_license.h:27
bool face_sdk__make_default_license(void **license, int *type)
Make license depending on environment variables (FACE_SDK_REMOTE_LICENSE_DEFAULT and FACE_SDK_REMOTE_...
void(* face_sdk__on_updated_cb_t)(const uint8_t *license_data, uint64_t license_data_size)
Called if license is successfully fetched. Callback implementation should cache the license and retur...
Definition: remote_license.h:23
Callback object used in face_sdk__make_remote_license() function.
Definition: remote_license.h:31
void face_sdk__remote_license_free(face_sdk__remote_license_t *license)
Destroys face_sdk__remote_license object.
uint8_t *(* face_sdk__on_load_cb_t)(uint64_t *license_data_size)
Called when license is about to be fetch from server. Callback implementation is supposed to return c...
Definition: remote_license.h:19
bool face_sdk__make_remote_license_2(uint8_t *token, uint64_t token_size, const face_sdk__remote_license_callback_t *callback, face_sdk__remote_license_t **license)
Loads license from file in known paths. (see Known paths)
The remote_license object. A remote_license object provides information about your limits in face_sdk...
Definition: remote_license.h:55
bool face_sdk__make_remote_license_1(uint8_t *token, uint64_t token_size, uint8_t *file_name, uint64_t file_name_size, face_sdk__remote_license_t **license)
Loads license from file in known paths. (see Known paths)
bool face_sdk__make_remote_license(uint8_t *token, uint64_t token_size, face_sdk__remote_license_t **license)
Loads license from file in known paths. (see Known paths)
void face_sdk__remote_license_callback_free(face_sdk__remote_license_callback_t *callback)
Destroys face_sdk__remote_license_callback object.
bool face_sdk__make_remote_license_3(uint8_t *token, uint64_t token_size, uint8_t *request, uint64_t request_size, const face_sdk__remote_license_callback_t *callback, face_sdk__remote_license_t **license)
Loads license from file in known paths. (see Known paths)
bool face_sdk__remote_license__force_update(const face_sdk__remote_license_t *license)
Fetches license from server or from local cache.