Optimize Plugin connect & run API, use const maps
[ardour.git] / libs / zita-convolver / zita-convolver / zconvolver_visibility.h
1 #ifndef __libzconvolver_visibility_h__
2 #define __libzconvolver_visibility_h__
3
4 #if defined(COMPILER_MSVC)
5   #define LIBZCONVOLVER_DLL_IMPORT __declspec(dllimport)
6   #define LIBZCONVOLVER_DLL_EXPORT __declspec(dllexport)
7   #define LIBZCONVOLVER_DLL_LOCAL
8 #else
9   #define LIBZCONVOLVER_DLL_IMPORT __attribute__ ((visibility ("default")))
10   #define LIBZCONVOLVER_DLL_EXPORT __attribute__ ((visibility ("default")))
11   #define LIBZCONVOLVER_DLL_LOCAL  __attribute__ ((visibility ("hidden")))
12 #endif
13
14 #ifdef LIBZCONVOLVER_STATIC // libzita-convolver is a DLL
15   #define LIBZCONVOLVER_API
16   #define LIBZCONVOLVER_LOCAL
17   #define LIBZCONVOLVER_TEMPLATE_API
18   #define LIBZCONVOLVER_TEMPLATE_MEMBER_API
19 #else
20   #ifdef LIBZCONVOLVER_DLL_EXPORTS // defined if we are building the libzita-convolver DLL (instead of using it)
21     #define LIBZCONVOLVER_API LIBZCONVOLVER_DLL_EXPORT
22     #define LIBZCONVOLVER_TEMPLATE_API LIBZCONVOLVER_TEMPLATE_DLL_EXPORT
23     #define LIBZCONVOLVER_TEMPLATE_MEMBER_API LIBZCONVOLVER_TEMPLATE_MEMBER_DLL_EXPORT
24   #else
25     #define LIBZCONVOLVER_API LIBZCONVOLVER_DLL_IMPORT
26     #define LIBZCONVOLVER_TEMPLATE_API LIBZCONVOLVER_TEMPLATE_DLL_IMPORT
27     #define LIBZCONVOLVER_TEMPLATE_MEMBER_API LIBZCONVOLVER_TEMPLATE_MEMBER_DLL_IMPORT
28   #endif
29   #define LIBZCONVOLVER_LOCAL LIBZCONVOLVER_DLL_LOCAL
30 #endif
31
32 #endif