Mercurial > hg > orthanc-stone
annotate Resources/CMake/OrthancStoneConfiguration.cmake @ 613:412a2d01a189
automatic initialization of glew
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 30 Apr 2019 16:44:23 +0200 |
parents | 0c4c0693b97c |
children | 97926984d5d0 |
rev | line source |
---|---|
47 | 1 # Stone of Orthanc |
2 # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics | |
3 # Department, University Hospital of Liege, Belgium | |
439 | 4 # Copyright (C) 2017-2019 Osimis S.A., Belgium |
47 | 5 # |
6 # This program is free software: you can redistribute it and/or | |
7 # modify it under the terms of the GNU Affero General Public License | |
8 # as published by the Free Software Foundation, either version 3 of | |
9 # the License, or (at your option) any later version. | |
10 # | |
11 # This program is distributed in the hope that it will be useful, but | |
12 # WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
14 # Affero General Public License for more details. | |
15 # | |
16 # You should have received a copy of the GNU Affero General Public License | |
17 # along with this program. If not, see <http://www.gnu.org/licenses/>. | |
18 | |
19 | |
20
946377d1c992
skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
16
diff
changeset
|
20 |
0 | 21 ##################################################################### |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
22 ## Configure the Orthanc Framework |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
23 ##################################################################### |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
24 |
338 | 25 if (ENABLE_DCMTK) |
26 set(ENABLE_LOCALE ON) | |
27 else() | |
542 | 28 if (NOT DEFINED ENABLE_LOCALE) |
29 set(ENABLE_LOCALE OFF) # Disable support for locales (notably in Boost) | |
30 endif() | |
338 | 31 endif() |
32 | |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
33 include(${ORTHANC_ROOT}/Resources/CMake/OrthancFrameworkConfiguration.cmake) |
212
5412adf19980
resort to OrthancFramework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
205
diff
changeset
|
34 include_directories(${ORTHANC_ROOT}) |
462
d93aff4e602a
fix for include not found in Orthanc
Alain Mazy <alain@mazy.be>
parents:
457
diff
changeset
|
35 include_directories(${ORTHANC_ROOT}/Core/Images) # hack for the numerous #include "../Enumerations.h" in Orthanc to work |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
36 |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
37 |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
38 ##################################################################### |
115
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
39 ## Sanity check of the configuration |
0 | 40 ##################################################################### |
41 | |
115
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
42 if (ORTHANC_SANDBOXED) |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
43 if (ENABLE_CURL) |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
44 message(FATAL_ERROR "Cannot enable curl in sandboxed environments") |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
45 endif() |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
46 |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
47 if (ENABLE_SDL) |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
48 message(FATAL_ERROR "Cannot enable SDL in sandboxed environments") |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
49 endif() |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
50 |
274
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
51 if (ENABLE_QT) |
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
52 message(FATAL_ERROR "Cannot enable QT in sandboxed environments") |
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
53 endif() |
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
54 |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
55 if (ENABLE_SSL) |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
56 message(FATAL_ERROR "Cannot enable SSL in sandboxed environments") |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
57 endif() |
115
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
58 endif() |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
59 |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
60 |
115
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
61 ##################################################################### |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
62 ## Configure mandatory third-party components |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
63 ##################################################################### |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
64 |
215 | 65 SET(ORTHANC_STONE_ROOT ${CMAKE_CURRENT_LIST_DIR}/../..) |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
66 |
115
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
67 include(FindPkgConfig) |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
68 include(${CMAKE_CURRENT_LIST_DIR}/BoostExtendedConfiguration.cmake) |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
69 include(${CMAKE_CURRENT_LIST_DIR}/CairoConfiguration.cmake) |
576 | 70 include(${CMAKE_CURRENT_LIST_DIR}/FreetypeConfiguration.cmake) |
115
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
71 include(${CMAKE_CURRENT_LIST_DIR}/PixmanConfiguration.cmake) |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
72 |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
73 |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
74 |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
75 ##################################################################### |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
76 ## Configure optional third-party components |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
77 ##################################################################### |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
78 |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
79 if (NOT ORTHANC_SANDBOXED) |
22
b01d46e5a2b3
support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
21
diff
changeset
|
80 list(APPEND ORTHANC_STONE_SOURCES |
38 | 81 ${ORTHANC_ROOT}/Plugins/Samples/Common/OrthancHttpConnection.cpp |
22
b01d46e5a2b3
support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
21
diff
changeset
|
82 ) |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
83 endif() |
22
b01d46e5a2b3
support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
21
diff
changeset
|
84 |
b01d46e5a2b3
support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
21
diff
changeset
|
85 |
274
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
86 if (ENABLE_SDL AND ENABLE_QT) |
276
5de5699ad570
first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents:
274
diff
changeset
|
87 message("SDL and QT may not be defined together") |
274
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
88 elseif(ENABLE_SDL) |
276
5de5699ad570
first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents:
274
diff
changeset
|
89 message("SDL is enabled") |
5de5699ad570
first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents:
274
diff
changeset
|
90 include(${CMAKE_CURRENT_LIST_DIR}/SdlConfiguration.cmake) |
613
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
91 add_definitions( |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
92 -DORTHANC_ENABLE_NATIVE=1 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
93 -DORTHANC_ENABLE_QT=0 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
94 -DORTHANC_ENABLE_SDL=1 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
95 ) |
274
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
96 elseif(ENABLE_QT) |
276
5de5699ad570
first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents:
274
diff
changeset
|
97 message("QT is enabled") |
5de5699ad570
first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents:
274
diff
changeset
|
98 include(${CMAKE_CURRENT_LIST_DIR}/QtConfiguration.cmake) |
613
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
99 add_definitions( |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
100 -DORTHANC_ENABLE_NATIVE=1 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
101 -DORTHANC_ENABLE_QT=1 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
102 -DORTHANC_ENABLE_SDL=0 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
103 ) |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
104 else() |
276
5de5699ad570
first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents:
274
diff
changeset
|
105 message("SDL and QT are both disabled") |
115
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
106 unset(USE_SYSTEM_SDL CACHE) |
613
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
107 add_definitions( |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
108 -DORTHANC_ENABLE_SDL=0 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
109 -DORTHANC_ENABLE_QT=0 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
110 -DORTHANC_ENABLE_NATIVE=0 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
111 ) |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
112 endif() |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
113 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
114 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
115 if (ENABLE_OPENGL AND CMAKE_SYSTEM_NAME STREQUAL "Windows") |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
116 include(${CMAKE_CURRENT_LIST_DIR}/GlewConfiguration.cmake) |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
117 add_definitions( |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
118 -DORTHANC_ENABLE_GLEW=1 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
119 ) |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
120 else() |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
121 add_definitions( |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
122 -DORTHANC_ENABLE_GLEW=0 |
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
123 ) |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
124 endif() |
0 | 125 |
509
1b9973905e15
Fix to use js callbacks attached to 'window' + dummy changes in cmake files
Benjamin Golinvaux <bgo@osimis.io>
parents:
506
diff
changeset
|
126 |
578
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
127 if (ENABLE_OPENGL) |
600
6129b1e5ba42
BasicScene SDL sample
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
597
diff
changeset
|
128 include(FindOpenGL) |
6129b1e5ba42
BasicScene SDL sample
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
597
diff
changeset
|
129 if (NOT OPENGL_FOUND) |
6129b1e5ba42
BasicScene SDL sample
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
597
diff
changeset
|
130 message(FATAL_ERROR "Cannot find OpenGL on your system") |
6129b1e5ba42
BasicScene SDL sample
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
597
diff
changeset
|
131 endif() |
6129b1e5ba42
BasicScene SDL sample
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
597
diff
changeset
|
132 |
6129b1e5ba42
BasicScene SDL sample
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
597
diff
changeset
|
133 link_libraries(${OPENGL_LIBRARIES}) |
6129b1e5ba42
BasicScene SDL sample
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
597
diff
changeset
|
134 |
578
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
135 add_definitions( |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
136 -DGL_GLEXT_PROTOTYPES=1 |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
137 -DORTHANC_ENABLE_OPENGL=1 |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
138 ) |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
139 else() |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
140 add_definitions(-DORTHANC_ENABLE_OPENGL=0) |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
141 endif() |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
142 |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
143 |
509
1b9973905e15
Fix to use js callbacks attached to 'window' + dummy changes in cmake files
Benjamin Golinvaux <bgo@osimis.io>
parents:
506
diff
changeset
|
144 |
115
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
145 ##################################################################### |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
146 ## Configuration of the C/C++ macros |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
147 ##################################################################### |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
148 |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
149 if (MSVC) |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
150 # Remove some warnings on Visual Studio 2015 |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
151 add_definitions(-D_SCL_SECURE_NO_WARNINGS=1) |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
152 endif() |
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
153 |
0 | 154 add_definitions( |
31
9aace933cb64
sharing code with the Orthanc core
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
26
diff
changeset
|
155 -DHAS_ORTHANC_EXCEPTION=1 |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
156 -DORTHANC_ENABLE_LOGGING_PLUGIN=0 |
0 | 157 ) |
158 | |
267 | 159 if (CMAKE_BUILD_TYPE STREQUAL "Debug") |
160 add_definitions(-DCHECK_OBSERVERS_MESSAGES) | |
161 endif() | |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
162 |
578
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
163 |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
164 |
0 | 165 ##################################################################### |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
166 ## Embed the colormaps into the binaries |
0 | 167 ##################################################################### |
168 | |
169 EmbedResources( | |
256
86ccff58f344
fix build if dcmtk is enabled
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
215
diff
changeset
|
170 # Resources coming from the core of Orthanc. They must be copied |
86ccff58f344
fix build if dcmtk is enabled
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
215
diff
changeset
|
171 # here, as HAS_EMBEDDED_RESOURCES is set to ON in |
86ccff58f344
fix build if dcmtk is enabled
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
215
diff
changeset
|
172 # "OrthancStoneParameters.cmake" |
86ccff58f344
fix build if dcmtk is enabled
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
215
diff
changeset
|
173 ${DCMTK_DICTIONARIES} |
86ccff58f344
fix build if dcmtk is enabled
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
215
diff
changeset
|
174 |
343 | 175 FONT_UBUNTU_MONO_BOLD_16 ${ORTHANC_ROOT}/Resources/Fonts/UbuntuMonoBold-16.json |
345 | 176 #FONT_UBUNTU_MONO_BOLD_64 ${ORTHANC_ROOT}/Resources/Fonts/UbuntuMonoBold-64.json |
343 | 177 |
256
86ccff58f344
fix build if dcmtk is enabled
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
215
diff
changeset
|
178 # Resources specific to the Stone of Orthanc |
215 | 179 COLORMAP_HOT ${ORTHANC_STONE_ROOT}/Resources/Colormaps/hot.lut |
180 COLORMAP_JET ${ORTHANC_STONE_ROOT}/Resources/Colormaps/jet.lut | |
181 COLORMAP_RED ${ORTHANC_STONE_ROOT}/Resources/Colormaps/red.lut | |
182 COLORMAP_GREEN ${ORTHANC_STONE_ROOT}/Resources/Colormaps/green.lut | |
183 COLORMAP_BLUE ${ORTHANC_STONE_ROOT}/Resources/Colormaps/blue.lut | |
511
2f17b3659781
ORTHANC_STONE_APPLICATION_RESOURCES in CMake
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
445
diff
changeset
|
184 |
2f17b3659781
ORTHANC_STONE_APPLICATION_RESOURCES in CMake
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
445
diff
changeset
|
185 # Additional resources specific to the application being built |
2f17b3659781
ORTHANC_STONE_APPLICATION_RESOURCES in CMake
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
445
diff
changeset
|
186 ${ORTHANC_STONE_APPLICATION_RESOURCES} |
0 | 187 ) |
188 | |
189 | |
190 ##################################################################### | |
191 ## System-specific patches | |
192 ##################################################################### | |
193 | |
194 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows" AND | |
195 NOT MSVC AND | |
196 ENABLE_SDL) | |
197 # This is necessary when compiling EXE for Windows using MinGW | |
198 link_libraries(mingw32) | |
199 endif() | |
200 | |
115
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
201 if (ORTHANC_SANDBOXED) |
114
3541fc81331a
starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
113
diff
changeset
|
202 # Remove functions not suitable for a sandboxed environment |
3541fc81331a
starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
113
diff
changeset
|
203 list(REMOVE_ITEM ORTHANC_CORE_SOURCES |
3541fc81331a
starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
113
diff
changeset
|
204 ${ZLIB_SOURCES_DIR}/gzlib.c |
3541fc81331a
starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
113
diff
changeset
|
205 ${ZLIB_SOURCES_DIR}/gzwrite.c |
3541fc81331a
starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
113
diff
changeset
|
206 ${ZLIB_SOURCES_DIR}/gzread.c |
3541fc81331a
starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
113
diff
changeset
|
207 ) |
3541fc81331a
starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
113
diff
changeset
|
208 endif() |
3541fc81331a
starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
113
diff
changeset
|
209 |
0 | 210 |
211 | |
212 ##################################################################### | |
213 ## All the source files required to build Stone of Orthanc | |
214 ##################################################################### | |
215 | |
221
d7b2590744f8
wip: building applications reusable in SDL and WASM
am@osimis.io
parents:
215
diff
changeset
|
216 set(APPLICATIONS_SOURCES |
288 | 217 ${ORTHANC_STONE_ROOT}/Applications/IStoneApplication.h |
218 ${ORTHANC_STONE_ROOT}/Applications/StoneApplicationContext.cpp | |
221
d7b2590744f8
wip: building applications reusable in SDL and WASM
am@osimis.io
parents:
215
diff
changeset
|
219 ) |
d7b2590744f8
wip: building applications reusable in SDL and WASM
am@osimis.io
parents:
215
diff
changeset
|
220 |
115
f598ffb81cda
fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
114
diff
changeset
|
221 if (NOT ORTHANC_SANDBOXED) |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
222 set(PLATFORM_SOURCES |
365
ef31240a73f6
no automatic call to moc and uic, CircleMeasureTracker using Orthanc fonts
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
345
diff
changeset
|
223 ${ORTHANC_STONE_ROOT}/Framework/Viewport/CairoFont.cpp |
251
192e6e349e69
first usage of new message system (in SDL only)
am@osimis.io
parents:
250
diff
changeset
|
224 ${ORTHANC_STONE_ROOT}/Platforms/Generic/WebServiceCommandBase.cpp |
215 | 225 ${ORTHANC_STONE_ROOT}/Platforms/Generic/WebServiceGetCommand.cpp |
226 ${ORTHANC_STONE_ROOT}/Platforms/Generic/WebServicePostCommand.cpp | |
315
aad37d0b6407
Added LayerWidget::RemoveLayer + DELETE commands in WebService
am@osimis.io
parents:
307
diff
changeset
|
227 ${ORTHANC_STONE_ROOT}/Platforms/Generic/WebServiceDeleteCommand.cpp |
431
26b90b110719
added DelayedCallExecutor to avoid using sleep() in C++ that consumes 100% CPU once executed in WASM
am@osimis.io
parents:
430
diff
changeset
|
228 ${ORTHANC_STONE_ROOT}/Platforms/Generic/DelayedCallCommand.cpp |
215 | 229 ${ORTHANC_STONE_ROOT}/Platforms/Generic/Oracle.cpp |
434
3a8bcc45c221
moved the HTTP cache from OrthancApiClient to BaseWebService (not implemented yet in WASM)
am@osimis.io
parents:
431
diff
changeset
|
230 ${ORTHANC_STONE_ROOT}/Platforms/Generic/OracleWebService.cpp |
431
26b90b110719
added DelayedCallExecutor to avoid using sleep() in C++ that consumes 100% CPU once executed in WASM
am@osimis.io
parents:
430
diff
changeset
|
231 ${ORTHANC_STONE_ROOT}/Platforms/Generic/OracleDelayedCallExecutor.h |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
232 ) |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
233 |
274
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
234 if (ENABLE_SDL OR ENABLE_QT) |
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
235 list(APPEND APPLICATIONS_SOURCES |
291 | 236 ${ORTHANC_STONE_ROOT}/Applications/Generic/NativeStoneApplicationRunner.cpp |
237 ${ORTHANC_STONE_ROOT}/Applications/Generic/NativeStoneApplicationContext.cpp | |
274
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
238 ) |
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
239 if (ENABLE_SDL) |
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
240 list(APPEND APPLICATIONS_SOURCES |
595
6e471e6cf09b
CairoPolylineRenderer, SdlOpenGLWindow
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
594
diff
changeset
|
241 ${ORTHANC_STONE_ROOT}/Applications/Sdl/SdlCairoSurface.cpp |
274
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
242 ${ORTHANC_STONE_ROOT}/Applications/Sdl/SdlEngine.cpp |
595
6e471e6cf09b
CairoPolylineRenderer, SdlOpenGLWindow
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
594
diff
changeset
|
243 ${ORTHANC_STONE_ROOT}/Applications/Sdl/SdlOpenGLWindow.cpp |
274
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
244 ${ORTHANC_STONE_ROOT}/Applications/Sdl/SdlOrthancSurface.cpp |
595
6e471e6cf09b
CairoPolylineRenderer, SdlOpenGLWindow
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
594
diff
changeset
|
245 ${ORTHANC_STONE_ROOT}/Applications/Sdl/SdlStoneApplicationRunner.cpp |
274
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
246 ${ORTHANC_STONE_ROOT}/Applications/Sdl/SdlWindow.cpp |
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
247 ) |
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
248 endif() |
dc1beee33134
split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents:
270
diff
changeset
|
249 endif() |
295
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
250 elseif (ENABLE_WASM) |
221
d7b2590744f8
wip: building applications reusable in SDL and WASM
am@osimis.io
parents:
215
diff
changeset
|
251 list(APPEND APPLICATIONS_SOURCES |
242 | 252 ${ORTHANC_STONE_ROOT}/Applications/Wasm/StartupParametersBuilder.cpp |
255 | 253 ) |
254 | |
255 set(STONE_WASM_SOURCES | |
244 | 256 ${ORTHANC_STONE_ROOT}/Platforms/Wasm/Defaults.cpp |
431
26b90b110719
added DelayedCallExecutor to avoid using sleep() in C++ that consumes 100% CPU once executed in WASM
am@osimis.io
parents:
430
diff
changeset
|
257 ${ORTHANC_STONE_ROOT}/Platforms/Wasm/WasmDelayedCallExecutor.cpp |
244 | 258 ${ORTHANC_STONE_ROOT}/Platforms/Wasm/WasmWebService.cpp |
259 ${ORTHANC_STONE_ROOT}/Platforms/Wasm/WasmViewport.cpp | |
307 | 260 ${ORTHANC_STONE_ROOT}/Platforms/Wasm/WasmPlatformApplicationAdapter.cpp |
295
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
261 ${AUTOGENERATED_DIR}/WasmWebService.c |
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
262 ${AUTOGENERATED_DIR}/default-library.c |
255 | 263 ) |
295
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
264 |
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
265 # Regenerate a dummy "WasmWebService.c" file each time the "WasmWebService.js" file |
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
266 # is modified, so as to force a new execution of the linking |
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
267 add_custom_command( |
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
268 OUTPUT "${AUTOGENERATED_DIR}/WasmWebService.c" |
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
269 COMMAND ${CMAKE_COMMAND} -E touch "${AUTOGENERATED_DIR}/WasmWebService.c" "" |
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
270 DEPENDS "${ORTHANC_STONE_ROOT}/Platforms/Wasm/WasmWebService.js") |
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
271 add_custom_command( |
431
26b90b110719
added DelayedCallExecutor to avoid using sleep() in C++ that consumes 100% CPU once executed in WASM
am@osimis.io
parents:
430
diff
changeset
|
272 OUTPUT "${AUTOGENERATED_DIR}/WasmDelayedCallExecutor.c" |
26b90b110719
added DelayedCallExecutor to avoid using sleep() in C++ that consumes 100% CPU once executed in WASM
am@osimis.io
parents:
430
diff
changeset
|
273 COMMAND ${CMAKE_COMMAND} -E touch "${AUTOGENERATED_DIR}/WasmDelayedCallExecutor.c" "" |
26b90b110719
added DelayedCallExecutor to avoid using sleep() in C++ that consumes 100% CPU once executed in WASM
am@osimis.io
parents:
430
diff
changeset
|
274 DEPENDS "${ORTHANC_STONE_ROOT}/Platforms/Wasm/WasmDelayedCallExecutor.js") |
26b90b110719
added DelayedCallExecutor to avoid using sleep() in C++ that consumes 100% CPU once executed in WASM
am@osimis.io
parents:
430
diff
changeset
|
275 add_custom_command( |
295
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
276 OUTPUT "${AUTOGENERATED_DIR}/default-library.c" |
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
277 COMMAND ${CMAKE_COMMAND} -E touch "${AUTOGENERATED_DIR}/default-library.c" "" |
b04b13810540
unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents:
294
diff
changeset
|
278 DEPENDS "${ORTHANC_STONE_ROOT}/Platforms/Wasm/default-library.js") |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
279 endif() |
80 | 280 |
0 | 281 list(APPEND ORTHANC_STONE_SOURCES |
215 | 282 #${ORTHANC_STONE_ROOT}/Framework/Layers/SeriesFrameRendererFactory.cpp |
283 #${ORTHANC_STONE_ROOT}/Framework/Layers/SingleFrameRendererFactory.cpp | |
332
50e5ec1bdd46
separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
330
diff
changeset
|
284 |
597 | 285 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/CairoCompositor.cpp |
590
5430bcffba57
FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
588
diff
changeset
|
286 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/ColorTextureSceneLayer.cpp |
5430bcffba57
FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
588
diff
changeset
|
287 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/FloatTextureSceneLayer.cpp |
5430bcffba57
FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
588
diff
changeset
|
288 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/InfoPanelSceneLayer.cpp |
597 | 289 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/CairoColorTextureRenderer.cpp |
290 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/CairoFloatTextureRenderer.cpp | |
291 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/CairoInfoPanelRenderer.cpp | |
595
6e471e6cf09b
CairoPolylineRenderer, SdlOpenGLWindow
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
594
diff
changeset
|
292 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/CairoPolylineRenderer.cpp |
597 | 293 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/CairoTextRenderer.cpp |
593
6bf8f881fcb5
OpenGLBasicPolylineRenderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
592
diff
changeset
|
294 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/CompositorHelper.cpp |
596 | 295 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/FixedPointAligner.cpp |
296 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/PanSceneTracker.cpp | |
297 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/PointerEvent.cpp | |
590
5430bcffba57
FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
588
diff
changeset
|
298 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/PolylineSceneLayer.cpp |
596 | 299 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/RotateSceneTracker.cpp |
590
5430bcffba57
FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
588
diff
changeset
|
300 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Scene2D.cpp |
5430bcffba57
FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
588
diff
changeset
|
301 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/TextSceneLayer.cpp |
5430bcffba57
FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
588
diff
changeset
|
302 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/TextureBaseSceneLayer.cpp |
596 | 303 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/ZoomSceneTracker.cpp |
590
5430bcffba57
FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
588
diff
changeset
|
304 |
576 | 305 ${ORTHANC_STONE_ROOT}/Framework/Fonts/FontRenderer.cpp |
306 ${ORTHANC_STONE_ROOT}/Framework/Fonts/Glyph.cpp | |
307 ${ORTHANC_STONE_ROOT}/Framework/Fonts/GlyphAlphabet.cpp | |
577 | 308 ${ORTHANC_STONE_ROOT}/Framework/Fonts/GlyphBitmapAlphabet.cpp |
309 ${ORTHANC_STONE_ROOT}/Framework/Fonts/GlyphTextureAlphabet.cpp | |
310 ${ORTHANC_STONE_ROOT}/Framework/Fonts/TextBoundingBox.cpp | |
215 | 311 ${ORTHANC_STONE_ROOT}/Framework/Layers/CircleMeasureTracker.cpp |
312 ${ORTHANC_STONE_ROOT}/Framework/Layers/ColorFrameRenderer.cpp | |
402
72355b637945
removed VolumeSlicerBase
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
398
diff
changeset
|
313 ${ORTHANC_STONE_ROOT}/Framework/Layers/DicomSeriesVolumeSlicer.cpp |
398
d257ea56b7be
renamed DicomStructureSetRendererFactory as DicomStructureSetSlicer, VolumeImageSource as VolumeImageMPRSlicer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
396
diff
changeset
|
314 ${ORTHANC_STONE_ROOT}/Framework/Layers/DicomStructureSetSlicer.cpp |
215 | 315 ${ORTHANC_STONE_ROOT}/Framework/Layers/FrameRenderer.cpp |
316 ${ORTHANC_STONE_ROOT}/Framework/Layers/GrayscaleFrameRenderer.cpp | |
396
ed7146fa2c98
rename ILayerSource as IVolumeSlicer, and OrthancFrameLayerSource as as DicomSeriesVolumeSlicer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
393
diff
changeset
|
317 ${ORTHANC_STONE_ROOT}/Framework/Layers/IVolumeSlicer.h |
215 | 318 ${ORTHANC_STONE_ROOT}/Framework/Layers/LineLayerRenderer.cpp |
319 ${ORTHANC_STONE_ROOT}/Framework/Layers/LineMeasureTracker.cpp | |
320 ${ORTHANC_STONE_ROOT}/Framework/Layers/RenderStyle.cpp | |
321 ${ORTHANC_STONE_ROOT}/Framework/Layers/SliceOutlineRenderer.cpp | |
430 | 322 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyAlphaLayer.cpp |
323 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyDicomLayer.cpp | |
415
c0589c3173fd
finished reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
414
diff
changeset
|
324 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyLayer.cpp |
c0589c3173fd
finished reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
414
diff
changeset
|
325 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyLayerCropTracker.cpp |
480
2f6ecb5037ea
added mouse tracker for Layer Mask. Everything seems ok
am@osimis.io
parents:
475
diff
changeset
|
326 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyLayerMaskTracker.cpp |
414 | 327 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyLayerMoveTracker.cpp |
415
c0589c3173fd
finished reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
414
diff
changeset
|
328 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyLayerResizeTracker.cpp |
414 | 329 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyLayerRotateTracker.cpp |
475
3c28542229a3
added a mask layer in the RadiographyWidget (to be cleaned)
am@osimis.io
parents:
462
diff
changeset
|
330 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyMaskLayer.cpp |
408 | 331 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyScene.cpp |
413 | 332 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographySceneCommand.cpp |
430 | 333 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographySceneReader.cpp |
334 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographySceneWriter.cpp | |
335 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyTextLayer.cpp | |
413 | 336 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyWidget.cpp |
415
c0589c3173fd
finished reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
414
diff
changeset
|
337 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyWindowingTracker.cpp |
332
50e5ec1bdd46
separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
330
diff
changeset
|
338 ${ORTHANC_STONE_ROOT}/Framework/SmartLoader.cpp |
50e5ec1bdd46
separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
330
diff
changeset
|
339 ${ORTHANC_STONE_ROOT}/Framework/StoneEnumerations.cpp |
50e5ec1bdd46
separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
330
diff
changeset
|
340 ${ORTHANC_STONE_ROOT}/Framework/StoneException.h |
610
0c4c0693b97c
OrthancStone::StoneInitialize()
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
600
diff
changeset
|
341 ${ORTHANC_STONE_ROOT}/Framework/StoneInitialization.cpp |
409 | 342 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/AffineTransform2D.cpp |
434
3a8bcc45c221
moved the HTTP cache from OrthancApiClient to BaseWebService (not implemented yet in WASM)
am@osimis.io
parents:
431
diff
changeset
|
343 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/BaseWebService.cpp |
215 | 344 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/CoordinateSystem3D.cpp |
345 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/DicomFrameConverter.cpp | |
346 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/DicomStructureSet.cpp | |
347 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/DownloadStack.cpp | |
576 | 348 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/DynamicBitmap.cpp |
215 | 349 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/Extent2D.cpp |
350 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/FiniteProjectiveCamera.cpp | |
351 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/GeometryToolbox.cpp | |
431
26b90b110719
added DelayedCallExecutor to avoid using sleep() in C++ that consumes 100% CPU once executed in WASM
am@osimis.io
parents:
430
diff
changeset
|
352 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/IDelayedCallExecutor.h |
377 | 353 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/IWebService.cpp |
215 | 354 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/ImageGeometry.cpp |
355 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/LinearAlgebra.cpp | |
356 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/MessagingToolbox.cpp | |
357 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/OrientedBoundingBox.cpp | |
332
50e5ec1bdd46
separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
330
diff
changeset
|
358 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/OrthancApiClient.cpp |
215 | 359 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/OrthancSlicesLoader.cpp |
360 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/ParallelSlices.cpp | |
361 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/ParallelSlicesCursor.cpp | |
362 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/ShearWarpProjectiveTransform.cpp | |
363 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/Slice.cpp | |
364 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/SlicesSorter.cpp | |
409 | 365 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/UndoRedoStack.cpp |
215 | 366 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/ViewportGeometry.cpp |
367 ${ORTHANC_STONE_ROOT}/Framework/Viewport/CairoContext.cpp | |
368 ${ORTHANC_STONE_ROOT}/Framework/Viewport/CairoSurface.cpp | |
457
3b4df9925db6
added support for 'touch' in mouse trackers. This is still a bit hacky and we need to refactor it to make it clean. Thanks to that, Pan and zoom are available together with 2 touches
Alain Mazy <alain@mazy.be>
parents:
440
diff
changeset
|
369 ${ORTHANC_STONE_ROOT}/Framework/Viewport/IMouseTracker.h |
332
50e5ec1bdd46
separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
330
diff
changeset
|
370 ${ORTHANC_STONE_ROOT}/Framework/Viewport/IStatusBar.h |
330 | 371 ${ORTHANC_STONE_ROOT}/Framework/Viewport/IViewport.h |
215 | 372 ${ORTHANC_STONE_ROOT}/Framework/Viewport/WidgetViewport.cpp |
373 ${ORTHANC_STONE_ROOT}/Framework/Volumes/ImageBuffer3D.cpp | |
374 ${ORTHANC_STONE_ROOT}/Framework/Volumes/StructureSetLoader.cpp | |
375 ${ORTHANC_STONE_ROOT}/Framework/Volumes/VolumeReslicer.cpp | |
376 ${ORTHANC_STONE_ROOT}/Framework/Widgets/CairoWidget.cpp | |
377 ${ORTHANC_STONE_ROOT}/Framework/Widgets/EmptyWidget.cpp | |
327 | 378 ${ORTHANC_STONE_ROOT}/Framework/Widgets/IWidget.h |
332
50e5ec1bdd46
separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
330
diff
changeset
|
379 ${ORTHANC_STONE_ROOT}/Framework/Widgets/IWorldSceneInteractor.h |
281 | 380 ${ORTHANC_STONE_ROOT}/Framework/Widgets/IWorldSceneMouseTracker.h |
215 | 381 ${ORTHANC_STONE_ROOT}/Framework/Widgets/LayoutWidget.cpp |
332
50e5ec1bdd46
separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
330
diff
changeset
|
382 ${ORTHANC_STONE_ROOT}/Framework/Widgets/PanMouseTracker.cpp |
457
3b4df9925db6
added support for 'touch' in mouse trackers. This is still a bit hacky and we need to refactor it to make it clean. Thanks to that, Pan and zoom are available together with 2 touches
Alain Mazy <alain@mazy.be>
parents:
440
diff
changeset
|
383 ${ORTHANC_STONE_ROOT}/Framework/Widgets/PanZoomMouseTracker.cpp |
388
20f149669c1f
renamed LayerWidget as SliceViewerWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
377
diff
changeset
|
384 ${ORTHANC_STONE_ROOT}/Framework/Widgets/SliceViewerWidget.cpp |
215 | 385 ${ORTHANC_STONE_ROOT}/Framework/Widgets/TestCairoWidget.cpp |
386 ${ORTHANC_STONE_ROOT}/Framework/Widgets/TestWorldSceneWidget.cpp | |
387 ${ORTHANC_STONE_ROOT}/Framework/Widgets/WidgetBase.cpp | |
388 ${ORTHANC_STONE_ROOT}/Framework/Widgets/WorldSceneWidget.cpp | |
332
50e5ec1bdd46
separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
330
diff
changeset
|
389 ${ORTHANC_STONE_ROOT}/Framework/Widgets/ZoomMouseTracker.cpp |
576 | 390 |
332
50e5ec1bdd46
separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
330
diff
changeset
|
391 ${ORTHANC_STONE_ROOT}/Framework/dev.h |
0 | 392 |
299
3897f9f28cfa
backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents:
295
diff
changeset
|
393 ${ORTHANC_STONE_ROOT}/Framework/Messages/ICallable.h |
250
5e642859267e
added new Observable/Observer & MessageBroker (not used yet)
am@osimis.io
parents:
249
diff
changeset
|
394 ${ORTHANC_STONE_ROOT}/Framework/Messages/IMessage.h |
403 | 395 ${ORTHANC_STONE_ROOT}/Framework/Messages/IObservable.cpp |
250
5e642859267e
added new Observable/Observer & MessageBroker (not used yet)
am@osimis.io
parents:
249
diff
changeset
|
396 ${ORTHANC_STONE_ROOT}/Framework/Messages/IObserver.h |
299
3897f9f28cfa
backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents:
295
diff
changeset
|
397 ${ORTHANC_STONE_ROOT}/Framework/Messages/MessageBroker.h |
302
4a79193ffb58
support for custom messages + no leaks in unit-tests
am@osimis.io
parents:
300
diff
changeset
|
398 ${ORTHANC_STONE_ROOT}/Framework/Messages/MessageForwarder.cpp |
299
3897f9f28cfa
backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents:
295
diff
changeset
|
399 ${ORTHANC_STONE_ROOT}/Framework/Messages/Promise.h |
250
5e642859267e
added new Observable/Observer & MessageBroker (not used yet)
am@osimis.io
parents:
249
diff
changeset
|
400 |
332
50e5ec1bdd46
separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
330
diff
changeset
|
401 ${ORTHANC_ROOT}/Plugins/Samples/Common/DicomDatasetReader.cpp |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
402 ${ORTHANC_ROOT}/Plugins/Samples/Common/DicomPath.cpp |
332
50e5ec1bdd46
separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
330
diff
changeset
|
403 ${ORTHANC_ROOT}/Plugins/Samples/Common/FullOrthancDataset.cpp |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
404 ${ORTHANC_ROOT}/Plugins/Samples/Common/IOrthancConnection.cpp |
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
405 |
80 | 406 ${PLATFORM_SOURCES} |
145 | 407 ${APPLICATIONS_SOURCES} |
113
2eca030792aa
using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
111
diff
changeset
|
408 ${ORTHANC_CORE_SOURCES} |
256
86ccff58f344
fix build if dcmtk is enabled
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
215
diff
changeset
|
409 ${ORTHANC_DICOM_SOURCES} |
0 | 410 ${AUTOGENERATED_SOURCES} |
411 | |
412 # Mandatory components | |
413 ${CAIRO_SOURCES} | |
576 | 414 ${FREETYPE_SOURCES} |
0 | 415 ${PIXMAN_SOURCES} |
416 | |
417 # Optional components | |
418 ${SDL_SOURCES} | |
276
5de5699ad570
first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents:
274
diff
changeset
|
419 ${QT_SOURCES} |
145 | 420 ${BOOST_EXTENDED_SOURCES} |
613
412a2d01a189
automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
610
diff
changeset
|
421 ${GLEW_SOURCES} |
0 | 422 ) |
221
d7b2590744f8
wip: building applications reusable in SDL and WASM
am@osimis.io
parents:
215
diff
changeset
|
423 |
578
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
424 |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
425 if (ENABLE_OPENGL) |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
426 list(APPEND ORTHANC_STONE_SOURCES |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
427 ${ORTHANC_STONE_ROOT}/Framework/Fonts/OpenGLTextCoordinates.cpp |
579
fadacfbf5538
OpenGL programs and textures
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
578
diff
changeset
|
428 ${ORTHANC_STONE_ROOT}/Framework/OpenGL/OpenGLProgram.cpp |
578
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
429 ${ORTHANC_STONE_ROOT}/Framework/OpenGL/OpenGLShader.cpp |
579
fadacfbf5538
OpenGL programs and textures
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
578
diff
changeset
|
430 ${ORTHANC_STONE_ROOT}/Framework/OpenGL/OpenGLTexture.cpp |
594 | 431 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/OpenGLCompositor.cpp |
432 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLAdvancedPolylineRenderer.cpp | |
593
6bf8f881fcb5
OpenGLBasicPolylineRenderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
592
diff
changeset
|
433 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLBasicPolylineRenderer.cpp |
592 | 434 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLColorTextureProgram.cpp |
594 | 435 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLColorTextureRenderer.cpp |
591
b66ced2c43d4
OpenGLTextureProgram
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
590
diff
changeset
|
436 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLFloatTextureProgram.cpp |
594 | 437 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLFloatTextureRenderer.cpp |
438 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLInfoPanelRenderer.cpp | |
592 | 439 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLLinesProgram.cpp |
440 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLTextProgram.cpp | |
594 | 441 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLTextRenderer.cpp |
591
b66ced2c43d4
OpenGLTextureProgram
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
590
diff
changeset
|
442 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLTextureProgram.cpp |
578
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
443 ) |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
444 endif() |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
445 |
21fd70df3fc9
starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
577
diff
changeset
|
446 |
564 | 447 include_directories(${ORTHANC_STONE_ROOT}) |
413 | 448 |
449 | |
450 ## | |
451 ## TEST - Automatically add all ".h" headers to the list of sources | |
452 ## | |
453 | |
454 macro(AutodetectHeaderFiles SOURCES_VAR) | |
455 set(TMP) | |
456 | |
457 foreach(f IN LISTS ${SOURCES_VAR}) | |
458 get_filename_component(_base ${f} NAME_WE) | |
459 get_filename_component(_dir ${f} DIRECTORY) | |
460 get_filename_component(_extension ${f} EXT) | |
461 set(_header ${_dir}/${_base}.h) | |
462 | |
463 if ((_extension STREQUAL ".cpp" OR | |
464 _extension STREQUAL ".cc" OR | |
465 _extension STREQUAL ".h") AND | |
466 EXISTS ${_header} AND | |
467 NOT IS_DIRECTORY ${_header} AND | |
468 NOT IS_SYMLINK ${_header}) | |
469 | |
414 | 470 # Prevent adding the header twice if it is already manually |
471 # specified in the sources | |
413 | 472 list (FIND SOURCES_VAR ${_header} _index) |
473 if (${_index} EQUAL -1) | |
474 list(APPEND TMP ${_header}) | |
475 endif() | |
476 endif() | |
477 endforeach() | |
478 | |
479 list(APPEND ${SOURCES_VAR} ${TMP}) | |
480 endmacro() | |
481 | |
482 | |
483 AutodetectHeaderFiles(ORTHANC_STONE_SOURCES) |