HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
IexExport.h
Go to the documentation of this file.
1 //
2 // SPDX-License-Identifier: BSD-3-Clause
3 // Copyright (c) Contributors to the OpenEXR Project.
4 //
5 
6 #ifndef INCLUDED_IEXEXPORT_H
7 #define INCLUDED_IEXEXPORT_H
8 
9 #include "OpenEXRConfig.h"
10 
11 #if defined(OPENEXR_DLL)
12 
13 // when building as a DLL for windows, typical dllexport / import case
14 // where we need to switch depending on whether we are compiling
15 // internally or not
16 
17 # if defined(IEX_EXPORTS)
18 # define IEX_EXPORT __declspec(dllexport)
19 # else
20 # define IEX_EXPORT __declspec(dllimport)
21 # endif
22 
23 // DLLs don't support these types of visibility controls, just leave them as empty
24 # define IEX_EXPORT_TYPE
25 # define IEX_EXPORT_ENUM
26 
27 #else // OPENEXR_DLL
28 
29 // just pass these through from the top level config
30 # define IEX_EXPORT OPENEXR_EXPORT
31 # define IEX_EXPORT_TYPE OPENEXR_EXPORT_TYPE
32 # define IEX_EXPORT_ENUM OPENEXR_EXPORT_ENUM
33 
34 #endif // OPENEXR_DLL
35 
36 #endif // #ifndef INCLUDED_IEXEXPORT_H