-
Notifications
You must be signed in to change notification settings - Fork 7
/
RTToolboxConfigure.h.in
94 lines (82 loc) · 3.56 KB
/
RTToolboxConfigure.h.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
// -----------------------------------------------------------------------
// RTToolbox - DKFZ SIDT RT Interface
//
// Copyright (c) German Cancer Research Center (DKFZ),
// Software development for Integrated Diagnostics and Therapy (SIDT).
// ALL RIGHTS RESERVED.
// See rttbCopyright.txt or
// http://www.dkfz.de/en/sidt/projects/rttb/copyright.html
//
// This software is distributed WITHOUT ANY WARRANTY; without even
// the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
// PURPOSE. See the above copyright notices for more information.
//
//------------------------------------------------------------------------
//----------------------------------------------------------
// !!!EXPERIMENTAL CODE!!!
//
// This code may not be used for release.
// Add #define SIDT_ENFORCE_MATURE_CODE to any release module
// to ensure this policy.
//----------------------------------------------------------
#ifdef SIDT_ENFORCE_MATURE_CODE
#error "This code is marked as experimental code. It must not be used because this build enforces mature code."
#endif
#ifndef SIDT_CONTAINS_EXPERIMENTAL_CODE
#define SIDT_CONTAINS_EXPERIMENTAL_CODE 1
#endif
/*! @def RTTB_BUILD_SHARED_LIBS
* This define indicates if RTTB will be build as static library (define RTTB_STATIC) or as DLL (define RTTB_DLL).
* By default RTTB_BUILD_SHARED_LIBS is not defined.
*/
#cmakedefine RTTB_BUILD_SHARED_LIBS
#ifdef RTTB_BUILD_SHARED_LIBS
#define RTTB_DLL
#else
#define RTTB_STATIC
#endif
#ifndef __RTTB_CONFIGURE_H
#define __RTTB_CONFIGURE_H
/*! @def RTTB_BUILD_SHARED_LIBS
* This define indicates if RTTB will be build as static library (define RTTB_STATIC) or as DLL (define RTTB_DLL).
* By default RTTB_BUILD_SHARED_LIBS is not defined.
*/
#cmakedefine RTTB_BUILD_SHARED_LIBS
#ifdef RTTB_BUILD_SHARED_LIBS
#define RTTB_DLL
#else
#define RTTB_STATIC
#endif
/*! @def RTTB_ENFORCE_MATURE_CODE
* This define controls if RTToolbox should force the whole build to be mature code.
* Mature code convention is part of the SIDT coding styles.
* Projects that use RTToolbox are able to ensure with SIDT_ENFORCE_MATURE_CODE
* that used code is guaranteed to be tested and reviewed regarding the strict
* SIDT coding styles.\n
* RTTB_ENFORCE_MATURE_CODE can be used to ensure that strictness when prebuilding
* static or dynamic libraries.
* @remark This definition should by configured via the advance options in CMake.
*/
#cmakedefine RTTB_ENFORCE_MATURE_CODE
#ifdef RTTB_ENFORCE_MATURE_CODE
#define SIDT_ENFORCE_MATURE_CODE
#endif
/*! @def RTTB_DISABLE_ITK_IO_FACTORY_AUTO_REGISTER
* This define controls if RTToolbox should disable the auto
* register functionality of the itk io factory, when RTToolbox
* io reader and writer classes are used.
* This is needed in cases where RTToolbox is build "dynamic" and
* used in an application that also uses the ITK shared objects
* under Windows systems (e.g. MITK). Loading and unloading RTToolbox
* shared objects in such an application would lead to an corrupted
* itk factory stack, because its implementation is not fail safe
* in this scenario.
* @remark This definition should by configured via the advance options in CMake.
*/
#cmakedefine RTTB_DISABLE_ITK_IO_FACTORY_AUTO_REGISTER
#define RTTB_VERSION_MAJOR @RTToolbox_VERSION_MAJOR@
#define RTTB_VERSION_MINOR @RTToolbox_VERSION_MINOR@
#define RTTB_VERSION_PATCH @RTToolbox_VERSION_PATCH@
#define RTTB_VERSION_STRING "@RTToolbox_VERSION_STRING@"
#define RTTB_FULL_VERSION_STRING "@RTToolbox_FULL_VERSION_STRING@"
#endif