Lunchbox  1.9.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
api.h
Go to the documentation of this file.
1 /* Copyright (c) 2014 Stefan.Eilemann@epfl.ch */
2 
8 #ifndef LUNCHBOX_API_H
9 #define LUNCHBOX_API_H
10 
11 #include <lunchbox/defines.h>
12 
13 #if defined(_MSC_VER) || defined(__declspec)
14 # define LUNCHBOX_DLLEXPORT __declspec(dllexport)
15 # define LUNCHBOX_DLLIMPORT __declspec(dllimport)
16 #else // _MSC_VER
17 # define LUNCHBOX_DLLEXPORT
18 # define LUNCHBOX_DLLIMPORT
19 #endif // _MSC_VER
20 
21 #if defined(LUNCHBOX_STATIC)
22 # define LUNCHBOX_API
23 #elif defined(LUNCHBOX_SHARED)
24 # define LUNCHBOX_API LUNCHBOX_DLLEXPORT
25 #else
26 # define LUNCHBOX_API LUNCHBOX_DLLIMPORT
27 #endif
28 
29 #if defined(LUNCHBOX_SHARED_INL)
30 # define LUNCHBOX_INL LUNCHBOX_DLLEXPORT
31 #else
32 # define LUNCHBOX_INL LUNCHBOX_DLLIMPORT
33 #endif
34 
35 #endif