Face Engine SDK  5.21.0
A face detection, recognition and tracking engine.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
IIDMap.h
1 #pragma once
2 
3 #include <fsdk/IIndex.h>
4 #include <fsdk/IRefCounted.h>
5 #include <fsdk/Types/Ref.h>
6 #include <fsdk/Types/Span.h>
7 
8 #include <cstddef>
9 
10 namespace fsdk {
11 
12 #ifndef DOXYGEN_SHOULD_SKIP_THIS
13  DECLARE_SMARTPTR(IIDMap);
14 #endif
15 
17  using DescriptorId = size_t;
18 
22  struct IIDMap : public IRefCounted {
23 
28  virtual size_t getSize() const noexcept = 0;
29 
30  /*
31  * @brief Returns new DescriptorId based on the old DescriptorId
32  */
33  virtual ResultValue<FSDKError, DescriptorId> getId(DescriptorId oldId) const noexcept = 0;
34  };
35 
36 } // namespace fsdk
#define DECLARE_SMARTPTR(X)
Smart ptr declaration helper macro.
Definition: Def.h:56
Id map interface.
Definition: IIDMap.h:22
Base strong reference counted object interface.
Definition: IRefCounted.h:37
size_t DescriptorId
Intergral type used as identification of descriptor in internal storage.
Definition: IIDMap.h:17
Addon for Result to output some value aside the result. Specialization for copiable types...
Definition: ResultValue.h:21
virtual size_t getSize() const noexcept=0
Returns size.
Reference counted object interface.