Face Engine SDK  5.31.0
A face detection, recognition and tracking engine.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
ILicense.h
1 #pragma once
2 
3 #include <fsdk/IObject.h>
4 #include <fsdk/FSDKError.h>
5 
6 namespace fsdk {
7 
8 #ifndef DOXYGEN_SHOULD_SKIP_THIS
9  DECLARE_SMARTPTR(ILicense);
10 #endif
11 
15  enum class LicenseFeature : uint32_t {
16  Detection = 1,
17  BestShot = 2,
18  Attributes = 3,
19  Emotions = 4,
20  FaceFeatures = 5,
21  Liveness = 6,
22  Descriptor = 7,
23  DescriptorIndex = 8,
24  LivenessEngine = 9,
25  TrackEngine = 10,
26  HumanDetection = 11,
27  PPEDetection = 17,
28  MobileLiveness = 18,
29  MedicalMaskDetection = 19,
30  ReIdDescriptor = 20,
31  ISOCheck = 21,
32  DeepFakeEstimation = 22,
33  DepthRGBLiveness = 23,
34  FightsEstimation = 24,
35  BodyAttributes = 25,
36  NIRLiveness = 26,
37  DepthLiveness = 27,
38  ImageModification = 28,
39 
40  // extern features
41  VirtualCameraChecker = 500
42  };
43 
47  struct Fingerprint {
49  constexpr static uint16_t max_size = 65;
50 
54  constexpr const char* to_string() const {
55  return data;
56  }
57 
59  char data[max_size];
60  };
61 
66  struct ILicense : IRefCounted {
74  virtual ResultValue<FSDKError, bool> checkFeatureId(LicenseFeature feature) const noexcept = 0;
75 
83  virtual ResultValue<FSDKError, bool> isActivated() const noexcept = 0;
84 
91  FSDK_DEPRECATED("loadFromFile is deprecated since v.5.5.0,"
92  " Use loadFromFile(const char* path, const ISettingsProvider* settings) instead")
93  virtual Result<FSDKError> loadFromFile(const char* path) noexcept = 0;
94 
102  virtual Result<FSDKError> loadFromFile(const char* path, const ISettingsProvider* settings) noexcept = 0;
103 
111  virtual Result<FSDKError> saveToFile(const char* path) const noexcept = 0;
112 
121  virtual ResultValue<FSDKError, uint32_t> getExpirationDate(LicenseFeature feature) const noexcept = 0;
122 
129  virtual Result<FSDKError> getLicenseType(int& licenseType) const noexcept = 0;
130  };
131 
132 } // namespace fsdk
#define DECLARE_SMARTPTR(X)
Smart ptr declaration helper macro.
Definition: Def.h:56
FSDK_DEPRECATED("loadFromFile is deprecated since v.5.5.0,"" Use loadFromFile(const char* path, const ISettingsProvider* settings) instead") virtual Result< FSDKError > loadFromFile(const char *path) noexcept=0
Loads license from file.
A structure that encapsulates an action result enumeration.
Definition: Result.h:27
char data[max_size]
The internal buffer to store the fingerprint data.
Definition: ILicense.h:59
virtual Result< FSDKError > getLicenseType(int &licenseType) const noexcept=0
Gets license type.
virtual Result< FSDKError > saveToFile(const char *path) const noexcept=0
Saves license as raw format to the file. This file could be used in the next run of the application...
Object system types and interfaces.
License objects interface.
Definition: ILicense.h:66
Common SDK error codes.
Base strong reference counted object interface.
Definition: IRefCounted.h:37
virtual ResultValue< FSDKError, uint32_t > getExpirationDate(LicenseFeature feature) const noexcept=0
Gets license expiration date.
LicenseFeature
License features.
Definition: ILicense.h:15
constexpr const char * to_string() const
Returns the fingerprint as a string with zero end.
Definition: ILicense.h:54
Addon for Result to output some value aside the result. Specialization for copiable types...
Definition: ResultValue.h:21
virtual ResultValue< FSDKError, bool > checkFeatureId(LicenseFeature feature) const noexcept=0
Checks if the feature with featureId is available in this license.
virtual ResultValue< FSDKError, bool > isActivated() const noexcept=0
Checks if current license object is activated and could be used by FaceEngine.
Fingreprint structure.
Definition: ILicense.h:47
Detection structure. Stores a detected bounding box within a source image rect.
Definition: Detection.h:10
virtual Result< FSDKError > loadFromFile(const char *path, const ISettingsProvider *settings) noexcept=0
Loads license from file.
static constexpr uint16_t max_size
&lt; The maximum size of the fingerprint data
Definition: ILicense.h:49
SDK settings provider interface.
Definition: ISettingsProvider.h:32