SimpleITK  
sitkExplicit.h
Go to the documentation of this file.
1/*=========================================================================
2 *
3 * Copyright NumFOCUS
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18#ifndef sitkExplicit_h
19#define sitkExplicit_h
20
21#include "sitkMacro.h"
22#if defined(SITKDLL) && !defined(SITK_SimpleITKExplit_STATIC)
23# ifdef SimpleITKExplicit_EXPORTS
24# define SITKExplicit_EXPORT SITK_ABI_EXPORT
25# else
26# define SITKExplicit_EXPORT SITK_ABI_IMPORT
27# endif /* SimpleITKExplicit_EXPORTS */
28#else
29// Don't hide symbols in the static SimpleITKExplicit library in case
30// -fvisibility=hidden is used
31# define SITKExplicit_EXPORT
32#endif
33
34#define SITKExplicit_HIDDEN SITK_ABI_HIDDEN
35
36
37#if defined(SimpleITKExplicit_EXPORTS)
38// don't use export
39# define SITKExplicit_EXPORT_EXPLICIT
40#else
41// only import/hidden
42# define SITKExplicit_EXPORT_EXPLICIT SITKExplicit_EXPORT
43#endif
44
45#endif // sitkExplicit_h