Infinity Engine v0.6.20
C++ API Documentation
Loading...
Searching...
No Matches
api.h
1#pragma once
2
3#define INFINITY_VERSION_MAJOR 0
4#define INFINITY_VERSION_MINOR 6
5#define INFINITY_VERSION_PATCH 20
6
7#if defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__NT__)
8 #define INFINITY_API_EXPORTED __declspec(dllexport)
9 #define INFINITY_API_IMPORTED __declspec(dllimport)
10
11 #if INFINITY_EXPORTS
12 #define INFINITY_API_PUBLIC INFINITY_API_EXPORTED
13 #define INFINITY_API_PRIVATE INFINITY_API_EXPORTED
14 #else
15 #define INFINITY_API_PUBLIC INFINITY_API_IMPORTED
16 #define INFINITY_API_PRIVATE INFINITY_API_IMPORTED
17 #endif
18
19 #ifdef INFINITY_EXPORT_PLUGINS
20 #define INFINITY_API_PLUGIN INFINITY_API_EXPORTED
21 #else
22 #define INFINITY_API_PLUGIN INFINITY_API_IMPORTED
23 #endif
24
25 #define INFINITY_API_TEMPLATE
26
27#elif defined(__APPLE__) || defined(__unix__)
28 #define INFINITY_API_EXPORTED __attribute__ ((visibility ("default")))
29
30 #define INFINITY_API_PUBLIC INFINITY_API_EXPORTED
31 #define INFINITY_API_PRIVATE INFINITY_API_EXPORTED
32 #define INFINITY_API_PLUGIN INFINITY_API_EXPORTED
33
34 #define INFINITY_API_TEMPLATE __attribute__((visibility("default")))
35#else
36 #define INFINITY_API_EXPORTED
37 #define INFINITY_API_IMPORTED
38 #define INFINITY_API_PUBLIC
39 #define INFINITY_API_PRIVATE
40 #define INFINITY_API_PLUGIN
41 #define INFINITY_API_TEMPLATE
42#endif
43
44#ifdef __cplusplus
45 #define INFINITY_EXTERN_C_BEGIN extern "C" {
46 #define INFINITY_EXTERN_C_END }
47#else
48 #define INFINITY_EXTERN_C_BEGIN
49 #define INFINITY_EXTERN_C_END
50#endif