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

Def.h
Go to the documentation of this file.
1
7 #pragma once
8
9 #if defined(__clang__) || defined(__GNUC__)
10 #define FSDK_DEPRECATED(msg) __attribute__((__deprecated__(msg)))
11 #elif defined(_MSC_VER)
12 #define FSDK_DEPRECATED(msg) __declspec(deprecated(msg))
13 #else
14 #define FSDK_DEPRECATED(msg)
15 #endif
16
17 #if defined(WIN32) || defined(_WIN32)
18 #if defined (SDK_DLL_EXPORTS)
19 #define FSDK_API __declspec(dllexport)
20 #else
21 #define FSDK_API __declspec(dllimport)
22 #endif
23 #else
24 #if __GNUC__ >= 4
25 #define FSDK_API __attribute__ ((visibility ("default")))
26 #else
27 #define FSDK_API
28 #endif
29 #endif
30
31 #if __APPLE__
32 #include <TargetConditionals.h>
33 #if TARGET_CPU_ARM || TARGET_CPU_ARM64
34 #define IOS
35 #endif
36 #endif // __APPLE__
37
42 // Aling value up to align so that value % align == 0.
43 #define ALIGN_UP(value, align) \
44 (((value) & (align-1)) ? \
45 (((value) + (align-1)) & ~(align-1)) : \
46 (value))
47
48 #if defined(_MSC_VER)
49 #define ALIGNED(x) __declspec(align(x))
50 #define RESTRICT __restrict
51 #define FORCE_INLINE __forceinline
52 #else
53 #define ALIGNED(x) __attribute__ ((aligned(x)))
54 #define RESTRICT __restrict__
55 #define FORCE_INLINE inline __attribute__ ((always_inline))
56 #endif
57
59 #define DECLARE_SMARTPTR(X) struct X; using X##Ptr = fsdk::Ref<X>
60
62 #define STRINGIFY2(x) #x
63
65 #define STRINGIFY(x) STRINGIFY2(x)
66 // end of CoreGroup