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

Classes | Macros | Functions
SDK core interfaces

Common interfaces and macros shared across all SDK objects. More...

## Classes
struct | fsdk::IFaceEngineMobile
| Root LUNA SDK object interface. More...
struct | fsdk::IArchive
| Archive interface. More...
struct | fsdk::ISerializableObject
| Serializable object interface. More...
struct | fsdk::ErrorTraits< ISerializableObject::Error >
| Specialized for ISerializableObject::SerializationError. More...
struct | fsdk::IDataStorageObject
| Data storage object interface helper. More...
struct | fsdk::IRefCounted
| Base strong reference counted object interface. More...
struct | fsdk::ISettingsProvider
| SDK settings provider interface. More...
struct | fsdk::ErrorTraits< ISettingsProvider::Error >
| Specialized for ISettingsProvider::ParseError. More...

## Macros
#define | ALIGN_UP(value, align)
#define | ALIGNED(x) __attribute__ ((aligned(x)))
#define | RESTRICT __restrict__
#define | FORCE_INLINE inline __attribute__ ((always_inline))
#define | DECLARE_SMARTPTR(X) struct X; using X##Ptr = fsdk::Ref<X>
| Smart ptr declaration helper macro.
#define | STRINGIFY2(x) #x
| Stringification helper macro.
#define | STRINGIFY(x) STRINGIFY2(x)
| Stringifies it's argument.

## Functions
virtual IDetector * | fsdk::IFaceEngineMobile::createDetector () noexcept=0
| Creates a detector of given type. More...
virtual IHeadPoseEstimator * | fsdk::IFaceEngineMobile::createHeadPoseEstimator () noexcept=0
| Creates Head pose estimator. More...
virtual IAGSEstimator * | fsdk::IFaceEngineMobile::createAGSEstimator () noexcept=0
| Creates AGS estimator. More...
virtual IEyeEstimator * | fsdk::IFaceEngineMobile::createEyeEstimator () noexcept=0
| Creates Eye estimator. More...
virtual IBestShotQualityEstimator * | fsdk::IFaceEngineMobile::createBestShotQualityEstimator () noexcept=0
| Creates BestShotQuality estimator. More...
virtual IDescriptor * | fsdk::IFaceEngineMobile::createDescriptor (uint32_t version=0) noexcept=0
| Creates Descriptor. More...
virtual IDescriptor * | fsdk::IFaceEngineMobile::createDescriptor (fsdk::IArchive *archive, uint32_t flags=0) noexcept=0
| Creates and loads Descriptor from Archive. More...
virtual IDescriptorBatch * | fsdk::IFaceEngineMobile::createDescriptorBatch (int32_t size, uint32_t version=0) noexcept=0
| Creates Batch of descriptors. More...
virtual IDescriptorExtractor * | fsdk::IFaceEngineMobile::createExtractor (uint32_t version=0) noexcept=0
| Creates descriptor extractor. More...
virtual IDescriptorMatcher * | fsdk::IFaceEngineMobile::createMatcher (uint32_t version=0) noexcept=0
| Creates descriptor matcher. More...
virtual IWarper * | fsdk::IFaceEngineMobile::createWarper () noexcept=0
| Creates warper. More...
virtual FaceEngineEdition | fsdk::IFaceEngineMobile::getFaceEngineEdition () const noexcept=0
| Get LUNA SDK ditribution edition. More...
virtual void | fsdk::IFaceEngineMobile::setDataDirectory (const char *path) noexcept=0
| Sets data directory. More...
virtual const char * | fsdk::IFaceEngineMobile::getDataDirectory () const noexcept=0
| Gets data directory. More...
virtual void | fsdk::IFaceEngineMobile::setSettingsProvider (ISettingsProvider *provider) noexcept=0
| Sets settings provider. More...
virtual void | fsdk::IFaceEngineMobile::setRuntimeSettingsProvider (ISettingsProvider *provider) noexcept=0
| Sets runtime settings provider. More...
virtual ISettingsProvider * | fsdk::IFaceEngineMobile::getSettingsProvider () const noexcept=0
| Gets settings provider. More...
virtual ISettingsProvider * | fsdk::IFaceEngineMobile::getRuntimeSettingsProvider () const noexcept=0
| Gets runtime settings provider. More...
virtual ILicense * | fsdk::IFaceEngineMobile::getLicense () const noexcept=0
| Get current License object, which was set for FaceEngine object. More...
FSDK_API bool | fsdk::activateLicense (ILicense *license, const char *configPath) noexcept
| Makes License activation with some platform specific manner. Network connection is required. More...
FSDK_API IFaceEngineMobile * | fsdk::createFaceEngineMobile (const char *dataPath=nullptr, const char *configPath=nullptr, const char *runtimePath=nullptr) noexcept
| Create the LUNA SDK root object. More...
FSDK_API ISettingsProvider * | fsdk::createSettingsProvider (const char *path) noexcept
| Create a settings provider. More...

## Detailed Description

Common interfaces and macros shared across all SDK objects.

## Macro Definition Documentation

## ◆ ALIGN_UP

#define ALIGN_UP | ( |  | value,
|  |  | align
| ) |  |

Value:
(((value) & (align-1)) ? \
(((value) + (align-1)) & ~(align-1)) : \
(value))

## Function Documentation

## ◆ activateLicense()

FSDK_API bool fsdk::activateLicense | ( | ILicense * | license,
|  | const char * | configPath
| ) |  |
| noexcept

Makes License activation with some platform specific manner. Network connection is required.

Parameters

  license | pointer to the license object which should be activated
  configPath | path to license.conf file with licensing settings.

Returns
  true if license was successfully activated.

## ◆ createAGSEstimator()

virtual IAGSEstimator* fsdk::IFaceEngineMobile::createAGSEstimator | ( |  | ) |
| pure virtual noexcept

Creates AGS estimator.

Returns
  AGS estimator if succeeded, null if failed.

## ◆ createBestShotQualityEstimator()

virtual IBestShotQualityEstimator* fsdk::IFaceEngineMobile::createBestShotQualityEstimator | ( |  | ) |
| pure virtual noexcept

Creates BestShotQuality estimator.

Returns
  BestShotQuality estimator if succeed, null if failed.

## ◆ createDescriptor() [1/2]

virtual IDescriptor* fsdk::IFaceEngineMobile::createDescriptor | ( | fsdk::IArchive * | archive,
|  | uint32_t | flags = `0`
| ) |  |
| pure virtual noexcept

Creates and loads Descriptor from Archive.

Parameters

  archive | Archive with descriptor.
  flags | Archive flag.

Returns
  Descriptor if succeed, null if failed.

## ◆ createDescriptor() [2/2]

virtual IDescriptor* fsdk::IFaceEngineMobile::createDescriptor | ( | uint32_t | version = `0` | ) |
| pure virtual noexcept

Creates Descriptor.

face descriptor will created by default, to create human descriptor pass version, minimum version of human descriptor is DV_MIN_HUMAN_DESCRIPTOR_VERSION == 101

See also
  fsdk::DescriptorVersion

Returns
  Descriptor if succeed, null if failed.

## ◆ createDescriptorBatch()

virtual IDescriptorBatch* fsdk::IFaceEngineMobile::createDescriptorBatch | ( | int32_t | size,
|  | uint32_t | version = `0`
| ) |  |
| pure virtual noexcept

Creates Batch of descriptors.

face descriptor batch will be created by default, to create human descriptor batch you must pass version, minimum version of human descriptor is DV_MIN_HUMAN_DESCRIPTOR_VERSION == 101

See also
  fsdk::DescriptorVersion

Parameters

  [in] | size | - amount of descriptors in batch.
  [in] | version | - descriptor version in batch. If 0 - use dafault version from config.

Returns
  Batch if succeed, null if failed.

## ◆ createDetector()

virtual IDetector* fsdk::IFaceEngineMobile::createDetector | ( |  | ) |
| pure virtual noexcept

Creates a detector of given type.

Returns
  detector object if succeeded, null if failed.

## ◆ createExtractor()

virtual IDescriptorExtractor* fsdk::IFaceEngineMobile::createExtractor | ( | uint32_t | version = `0` | ) |
| pure virtual noexcept

Creates descriptor extractor.

face descriptor extractor will created by default, to create human descriptor extractor descriptor you must pass version, minimum version of human descriptor is DV_MIN_HUMAN_DESCRIPTOR_VERSION == 101

See also
  fsdk::DescriptorVersion

Returns
  Descriptor extractor if succeed, null if failed.

## ◆ createEyeEstimator()

virtual IEyeEstimator* fsdk::IFaceEngineMobile::createEyeEstimator | ( |  | ) |
| pure virtual noexcept

Creates Eye estimator.

Returns
  Eye estimator if succeed, null if failed.

## ◆ createFaceEngineMobile()

FSDK_API IFaceEngineMobile* fsdk::createFaceEngineMobile | ( | const char * | dataPath = `nullptr`,
|  | const char * | configPath = `nullptr`,
|  | const char * | runtimePath = `nullptr`
| ) |  |
| noexcept

Create the LUNA SDK root object.

Parameters

  [in] | dataPath | [optional] path to folder with FSDK data. Default: ./data (on windows), /opt/visionlabs/data (on linux)
  [in] | configPath | [optional] path to faceengine.conf file. Default: <dataPath>/faceengine.cong
  [in] | runtimePath | [optional] path to runtime.conf file. Default: <dataPath>/runtime.cong

Returns
  face engine object if succeeded, null if failed.

## ◆ createHeadPoseEstimator()

virtual IHeadPoseEstimator* fsdk::IFaceEngineMobile::createHeadPoseEstimator | ( |  | ) |
| pure virtual noexcept

Creates Head pose estimator.

Returns
  Head pose estimator if succeeded, null if failed.

## ◆ createMatcher()

virtual IDescriptorMatcher* fsdk::IFaceEngineMobile::createMatcher | ( | uint32_t | version = `0` | ) |
| pure virtual noexcept

Creates descriptor matcher.

face descriptor matcher will created by default, to create human descriptor matcher you must pass version, minimum version of human descriptor is DV_MIN_HUMAN_DESCRIPTOR_VERSION == 101

See also
  fsdk::DescriptorVersion

Returns
  Descriptor matcher if succeed, null if failed.

## ◆ createSettingsProvider()

FSDK_API fsdk::ISettingsProvider * fsdk::createSettingsProvider | ( | const char * | path | ) |
| noexcept

Create a settings provider.

Parameters

  [in] | path | configuration file path.

Returns
  settings provider object if succeeded, null if failed.

## ◆ createWarper()

virtual IWarper* fsdk::IFaceEngineMobile::createWarper | ( |  | ) |
| pure virtual noexcept

Creates warper.

Returns
  Warper if succeed, null if failed.

## ◆ getDataDirectory()

virtual const char* fsdk::IFaceEngineMobile::getDataDirectory | ( |  | ) | const
| pure virtual noexcept

Gets data directory.

By default is set to "./data".

Returns
  path to data directory.

## ◆ getFaceEngineEdition()

virtual FaceEngineEdition fsdk::IFaceEngineMobile::getFaceEngineEdition | ( |  | ) | const
| pure virtual noexcept

Get LUNA SDK ditribution edition.

Returns
  Edition of LUNA SDK instance. Posible values:
  - CompleteEdition - full edition with all function.
  - FrontEndEdition - short edition with excluded descriptor functions. Extractor, matcher, descriptor, batch and index cannot be created.

## ◆ getLicense()

virtual ILicense* fsdk::IFaceEngineMobile::getLicense | ( |  | ) | const
| pure virtual noexcept

Get current License object, which was set for FaceEngine object.

Returns
  pointer to current license object, nullptr if no any license was set to.

## ◆ getRuntimeSettingsProvider()

virtual ISettingsProvider* fsdk::IFaceEngineMobile::getRuntimeSettingsProvider | ( |  | ) | const
| pure virtual noexcept

Gets runtime settings provider.

Returns
  runtime settings provider.

## ◆ getSettingsProvider()

virtual ISettingsProvider* fsdk::IFaceEngineMobile::getSettingsProvider | ( |  | ) | const
| pure virtual noexcept

Gets settings provider.

Returns
  settings provider.

## ◆ setDataDirectory()

virtual void fsdk::IFaceEngineMobile::setDataDirectory | ( | const char * | path | ) |
| pure virtual noexcept

Sets data directory.

Parameters

  [in] | path | path to data directory.

## ◆ setRuntimeSettingsProvider()

virtual void fsdk::IFaceEngineMobile::setRuntimeSettingsProvider | ( | ISettingsProvider * | provider | ) |
| pure virtual noexcept

Sets runtime settings provider.

Parameters

  [in] | provider | runtime settings provider.

## ◆ setSettingsProvider()

virtual void fsdk::IFaceEngineMobile::setSettingsProvider | ( | ISettingsProvider * | provider | ) |
| pure virtual noexcept

Sets settings provider.

Parameters

  [in] | provider | settings provider.