Face Engine SDK  5.23.1
A face detection, recognition and tracking engine.
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/IGlassesEstimator.h>
17 #include <fsdk/Estimators/IBestShotQualityEstimator.h>
18 #include <fsdk/Estimators/IDepthLivenessEstimator.h>
19 #include <fsdk/Estimators/ILivenessOneShotRGBEstimator.h>
20 #include <fsdk/Estimators/ILivenessDepthRGBEstimator.h>
21 #include <fsdk/Estimators/IMedicalMaskEstimator.h>
22 #include <fsdk/Estimators/IMouthEstimator.h>
23 #include <fsdk/Estimators/INIRLivenessEstimator.h>
24 #include <fsdk/Estimators/IQualityEstimator.h>
25 
26 #include <fsdk/Types/FaceEngineEdition.h>
27 
50 namespace fsdk {
52 
53 #ifndef DOXYGEN_SHOULD_SKIP_THIS
54  DECLARE_SMARTPTR(IFaceEngineMobile);
55 #endif
56 
67 
73 
78  virtual ResultValue<FSDKError, IHeadPoseEstimatorPtr> createHeadPoseEstimator() noexcept = 0;
79 
84  virtual ResultValue<FSDKError, IAGSEstimatorPtr> createAGSEstimator() noexcept = 0;
85 
90  virtual ResultValue<FSDKError, IEyeEstimatorPtr> createEyeEstimator() noexcept = 0;
91 
97  virtual ResultValue<FSDKError, IMedicalMaskEstimatorPtr> createMedicalMaskEstimator() noexcept = 0;
98 
104  virtual ResultValue<FSDKError, IGlassesEstimatorPtr> createGlassesEstimator() noexcept = 0;
105 
111  virtual ResultValue<FSDKError, IQualityEstimatorPtr> createQualityEstimator() noexcept = 0;
112 
117  virtual ResultValue<FSDKError, IBestShotQualityEstimatorPtr>
119 
124  virtual ResultValue<FSDKError, ILivenessOneShotRGBEstimatorPtr>
126 
132  virtual ResultValue<FSDKError, IDepthLivenessEstimatorPtr> createDepthLivenessEstimator() noexcept = 0;
133 
139  virtual ResultValue<FSDKError, ILivenessDepthRGBEstimatorPtr>
141 
149  virtual ResultValue<FSDKError, INIRLivenessEstimatorPtr>
150  createNIRLivenessEstimator(const NIRLivenessMode mode = NIRLivenessMode::Default) noexcept = 0;
151 
157  virtual ResultValue<FSDKError, IMouthEstimatorPtr> createMouthEstimator() noexcept = 0;
158 
159 
165  virtual ResultValue<FSDKError, IFaceOcclusionEstimatorPtr> createFaceOcclusionEstimator() noexcept = 0;
166 
175  virtual ResultValue<FSDKError, IDescriptorPtr> createDescriptor(uint32_t version = 0) noexcept = 0;
176 
183  virtual ResultValue<FSDKError, IDescriptorPtr>
184  createDescriptor(IArchive* archive, uint32_t flags = 0) noexcept = 0;
185 
196  virtual ResultValue<FSDKError, IDescriptorBatchPtr>
197  createDescriptorBatch(int32_t size, uint32_t version = 0) noexcept = 0;
198 
208  virtual ResultValue<FSDKError, IDescriptorExtractorPtr>
209  createExtractor(uint32_t version = 0) noexcept = 0;
210 
219  virtual ResultValue<FSDKError, IDescriptorMatcherPtr> createMatcher(uint32_t version = 0) noexcept = 0;
220 
225  virtual ResultValue<FSDKError, IWarperPtr> createWarper() noexcept = 0;
226 
234  virtual FaceEngineEdition getFaceEngineEdition() const noexcept = 0;
235 
240  virtual void setDataDirectory(const char* path) noexcept = 0;
241 
247  virtual const char* getDataDirectory() const noexcept = 0;
248 
253  virtual void setSettingsProvider(ISettingsProvider* provider) noexcept = 0;
254 
259  virtual void setRuntimeSettingsProvider(ISettingsProvider* provider) noexcept = 0;
260 
265  virtual ISettingsProvider* getSettingsProvider() const noexcept = 0;
266 
271  virtual ISettingsProvider* getRuntimeSettingsProvider() const noexcept = 0;
272 
277  virtual ILicense* getLicense() const noexcept = 0;
278  };
279 
286  FSDK_API Result<FSDKError> activateLicense(ILicense* license, const char* configPath) noexcept;
287 
295 
305  const char* dataPath = nullptr,
306  const char* configPath = nullptr,
307  const char* runtimePath = nullptr) noexcept;
308 
314  FSDK_API ResultValue<FSDKError, ISettingsProviderPtr> createSettingsProvider(const char* path) noexcept;
315 
322  FSDK_API ResultValue<FSDKError, ISettingsProviderPtr>
323  createSettingsProviderFromString(const char* content) noexcept;
324 
325 } // namespace fsdk
fsdk::IFaceEngineMobile::createAGSEstimator
virtual ResultValue< FSDKError, IAGSEstimatorPtr > createAGSEstimator() noexcept=0
Creates AGS estimator.
fsdk::createSettingsProviderFromString
FSDK_API ResultValue< FSDKError, ISettingsProviderPtr > createSettingsProviderFromString(const char *content) noexcept
Creates a settings provider from the xml-formatted string.
fsdk::IFaceEngineMobile::createDetector
virtual ResultValue< FSDKError, IDetectorPtr > createDetector() noexcept=0
Creates a detector of given type.
fsdk::FSDKError
FSDKError
Common SDK error codes.
Definition: FSDKError.h:17
DECLARE_SMARTPTR
#define DECLARE_SMARTPTR(X)
Smart ptr declaration helper macro.
Definition: Def.h:56
fsdk::IFaceEngineMobile::getFaceEngineEdition
virtual FaceEngineEdition getFaceEngineEdition() const noexcept=0
Get LUNA SDK ditribution edition.
fsdk::IFaceEngineMobile::getSettingsProvider
virtual ISettingsProvider * getSettingsProvider() const noexcept=0
Gets settings provider.
fsdk::IFaceEngineMobile::getRuntimeSettingsProvider
virtual ISettingsProvider * getRuntimeSettingsProvider() const noexcept=0
Gets runtime settings provider.
fsdk::IFaceEngineMobile::createLivenessOneShotRGBEstimator
virtual ResultValue< FSDKError, ILivenessOneShotRGBEstimatorPtr > createLivenessOneShotRGBEstimator() noexcept=0
Creates Liveness OneShot estimator.
fsdk::ILicense
License objects interface.
Definition: ILicense.h:47
fsdk::IFaceEngineMobile::createLivenessDepthRGBEstimator
virtual ResultValue< FSDKError, ILivenessDepthRGBEstimatorPtr > createLivenessDepthRGBEstimator() noexcept=0
Creates Liveness Depth+RGB estimator.
fsdk
SDK namespace.
Definition: IAGSEstimator.h:8
fsdk::IFaceEngineMobile::setSettingsProvider
virtual void setSettingsProvider(ISettingsProvider *provider) noexcept=0
Sets settings provider.
fsdk::IFaceEngineMobile::createEyeEstimator
virtual ResultValue< FSDKError, IEyeEstimatorPtr > createEyeEstimator() noexcept=0
Creates Eye estimator.
fsdk::IFaceEngineMobile::setRuntimeSettingsProvider
virtual void setRuntimeSettingsProvider(ISettingsProvider *provider) noexcept=0
Sets runtime settings provider.
fsdk::IFaceEngineMobile::createDepthLivenessEstimator
virtual ResultValue< FSDKError, IDepthLivenessEstimatorPtr > createDepthLivenessEstimator() noexcept=0
Creates universal DepthLiveness estimator.
fsdk::IFaceEngineMobile::createHeadPoseEstimator
virtual ResultValue< FSDKError, IHeadPoseEstimatorPtr > createHeadPoseEstimator() noexcept=0
Creates Head pose estimator.
fsdk::createSettingsProvider
FSDK_API ResultValue< FSDKError, ISettingsProviderPtr > createSettingsProvider(const char *path) noexcept
Create a settings provider.
fsdk::ISettingsProvider
SDK settings provider interface.
Definition: ISettingsProvider.h:32
fsdk::IFaceEngineMobile::getLicense
virtual ILicense * getLicense() const noexcept=0
Get current License object, which was set for FaceEngine object.
FSDK_API
#define FSDK_API
Dummy.
Definition: Def.h:27
fsdk::IFaceEngineMobile::createDescriptorBatch
virtual ResultValue< FSDKError, IDescriptorBatchPtr > createDescriptorBatch(int32_t size, uint32_t version=0) noexcept=0
Creates Batch of descriptors.
fsdk::IArchive
Archive interface.
Definition: IObject.h:38
fsdk::NIRLivenessMode
NIRLivenessMode
NIRLiveness estimation mode. Currently, available values to select the estimation mode are: Default,...
Definition: INIRLivenessEstimator.h:23
fsdk::IFaceEngineMobile::createMouthEstimator
virtual ResultValue< FSDKError, IMouthEstimatorPtr > createMouthEstimator() noexcept=0
Creates Mouth estimator.
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::createDescriptor
virtual ResultValue< FSDKError, IDescriptorPtr > createDescriptor(uint32_t version=0) noexcept=0
Creates Descriptor.
fsdk::IFaceEngineMobile::createFaceOcclusionEstimator
virtual ResultValue< FSDKError, IFaceOcclusionEstimatorPtr > createFaceOcclusionEstimator() noexcept=0
Creates FaceOcclusion estimator.
fsdk::IFaceEngineMobile
Root LUNA SDK object interface.
Definition: IFaceEngineMobile.h:66
fsdk::Result
A structure that encapsulates an action result enumeration.
Definition: Result.h:27
fsdk::IFaceEngineMobile::createMatcher
virtual ResultValue< FSDKError, IDescriptorMatcherPtr > createMatcher(uint32_t version=0) noexcept=0
Creates descriptor matcher.
fsdk::IFaceEngineMobile::createGlassesEstimator
virtual ResultValue< FSDKError, IGlassesEstimatorPtr > createGlassesEstimator() noexcept=0
Creates Glasses estimator.
fsdk::IFaceEngineMobile::createMedicalMaskEstimator
virtual ResultValue< FSDKError, IMedicalMaskEstimatorPtr > createMedicalMaskEstimator() noexcept=0
Creates MedicalMask estimator.
fsdk::IFaceEngineMobile::createQualityEstimator
virtual ResultValue< FSDKError, IQualityEstimatorPtr > createQualityEstimator() noexcept=0
Creates Quality estimator.
fsdk::IFaceEngineMobile::createWarper
virtual ResultValue< FSDKError, IWarperPtr > createWarper() noexcept=0
Creates warper.
fsdk::IFaceEngineMobile::createBestShotQualityEstimator
virtual ResultValue< FSDKError, IBestShotQualityEstimatorPtr > createBestShotQualityEstimator() noexcept=0
Creates BestShotQuality estimator.
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::getDataDirectory
virtual const char * getDataDirectory() const noexcept=0
Gets data directory.
fsdk::IFaceEngineMobile::setDataDirectory
virtual void setDataDirectory(const char *path) noexcept=0
Sets data directory.
fsdk::IRefCounted
Base strong reference counted object interface.
Definition: IRefCounted.h:37
fsdk::IFaceEngineMobile::createNIRLivenessEstimator
virtual ResultValue< FSDKError, INIRLivenessEstimatorPtr > createNIRLivenessEstimator(const NIRLivenessMode mode=NIRLivenessMode::Default) noexcept=0
Creates NIRLiveness estimator.
fsdk::IFaceEngineMobile::createExtractor
virtual ResultValue< FSDKError, IDescriptorExtractorPtr > createExtractor(uint32_t version=0) noexcept=0
Creates descriptor extractor.
fsdk::ResultValue
Addon for Result to output some value aside the result. Specialization for copiable types.
Definition: ResultValue.h:21