| Face Engine SDK 5.2.0 A face detection, recognition and tracking engine.

ILicense.h
1 #pragma once
2
3 #include "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 };
32
37 struct ILicense : IRefCounted {
38
39 /*
40 * @brief Checks if the feature with featureId is available in this license.
41 * @return ResultValue with error code and true if feature is available, false if there is not such feature in this
42 * license or feature is expired or license was not activated.
43 */
44 virtual fsdk::ResultValue<fsdk::FSDKError, bool> checkFeatureId(LicenseFeature feature) const noexcept = 0;
45
46 /*
47 * @brief Checks if current license object is activated and could be used by FaceEngine.
48 * @return ResultValue with error code and true if object is activated.
49 * @note License object which was not activated could not be used because all features are disabled by default.
50 */
51 virtual fsdk::ResultValue<fsdk::FSDKError, bool> isActivated() const noexcept = 0;
52
53 /*
54 * @brief Loads license from file.
55 * @param [in] path path to the file.
56 * @return Error code @see FSDKError for details.
57 */
58 virtual fsdk::Result<fsdk::FSDKError> loadFromFile(const char* path) noexcept = 0;
59
60 /*
61 * @brief Saves license as raw format to the file. This file could be used in the next run of the application.
62 * @param [in] path path to the file.
63 * @return Error code @see FSDKError for details.
64 */
65 virtual fsdk::Result<fsdk::FSDKError> saveToFile(const char * path) const noexcept = 0;
66
67 /*
68 * @param [out] timeStamp the result value
69 * @return ResultValue with error code and uint32_t Unix Timestamp.
70 * @note License settings should be set before using this method!
71 * @note License should be activated before calling this method!
72 */
73 virtual fsdk::ResultValue<fsdk::FSDKError, uint32_t> getExpirationDate(LicenseFeature feature) const noexcept = 0;
74 };
75 }
DECLARE_SMARTPTR
#define DECLARE_SMARTPTR(X)
Smart ptr declaration helper macro.
Definition: Def.h:59
IObject.h
Object system types and interfaces.
fsdk::ILicense
License objects interface.
Definition: ILicense.h:37
fsdk
SDK namespace.
Definition: IAGSEstimator.h:8
fsdk::LicenseFeature
LicenseFeature
License features.
Definition: ILicense.h:15
fsdk::Detection
Detection structure. @detail Stores a detected bounding box within a source image rect.
Definition: Detection.h:10
fsdk::Result
A structure that encapsulates an action result enumeration.
Definition: Result.h:30
fsdk::IRefCounted
Base strong reference counted object interface.
Definition: IRefCounted.h:36
fsdk::ResultValue
Addon for Result to output some value aside the result. Specialization for copiable types.
Definition: ResultValue.h:21