CppWAMP
C++11 client library for the WAMP protocol
api.hpp
Go to the documentation of this file.
1 /*------------------------------------------------------------------------------
2  Copyright Butterfly Energy Systems 2022.
3  Distributed under the Boost Software License, Version 1.0.
4  http://www.boost.org/LICENSE_1_0.txt
5 ------------------------------------------------------------------------------*/
6 
7 #ifndef CPPWAMP_API_HPP
8 #define CPPWAMP_API_HPP
9 
10 //------------------------------------------------------------------------------
13 //------------------------------------------------------------------------------
14 
15 #ifdef CPPWAMP_COMPILED_LIB
16 # define CPPWAMP_INLINE
17 # if defined _WIN32 || defined __CYGWIN__
18 # define CPPWAMP_API_IMPORT __declspec(dllimport)
19 # define CPPWAMP_API_EXPORT __declspec(dllexport)
20 # define CPPWAMP_API_HIDDEN
21 # else
22 # define CPPWAMP_API_IMPORT __attribute__((visibility("default")))
23 # define CPPWAMP_API_EXPORT __attribute__((visibility("default")))
24 # define CPPWAMP_API_HIDDEN __attribute__((visibility("hidden")))
25 # endif
26 # ifdef CPPWAMP_IS_STATIC
27 # define CPPWAMP_API
28 # define CPPWAMP_HIDDEN
29 # else
30 # ifdef cppwamp_core_EXPORTS // We are building this library
31 # define CPPWAMP_API CPPWAMP_API_EXPORT
32 # else // We are using this library
33 # define CPPWAMP_API CPPWAMP_API_IMPORT
34 # endif
35 # define CPPWAMP_HIDDEN CPPWAMP_API_HIDDEN
36 # endif
37 #else
38 # define CPPWAMP_INLINE inline
39 # define CPPWAMP_API
40 # define CPPWAMP_HIDDEN
41 #endif
42 
43 #endif // CPPWAMP_JSON_API_HPP