Face Engine SDK  5.26.0
A face detection, recognition and tracking engine.
include/fsdk/IFaceEnginePos.h
00001 #pragma once
00002 
00003 #include <fsdk/Log.h>
00004 #include <fsdk/Def.h>
00005 #include <fsdk/IObject.h>
00006 #include <fsdk/ILicense.h>
00007 #include <fsdk/IDetector.h>
00008 #include <fsdk/IDescriptor.h>
00009 #include <fsdk/ISettingsProvider.h>
00010 #include <fsdk/IWarper.h>
00011 
00012 #include <fsdk/Estimators/IHeadPoseEstimator.h>
00013 #include <fsdk/Estimators/IGlassesEstimator.h>
00014 #include <fsdk/Estimators/IMedicalMaskEstimator.h>
00015 #include <fsdk/Estimators/INIRLivenessEstimator.h>
00016 #include <fsdk/Estimators/IQualityEstimator.h>
00017 
00018 #include <fsdk/Types/FaceEngineEdition.h>
00019 
00042 
00043 namespace fsdk {
00044 
00045 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00046     DECLARE_SMARTPTR(IFaceEnginePos);
00047 #endif
00048 
00058     struct IFaceEnginePos : IRefCounted {
00059 
00064         virtual ResultValue<FSDKError, IDetectorPtr> createDetector() noexcept = 0;
00065 
00070         virtual ResultValue<FSDKError, IHeadPoseEstimatorPtr> createHeadPoseEstimator() noexcept = 0;
00071 
00077         virtual ResultValue<FSDKError, IMedicalMaskEstimatorPtr> createMedicalMaskEstimator() noexcept = 0;
00078 
00084         virtual ResultValue<FSDKError, IGlassesEstimatorPtr> createGlassesEstimator() noexcept = 0;
00085 
00091         virtual ResultValue<FSDKError, IQualityEstimatorPtr> createQualityEstimator() noexcept = 0;
00092 
00100         virtual ResultValue<FSDKError, INIRLivenessEstimatorPtr>
00101         createNIRLivenessEstimator(const NIRLivenessMode mode = NIRLivenessMode::Default) noexcept = 0;
00102 
00111         virtual ResultValue<FSDKError, IDescriptorPtr> createDescriptor(uint32_t version = 0) noexcept = 0;
00112 
00119         virtual ResultValue<FSDKError, IDescriptorPtr>
00120         createDescriptor(IArchive* archive, uint32_t flags = 0) noexcept = 0;
00121 
00132         virtual ResultValue<FSDKError, IDescriptorBatchPtr>
00133         createDescriptorBatch(int32_t size, uint32_t version = 0) noexcept = 0;
00134 
00144         virtual ResultValue<FSDKError, IDescriptorExtractorPtr>
00145         createExtractor(uint32_t version = 0) noexcept = 0;
00146 
00155         virtual ResultValue<FSDKError, IDescriptorMatcherPtr> createMatcher(uint32_t version = 0) noexcept = 0;
00156 
00161         virtual ResultValue<FSDKError, IWarperPtr> createWarper() noexcept = 0;
00162 
00170         virtual FaceEngineEdition getFaceEngineEdition() const noexcept = 0;
00171 
00176         virtual void setDataDirectory(const char* path) noexcept = 0;
00177 
00183         virtual const char* getDataDirectory() const noexcept = 0;
00184 
00189         virtual void setSettingsProvider(ISettingsProvider* provider) noexcept = 0;
00190 
00195         virtual void setRuntimeSettingsProvider(ISettingsProvider* provider) noexcept = 0;
00196 
00201         virtual ISettingsProvider* getSettingsProvider() const noexcept = 0;
00202 
00207         virtual ISettingsProvider* getRuntimeSettingsProvider() const noexcept = 0;
00208 
00213         virtual ILicense* getLicense() const noexcept = 0;
00214     };
00215 
00222     FSDK_API Result<FSDKError> activateLicense(ILicense* license, const char* configPath) noexcept;
00223 
00230     FSDK_API Result<FSDKError> activateLicense(ILicense* license, ISettingsProvider* settings) noexcept;
00231 
00240     FSDK_API ResultValue<FSDKError, IFaceEnginePosPtr> createFaceEngineMobile(
00241         const char* dataPath = nullptr,
00242         const char* configPath = nullptr,
00243         const char* runtimePath = nullptr) noexcept;
00244 
00250     FSDK_API ResultValue<FSDKError, ISettingsProviderPtr> createSettingsProvider(const char* path) noexcept;
00251 
00258     FSDK_API ResultValue<FSDKError, ISettingsProviderPtr>
00259     createSettingsProviderFromString(const char* content) noexcept;
00260 
00261 
00262 } // namespace fsdk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines