Dokit
Internal development documentation
Loading...
Searching...
No Matches
qtpokit_global.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2022-2024 Paul Colby <git@colby.id.au>
2// SPDX-License-Identifier: LGPL-3.0-or-later
3
4/*!
5 * \file
6 * Global QtPokit library macros.
7 */
8
9#ifndef QTPOKIT_GLOBAL_H
10#define QTPOKIT_GLOBAL_H
11
12#include <QtGlobal>
13
14/// \cond internal
15
16/*!
17 * QtPokit library export/import macro.
18 */
19#if defined(QTPOKIT_SHARED) || !defined(QTPOKIT_STATIC)
20# ifdef QTPOKIT_STATIC
21# error "Both QTPOKIT_SHARED and QTPOKIT_STATIC defined."
22# endif
23# if defined(QTPOKIT_LIBRARY)
24# define QTPOKIT_EXPORT Q_DECL_EXPORT
25# else
26# define QTPOKIT_EXPORT Q_DECL_IMPORT
27# endif
28#else
29# define QTPOKIT_EXPORT
30#endif
31
32/*!
33 * \def QTPOKIT_BEGIN_NAMESPACE
34 *
35 * Macro for starting the QtPokit library's top-most namespace (if one is defined).
36 *
37 * \sa QTPOKIT_END_NAMESPACE
38 * \sa QTPOKIT_NAMESPACE
39 */
40
41/*!
42 * \def QTPOKIT_END_NAMESPACE
43 *
44 * Macro for ending the QtPokit library's top-most namespace (if one is defined).
45 *
46 * \sa QTPOKIT_BEGIN_NAMESPACE
47 * \sa QTPOKIT_NAMESPACE
48 */
49
50#ifdef QTPOKIT_NAMESPACE
51 #define QTPOKIT_BEGIN_NAMESPACE namespace QTPOKIT_NAMESPACE {
52 #define QTPOKIT_END_NAMESPACE }
53#else
54 #define QTPOKIT_BEGIN_NAMESPACE
55 #define QTPOKIT_END_NAMESPACE
56#endif
57
58/// \endcond
59
60#endif // QTPOKIT_GLOBAL_H