JKQTPlotter
trunk/v5.0.0
an extensive Qt5+Qt6 Plotter framework (including a feature-richt plotter widget, a speed-optimized, but limited variant and a LaTeX equation renderer!), written fully in C/C++ and without external dependencies
Main Page
Related Pages
Topics
Namespaces
Classes
Loading...
Searching...
No Matches
jkqtplotter_imexport.h
1
#ifndef JKQTPLOTTER_IMPORT_H
2
#define JKQTPLOTTER_IMPORT_H
3
4
5
/*
6
Copyright (c) 2008-2024 Jan W. Krieger (<jan@jkrieger.de>)
7
8
last modification: $LastChangedDate: 2015-04-02 13:55:22 +0200 (Do, 02 Apr 2015) $ (revision $Rev: 3902 $)
9
10
This software is free software: you can redistribute it and/or modify
11
it under the terms of the GNU Lesser General Public License (LGPL) as published by
12
the Free Software Foundation, either version 2.1 of the License, or
13
(at your option) any later version.
14
15
This program 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 (LGPL) for more details.
19
20
You should have received a copy of the GNU Lesser General Public License (LGPL)
21
along with this program. If not, see <http://www.gnu.org/licenses/>.
22
*/
23
24
25
26
27
/*! \def JKQTPLOTTER_LIB_EXPORT
28
\ingroup jkqtpplottersupprt
29
30
This define allows to export functions and classes from the jkqtcommon-library when building a dynamic/shared library.
31
Usage is as follows:
32
\code
33
#include "jkqtplotter/jkqtplotter_imexport.h.h"
34
35
class JKQTPLOTTER_LIB_EXPORT exportedClassName {
36
...
37
};
38
39
JKQTPLOTTER_LIB_EXPORT void exportedFunctionName();
40
\endcode
41
42
These macros append the appropriate \c Q_DECL_EXPORT and \c Q_DECL_IMPORT
43
to the function/class body and thus tell windows compilers to export these sysmbols from
44
the shared library, or import them from a shared library.
45
46
Note that these attributes are only necessary on windows systems!
47
48
These macros are controlled by two other macros:
49
- \c JKQTPLOTTER_LIB_IN_DLL declares that the application should link against a shared version of
50
JKQTPlotter, i.e. \c JKQTPlotterSharedLib_XYZ .
51
This needs to be defined while compiling the library and while compiling
52
any application linking against \c JKQTPlotterSharedLib_XYZ.
53
- \c JKQTPLOTTER_LIB_EXPORT_LIBRARY is only defined while compiling JKQTPlotter into \c JKQTPlotterSharedLib_XYZ
54
and ensures thet the symbols are exported. If it is not defined (e.g. while
55
compiling an application), the symbols are imported
56
.
57
58
*/
59
60
// necessary to add this define to the Doxygen autodoc!!!
61
#ifdef DOXYGEN
62
# define JKQTPLOTTER_LIB_IN_DLL
63
#endif
64
/*! \def JKQTPLOTTER_LIB_IN_DLL
65
\ingroup jkqtpplottersupprt
66
\brief declares that the application should link against a shared version of
67
JKQTPlotter, i.e. \c JKQTPlotterSharedLib_XYZ .
68
This needs to be defined while compiling the library and while compiling
69
any application linking against \c JKQTPlotterSharedLib_XYZ.
70
*/
71
72
// necessary to add this define to the Doxygen autodoc!!!
73
#ifdef DOXYGEN
74
# define JKQTPLOTTER_LIB_EXPORT_LIBRARY
75
#endif
76
/*! \def JKQTPLOTTER_LIB_EXPORT_LIBRARY
77
\ingroup jkqtpplottersupprt
78
\brief is only defined while compiling JKQTPlotter into \c JKQTPlotterSharedLib_XYZ
79
and ensures thet the symbols are exported. If it is not defined (e.g. while
80
compiling an application), the symbols are imported
81
*/
82
83
#include <QtCore/QtGlobal>
84
85
# ifdef JKQTPLOTTER_LIB_IN_DLL
86
# ifndef JKQTPLOTTER_LIB_EXPORT
87
# ifdef JKQTPLOTTER_LIB_EXPORT_LIBRARY
88
/* We are building this library */
89
# define JKQTPLOTTER_LIB_EXPORT Q_DECL_EXPORT
90
# else
91
/* We are using this library */
92
# define JKQTPLOTTER_LIB_EXPORT Q_DECL_IMPORT
93
# endif
94
# endif
95
# else
96
# ifndef JKQTPLOTTER_LIB_EXPORT
97
# define JKQTPLOTTER_LIB_EXPORT
98
# endif
99
# endif
100
101
102
103
104
105
106
#endif
// JKQTPLOTTER_IMPORT_H
107
lib
jkqtplotter
jkqtplotter_imexport.h
Generated on Wed Oct 30 2024 21:02:31 for JKQTPlotter by
doxygen
1.9.8