Cortex  10.0.0-a4
Export.h
1 //
3 // Copyright (c) 2012, John Haddon. All rights reserved.
4 // Copyright (c) 2013, Image Engine Design Inc. All rights reserved.
5 //
6 // Redistribution and use in source and binary forms, with or without
7 // modification, are permitted provided that the following conditions are
8 // met:
9 //
10 // * Redistributions of source code must retain the above copyright
11 // notice, this list of conditions and the following disclaimer.
12 //
13 // * Redistributions in binary form must reproduce the above copyright
14 // notice, this list of conditions and the following disclaimer in the
15 // documentation and/or other materials provided with the distribution.
16 //
17 // * Neither the name of Image Engine Design nor the names of any
18 // other contributors to this software may be used to endorse or
19 // promote products derived from this software without specific prior
20 // written permission.
21 //
22 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
23 // IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
24 // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
25 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
26 // CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
27 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
28 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
29 // PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
30 // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
31 // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
32 // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33 //
35 
36 #ifndef IE_CORE_EXPORT_H
37 #define IE_CORE_EXPORT_H
38 
39 // define platform-specific macros for importing/exporting symbols
40 #ifdef _MSC_VER
41  #define IECORE_IMPORT __declspec(dllimport)
42  #define IECORE_EXPORT __declspec(dllexport)
43 #else
44  #define IECORE_IMPORT
45  #define IECORE_EXPORT
46 #endif
47 
48 // define IECORE_API macro based on whether or not we are compiling IECore,
49 // or including headers for linking to it. the IECORE_API macro is the one that is
50 // used in the class definitions.
51 #ifdef IECORE_EXPORTS
52  #define IECORE_API IECORE_EXPORT
53 #else
54  #define IECORE_API IECORE_IMPORT
55 #endif
56 
57 #endif // #ifndef IE_CORE_EXPORT_H