Computer Assited Medical Intervention Tool Kit
version 3.4
Main Page
Related Pages
Modules
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
modeling
components
mmlcomponent
MMLComponentAPI.h
Go to the documentation of this file.
1
/*****************************************************************************
2
* $CAMITK_LICENCE_BEGIN$
3
*
4
* CamiTK - Computer Assisted Medical Intervention ToolKit
5
* (c) 2001-2014 UJF-Grenoble 1, CNRS, TIMC-IMAG UMR 5525 (GMCAO)
6
*
7
* Visit http://camitk.imag.fr for more information
8
*
9
* This file is part of CamiTK.
10
*
11
* CamiTK is free software: you can redistribute it and/or modify
12
* it under the terms of the GNU Lesser General Public License version 3
13
* only, as published by the Free Software Foundation.
14
*
15
* CamiTK is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU Lesser General Public License version 3 for more details.
19
*
20
* You should have received a copy of the GNU Lesser General Public License
21
* version 3 along with CamiTK. If not, see <http://www.gnu.org/licenses/>.
22
*
23
* $CAMITK_LICENCE_END$
24
****************************************************************************/
25
26
// ----- MMLComponentAPI.h
27
#ifndef MMLCOMPONENT_API_H
28
#define MMLCOMPONENT_API_H
29
30
// -----------------------------------------------------------------------
31
//
32
// MMLCOMPONENT_API
33
//
34
// -----------------------------------------------------------------------
35
36
// The following ifdef block is the standard way of creating macros which make exporting
37
// from a DLL simpler. All files within this DLL are compiled with the COMPILE_CAMITK_API
38
// flag defined on the command line. this symbol should not be defined on any project
39
// that uses this DLL. This way any other project whose source files include this file see
40
// CAMITK_API functions as being imported from a DLL, wheras this DLL sees symbols
41
// defined with this macro as being exported.
42
43
#if defined(_WIN32) // MSVC and mingw
44
45
#ifdef COMPILE_MMLCOMPONENT_API
46
#define MMLCOMPONENT_API __declspec(dllexport)
47
#else
48
#define MMLCOMPONENT_API __declspec(dllimport)
49
#endif
50
51
#else
52
// for all other platforms CAMITK_API is defined to be "nothing"
53
#ifndef MMLCOMPONENT_API
54
#define MMLCOMPONENT_API
55
#endif
56
#endif // MSVC and mingw
57
58
// -----------------------------------------------------------------------
59
// It seems that MSVC does not understand exception specification
60
// If I understand it well, when _declspec() is used, there is a default
61
// nothrow attribute.
62
// I did not find the throw attribute. It seems that msvc is therefore ignoring the
63
// specification of the type of the exception.
64
// The compiler therefore issues a warning.
65
// The following line is to avoid this particular warning.
66
// The best would be to ask msvc not only to take the exception into account, but also
67
// its type. Anyway, I did not find how to do that anywhere, and I am not sure this is
68
// possible...
69
#if defined(_WIN32) && !defined(__MINGW32__) // MSVC only
70
#pragma warning( disable : 4290 )
71
#endif // MSVC only
72
73
#endif // MMLCOMPONENT_API_H
Generated on Fri Nov 7 2014 18:17:45 for Computer Assited Medical Intervention Tool Kit by
1.8.8