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

Loading...
Searching...
No Matches
IFaceEngineMobile.h
1#pragma once
2
3#include <fsdk/Log.h>
4#include <fsdk/Def.h>
5#include <fsdk/IObject.h>
6#include <fsdk/ILicense.h>
7#include <fsdk/IDetector.h>
8#include <fsdk/IDescriptor.h>
9#include <fsdk/ISettingsProvider.h>
10#include <fsdk/IWarper.h>
11
12#include <fsdk/Estimators/IAGSEstimator.h>
13#include <fsdk/Estimators/IHeadPoseEstimator.h>
14#include <fsdk/Estimators/IEyeEstimator.h>
15#include <fsdk/Estimators/IFaceOcclusionEstimator.h>
16#include <fsdk/Estimators/IGazeEstimator.h>
17#include <fsdk/Estimators/IGlassesEstimator.h>
18#include <fsdk/Estimators/IBestShotQualityEstimator.h>
19#include <fsdk/Estimators/ILivenessOneShotRGBEstimator.h>
20#include <fsdk/Estimators/IMedicalMaskEstimator.h>
21#include <fsdk/Estimators/IMouthEstimator.h>
22#include <fsdk/Estimators/IQualityEstimator.h>
23#include <fsdk/Estimators/ISubjectiveQualityEstimator.h>
24
25#include <fsdk/Types/FaceEngineEdition.h>
26
50 namespace fsdk {
51
52#ifndef DOXYGEN_SHOULD_SKIP_THIS
53 DECLARE_SMARTPTR(IFaceEngineMobile);
54#endif
55
65 struct IFaceEngineMobile : IRefCounted {
66
71 virtual ResultValue<FSDKError, IDetectorPtr> createDetector() noexcept = 0;
72
77 virtual ResultValue<FSDKError, IHeadPoseEstimatorPtr> createHeadPoseEstimator() noexcept = 0;
78
83 virtual ResultValue<FSDKError, IAGSEstimatorPtr> createAGSEstimator() noexcept = 0;
84
89 virtual ResultValue<FSDKError, IEyeEstimatorPtr> createEyeEstimator() noexcept = 0;
90
96 virtual ResultValue<FSDKError, IMedicalMaskEstimatorPtr> createMedicalMaskEstimator() noexcept = 0;
97
103 virtual ResultValue<FSDKError, IGazeEstimatorPtr>
104 createGazeEstimator(SensorType mode = SensorType::Visible) noexcept = 0;
105
111 virtual ResultValue<FSDKError, IGlassesEstimatorPtr> createGlassesEstimator() noexcept = 0;
112
118 FSDK_DEPRECATED("createQualityEstimator is deprecated since v.5.32.0, "
119 "use createSubjectiveQualityEstimator instead!")
120 virtual ResultValue<FSDKError, IQualityEstimatorPtr> createQualityEstimator() noexcept = 0;
121
127 virtual ResultValue<FSDKError, ISubjectiveQualityEstimatorPtr>
128 createSubjectiveQualityEstimator() noexcept = 0;
129
134 virtual ResultValue<FSDKError, IBestShotQualityEstimatorPtr>
135 createBestShotQualityEstimator() noexcept = 0;
136
141 virtual ResultValue<FSDKError, ILivenessOneShotRGBEstimatorPtr>
142 createLivenessOneShotRGBEstimator() noexcept = 0;
143
149 virtual ResultValue<FSDKError, IMouthEstimatorPtr> createMouthEstimator() noexcept = 0;
150
151
157 virtual ResultValue<FSDKError, IFaceOcclusionEstimatorPtr> createFaceOcclusionEstimator() noexcept = 0;
158
167 virtual ResultValue<FSDKError, IDescriptorPtr> createDescriptor(uint32_t version = 0) noexcept = 0;
168
175 virtual ResultValue<FSDKError, IDescriptorPtr>
176 createDescriptor(IArchive* archive, uint32_t flags = 0) noexcept = 0;
177
188 virtual ResultValue<FSDKError, IDescriptorBatchPtr>
189 createDescriptorBatch(int32_t size, uint32_t version = 0) noexcept = 0;
190
200 virtual ResultValue<FSDKError, IDescriptorExtractorPtr>
201 createExtractor(uint32_t version = 0) noexcept = 0;
202
211 virtual ResultValue<FSDKError, IDescriptorMatcherPtr> createMatcher(uint32_t version = 0) noexcept = 0;
212
217 virtual ResultValue<FSDKError, IWarperPtr> createWarper() noexcept = 0;
218
226 virtual FaceEngineEdition getFaceEngineEdition() const noexcept = 0;
227
232 virtual void setDataDirectory(const char* path) noexcept = 0;
233
239 virtual const char* getDataDirectory() const noexcept = 0;
240
245 virtual void setSettingsProvider(ISettingsProvider* provider) noexcept = 0;
246
251 virtual void setRuntimeSettingsProvider(ISettingsProvider* provider) noexcept = 0;
252
257 virtual ISettingsProvider* getSettingsProvider() const noexcept = 0;
258
263 virtual ISettingsProvider* getRuntimeSettingsProvider() const noexcept = 0;
264
269 virtual ILicense* getLicense() const noexcept = 0;
270 };
271
280 FSDK_API Result<FSDKError> activateLicense(ILicense* license, const char* configPath) noexcept;
281
290 FSDK_API Result<FSDKError> activateLicense(ILicense* license, ISettingsProvider* settings) noexcept;
291
297 FSDK_API ResultValue<FSDKError, Fingerprint> getFingerprint(const ISettingsProvider* settings) noexcept;
298
307 FSDK_API ResultValue<FSDKError, IFaceEngineMobilePtr> createFaceEngineMobile(
308 const char* dataPath = nullptr,
309 const char* configPath = nullptr,
310 const char* runtimePath = nullptr) noexcept;
311
317 FSDK_API ResultValue<FSDKError, ISettingsProviderPtr> createSettingsProvider(const char* path) noexcept;
318
325 FSDK_API ResultValue<FSDKError, ISettingsProviderPtr>
326 createSettingsProviderFromString(const char* content) noexcept;
327
328} // namespace fsdk
FSDK_API
#define FSDK_API
Dummy.
Definition Def.h:27
fsdk::IFaceEngineMobile::createLivenessOneShotRGBEstimator
virtual ResultValue< FSDKError, ILivenessOneShotRGBEstimatorPtr > createLivenessOneShotRGBEstimator() noexcept=0
Creates Liveness OneShot estimator.
fsdk::IFaceEngineMobile::getLicense
virtual ILicense * getLicense() const noexcept=0
Get current License object, which was set for FaceEngine object.
fsdk::IFaceEngineMobile::createExtractor
virtual ResultValue< FSDKError, IDescriptorExtractorPtr > createExtractor(uint32_t version=0) noexcept=0
Creates descriptor extractor.
fsdk::IFaceEngineMobile::createDetector
virtual ResultValue< FSDKError, IDetectorPtr > createDetector() noexcept=0
Creates a detector of given type.
fsdk::activateLicense
FSDK_API Result< FSDKError > activateLicense(ILicense *license, const char *configPath) noexcept
Makes License activation with some platform specific manner. Network connection is required.
fsdk::IFaceEngineMobile::setDataDirectory
virtual void setDataDirectory(const char *path) noexcept=0
Sets data directory.
fsdk::IFaceEngineMobile::createGazeEstimator
virtual ResultValue< FSDKError, IGazeEstimatorPtr > createGazeEstimator(SensorType mode=SensorType::Visible) noexcept=0
Creates Gaze estimator.
fsdk::IFaceEngineMobile::createGlassesEstimator
virtual ResultValue< FSDKError, IGlassesEstimatorPtr > createGlassesEstimator() noexcept=0
Creates Glasses estimator.
fsdk::IFaceEngineMobile::setRuntimeSettingsProvider
virtual void setRuntimeSettingsProvider(ISettingsProvider *provider) noexcept=0
Sets runtime settings provider.
fsdk::IFaceEngineMobile::createFaceOcclusionEstimator
virtual ResultValue< FSDKError, IFaceOcclusionEstimatorPtr > createFaceOcclusionEstimator() noexcept=0
Creates FaceOcclusion estimator.
fsdk::IFaceEngineMobile::createDescriptor
virtual ResultValue< FSDKError, IDescriptorPtr > createDescriptor(uint32_t version=0) noexcept=0
Creates Descriptor.
fsdk::createFaceEngineMobile
FSDK_API ResultValue< FSDKError, IFaceEngineMobilePtr > createFaceEngineMobile(const char *dataPath=nullptr, const char *configPath=nullptr, const char *runtimePath=nullptr) noexcept
Create the LUNA SDK root object.
fsdk::IFaceEngineMobile::createBestShotQualityEstimator
virtual ResultValue< FSDKError, IBestShotQualityEstimatorPtr > createBestShotQualityEstimator() noexcept=0
Creates BestShotQuality estimator.
fsdk::IFaceEngineMobile::createWarper
virtual ResultValue< FSDKError, IWarperPtr > createWarper() noexcept=0
Creates warper.
fsdk::IFaceEngineMobile::getFaceEngineEdition
virtual FaceEngineEdition getFaceEngineEdition() const noexcept=0
Get LUNA SDK ditribution edition.
fsdk::IFaceEngineMobile::createMouthEstimator
virtual ResultValue< FSDKError, IMouthEstimatorPtr > createMouthEstimator() noexcept=0
Creates Mouth estimator.
fsdk::createSettingsProviderFromString
FSDK_API ResultValue< FSDKError, ISettingsProviderPtr > createSettingsProviderFromString(const char *content) noexcept
Creates a settings provider from the xml-formatted string.
fsdk::IFaceEngineMobile::getSettingsProvider
virtual ISettingsProvider * getSettingsProvider() const noexcept=0
Gets settings provider.
fsdk::IFaceEngineMobile::setSettingsProvider
virtual void setSettingsProvider(ISettingsProvider *provider) noexcept=0
Sets settings provider.
fsdk::getFingerprint
FSDK_API ResultValue< FSDKError, Fingerprint > getFingerprint(const ISettingsProvider *settings) noexcept
Gets the device fingerprint which could be used for the offline activation.
fsdk::IFaceEngineMobile::createEyeEstimator
virtual ResultValue< FSDKError, IEyeEstimatorPtr > createEyeEstimator() noexcept=0
Creates Eye estimator.
fsdk::IFaceEngineMobile::createDescriptorBatch
virtual ResultValue< FSDKError, IDescriptorBatchPtr > createDescriptorBatch(int32_t size, uint32_t version=0) noexcept=0
Creates Batch of descriptors.
fsdk::createSettingsProvider
FSDK_API ResultValue< FSDKError, ISettingsProviderPtr > createSettingsProvider(const char *path) noexcept
Create a settings provider.
fsdk::IFaceEngineMobile::createMatcher
virtual ResultValue< FSDKError, IDescriptorMatcherPtr > createMatcher(uint32_t version=0) noexcept=0
Creates descriptor matcher.
fsdk::IFaceEngineMobile::getRuntimeSettingsProvider
virtual ISettingsProvider * getRuntimeSettingsProvider() const noexcept=0
Gets runtime settings provider.
fsdk::IFaceEngineMobile::createMedicalMaskEstimator
virtual ResultValue< FSDKError, IMedicalMaskEstimatorPtr > createMedicalMaskEstimator() noexcept=0
Creates MedicalMask estimator.
DECLARE_SMARTPTR
#define DECLARE_SMARTPTR(X)
Smart ptr declaration helper macro.
Definition Def.h:56
fsdk::IFaceEngineMobile::createAGSEstimator
virtual ResultValue< FSDKError, IAGSEstimatorPtr > createAGSEstimator() noexcept=0
Creates AGS estimator.
fsdk::IFaceEngineMobile::createSubjectiveQualityEstimator
virtual ResultValue< FSDKError, ISubjectiveQualityEstimatorPtr > createSubjectiveQualityEstimator() noexcept=0
Creates Subjective quality estimator.
fsdk::IFaceEngineMobile::createHeadPoseEstimator
virtual ResultValue< FSDKError, IHeadPoseEstimatorPtr > createHeadPoseEstimator() noexcept=0
Creates Head pose estimator.
fsdk::IFaceEngineMobile::getDataDirectory
virtual const char * getDataDirectory() const noexcept=0
Gets data directory.
fsdk
SDK namespace.
Definition IAGSEstimator.h:8
fsdk::SensorType
SensorType
Sensor type structure. Determines which type of camera sensor is used to perform face recognition.
Definition SensorType.h:9
fsdk::SensorType::Visible
@ Visible
Visible sensor type.
fsdk::FSDKError
FSDKError
Common SDK error codes.
Definition FSDKError.h:17
fsdk::Fingerprint
Fingreprint structure.
Definition ILicense.h:47
fsdk::IArchive
Archive interface.
Definition IObject.h:38
fsdk::IFaceEngineMobile
Root LUNA SDK object interface.
Definition IFaceEngineMobile.h:65
fsdk::ILicense
License objects interface.
Definition ILicense.h:84
fsdk::IRefCounted
Base strong reference counted object interface.
Definition IRefCounted.h:37
fsdk::ISettingsProvider
SDK settings provider interface.
Definition ISettingsProvider.h:32
fsdk::Result
A structure that encapsulates an action result enumeration.
Definition Result.h:27
fsdk::ResultValue
Addon for Result to output some value aside the result. Specialization for copiable types.
Definition ResultValue.h:21