Ardour  9.0-pre0-582-g084a23a80d
zconvolver_visibility.h
Go to the documentation of this file.
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