annotate Resources/CMake/OrthancStoneConfiguration.cmake @ 670:5dd496343fad

Restored missing code + fixed key ordering when generating code
author Benjamin Golinvaux <bgo@osimis.io>
date Wed, 15 May 2019 18:29:42 +0200
parents 419e5662d7a5
children e9339f2b5de7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
47
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
1 # Stone of Orthanc
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
2 # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
3 # Department, University Hospital of Liege, Belgium
439
b70e9be013e4 preparing for 2019
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 415
diff changeset
4 # Copyright (C) 2017-2019 Osimis S.A., Belgium
47
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
5 #
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
6 # This program is free software: you can redistribute it and/or
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
7 # modify it under the terms of the GNU Affero General Public License
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
8 # as published by the Free Software Foundation, either version 3 of
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
9 # the License, or (at your option) any later version.
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
10 #
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
11 # This program is distributed in the hope that it will be useful, but
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
12 # WITHOUT ANY WARRANTY; without even the implied warranty of
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
14 # Affero General Public License for more details.
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
15 #
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
16 # You should have received a copy of the GNU Affero General Public License
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
17 # along with this program. If not, see <http://www.gnu.org/licenses/>.
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
18
28956ed68280 agpl license
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 40
diff changeset
19
20
946377d1c992 skeleton for unit tests
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 16
diff changeset
20
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
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
b3b3fa0e3689 BitmapStack
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 332
diff changeset
25 if (ENABLE_DCMTK)
b3b3fa0e3689 BitmapStack
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 332
diff changeset
26 set(ENABLE_LOCALE ON)
b3b3fa0e3689 BitmapStack
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 332
diff changeset
27 else()
542
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 511
diff changeset
28 if (NOT DEFINED ENABLE_LOCALE)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 511
diff changeset
29 set(ENABLE_LOCALE OFF) # Disable support for locales (notably in Boost)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 511
diff changeset
30 endif()
338
b3b3fa0e3689 BitmapStack
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 332
diff changeset
31 endif()
b3b3fa0e3689 BitmapStack
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 332
diff changeset
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
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
40 #####################################################################
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
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()
616
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
59
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
60 if (ENABLE_WASM)
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
61 if (NOT ORTHANC_SANDBOXED)
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
62 message(FATAL_ERROR "WebAssembly target must me configured as sandboxed")
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
63 endif()
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
64
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
65 if (NOT CMAKE_SYSTEM_NAME STREQUAL "Emscripten")
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
66 message(FATAL_ERROR "WebAssembly target requires the emscripten compiler")
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
67 endif()
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
68
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
69 add_definitions(-DORTHANC_ENABLE_WASM=1)
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
70 else()
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
71 if (CMAKE_SYSTEM_NAME STREQUAL "Emscripten" OR
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
72 CMAKE_SYSTEM_NAME STREQUAL "PNaCl" OR
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
73 CMAKE_SYSTEM_NAME STREQUAL "NaCl32" OR
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
74 CMAKE_SYSTEM_NAME STREQUAL "NaCl64")
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
75 message(FATAL_ERROR "Trying to use a Web compiler for a native build")
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
76 endif()
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
77
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
78 add_definitions(-DORTHANC_ENABLE_WASM=0)
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
79 endif()
115
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
80
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
81
115
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
82 #####################################################################
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
83 ## Configure mandatory third-party components
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
84 #####################################################################
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
85
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
86 SET(ORTHANC_STONE_ROOT ${CMAKE_CURRENT_LIST_DIR}/../..)
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
87
115
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
88 include(FindPkgConfig)
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
89 include(${CMAKE_CURRENT_LIST_DIR}/BoostExtendedConfiguration.cmake)
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
90 include(${CMAKE_CURRENT_LIST_DIR}/CairoConfiguration.cmake)
576
529c9617654b FontRenderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 573
diff changeset
91 include(${CMAKE_CURRENT_LIST_DIR}/FreetypeConfiguration.cmake)
115
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
92 include(${CMAKE_CURRENT_LIST_DIR}/PixmanConfiguration.cmake)
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
93
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
94
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
95
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
96 #####################################################################
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
97 ## Configure optional third-party components
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
98 #####################################################################
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
99
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
100 if (NOT ORTHANC_SANDBOXED)
22
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 21
diff changeset
101 list(APPEND ORTHANC_STONE_SOURCES
38
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 36
diff changeset
102 ${ORTHANC_ROOT}/Plugins/Samples/Common/OrthancHttpConnection.cpp
22
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 21
diff changeset
103 )
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
104 endif()
22
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 21
diff changeset
105
b01d46e5a2b3 support for sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 21
diff changeset
106
274
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
107 if (ENABLE_SDL AND ENABLE_QT)
276
5de5699ad570 first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents: 274
diff changeset
108 message("SDL and QT may not be defined together")
274
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
109 elseif(ENABLE_SDL)
276
5de5699ad570 first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents: 274
diff changeset
110 message("SDL is enabled")
5de5699ad570 first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents: 274
diff changeset
111 include(${CMAKE_CURRENT_LIST_DIR}/SdlConfiguration.cmake)
613
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
112 add_definitions(
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
113 -DORTHANC_ENABLE_NATIVE=1
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
114 -DORTHANC_ENABLE_QT=0
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
115 -DORTHANC_ENABLE_SDL=1
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
116 )
274
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
117 elseif(ENABLE_QT)
276
5de5699ad570 first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents: 274
diff changeset
118 message("QT is enabled")
5de5699ad570 first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents: 274
diff changeset
119 include(${CMAKE_CURRENT_LIST_DIR}/QtConfiguration.cmake)
613
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
120 add_definitions(
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
121 -DORTHANC_ENABLE_NATIVE=1
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
122 -DORTHANC_ENABLE_QT=1
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
123 -DORTHANC_ENABLE_SDL=0
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
124 )
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
125 else()
276
5de5699ad570 first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents: 274
diff changeset
126 message("SDL and QT are both disabled")
115
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
127 unset(USE_SYSTEM_SDL CACHE)
613
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
128 add_definitions(
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
129 -DORTHANC_ENABLE_SDL=0
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
130 -DORTHANC_ENABLE_QT=0
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
131 -DORTHANC_ENABLE_NATIVE=0
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
132 )
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
133 endif()
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
134
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
135
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
136 if (ENABLE_OPENGL AND CMAKE_SYSTEM_NAME STREQUAL "Windows")
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
137 include(${CMAKE_CURRENT_LIST_DIR}/GlewConfiguration.cmake)
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
138 add_definitions(
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
139 -DORTHANC_ENABLE_GLEW=1
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
140 )
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
141 else()
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
142 add_definitions(
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
143 -DORTHANC_ENABLE_GLEW=0
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
144 )
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
145 endif()
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
146
509
1b9973905e15 Fix to use js callbacks attached to 'window' + dummy changes in cmake files
Benjamin Golinvaux <bgo@osimis.io>
parents: 506
diff changeset
147
578
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
148 if (ENABLE_OPENGL)
665
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 616
diff changeset
149 if (NOT CMAKE_SYSTEM_NAME STREQUAL "Emscripten")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 616
diff changeset
150 # If including "FindOpenGL.cmake" using Emscripten (targetting
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 616
diff changeset
151 # WebAssembly), the "OPENGL_LIBRARIES" value incorrectly includes
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 616
diff changeset
152 # the "nul" library, which leads to warning message in Emscripten:
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 616
diff changeset
153 # 'shared:WARNING: emcc: cannot find library "nul"'.
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 616
diff changeset
154 include(FindOpenGL)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 616
diff changeset
155 if (NOT OPENGL_FOUND)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 616
diff changeset
156 message(FATAL_ERROR "Cannot find OpenGL on your system")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 616
diff changeset
157 endif()
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 616
diff changeset
158
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 616
diff changeset
159 link_libraries(${OPENGL_LIBRARIES})
600
6129b1e5ba42 BasicScene SDL sample
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 597
diff changeset
160 endif()
6129b1e5ba42 BasicScene SDL sample
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 597
diff changeset
161
578
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
162 add_definitions(
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
163 -DGL_GLEXT_PROTOTYPES=1
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
164 -DORTHANC_ENABLE_OPENGL=1
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
165 )
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
166 else()
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
167 add_definitions(-DORTHANC_ENABLE_OPENGL=0)
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
168 endif()
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
169
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
170
509
1b9973905e15 Fix to use js callbacks attached to 'window' + dummy changes in cmake files
Benjamin Golinvaux <bgo@osimis.io>
parents: 506
diff changeset
171
115
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
172 #####################################################################
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
173 ## Configuration of the C/C++ macros
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
174 #####################################################################
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
175
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
176 if (MSVC)
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
177 # Remove some warnings on Visual Studio 2015
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
178 add_definitions(-D_SCL_SECURE_NO_WARNINGS=1)
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
179 endif()
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
180
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
181 add_definitions(
31
9aace933cb64 sharing code with the Orthanc core
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 26
diff changeset
182 -DHAS_ORTHANC_EXCEPTION=1
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
183 -DORTHANC_ENABLE_LOGGING_PLUGIN=0
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
184 )
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
185
267
89d02de83c03 added declaretion of messages handled/emitted
am@osimis.io
parents: 266
diff changeset
186 if (CMAKE_BUILD_TYPE STREQUAL "Debug")
89d02de83c03 added declaretion of messages handled/emitted
am@osimis.io
parents: 266
diff changeset
187 add_definitions(-DCHECK_OBSERVERS_MESSAGES)
89d02de83c03 added declaretion of messages handled/emitted
am@osimis.io
parents: 266
diff changeset
188 endif()
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
189
578
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
190
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
191
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
192 #####################################################################
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
193 ## Embed the colormaps into the binaries
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
194 #####################################################################
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
195
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
196 EmbedResources(
256
86ccff58f344 fix build if dcmtk is enabled
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 215
diff changeset
197 # 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
198 # 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
199 # "OrthancStoneParameters.cmake"
86ccff58f344 fix build if dcmtk is enabled
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 215
diff changeset
200 ${DCMTK_DICTIONARIES}
86ccff58f344 fix build if dcmtk is enabled
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 215
diff changeset
201
343
712acc87fa2e text layer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 338
diff changeset
202 FONT_UBUNTU_MONO_BOLD_16 ${ORTHANC_ROOT}/Resources/Fonts/UbuntuMonoBold-16.json
345
55438b1ca317 drawing borders
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 343
diff changeset
203 #FONT_UBUNTU_MONO_BOLD_64 ${ORTHANC_ROOT}/Resources/Fonts/UbuntuMonoBold-64.json
343
712acc87fa2e text layer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 338
diff changeset
204
256
86ccff58f344 fix build if dcmtk is enabled
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 215
diff changeset
205 # Resources specific to the Stone of Orthanc
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
206 COLORMAP_HOT ${ORTHANC_STONE_ROOT}/Resources/Colormaps/hot.lut
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
207 COLORMAP_JET ${ORTHANC_STONE_ROOT}/Resources/Colormaps/jet.lut
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
208 COLORMAP_RED ${ORTHANC_STONE_ROOT}/Resources/Colormaps/red.lut
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
209 COLORMAP_GREEN ${ORTHANC_STONE_ROOT}/Resources/Colormaps/green.lut
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
210 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
211
2f17b3659781 ORTHANC_STONE_APPLICATION_RESOURCES in CMake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 445
diff changeset
212 # 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
213 ${ORTHANC_STONE_APPLICATION_RESOURCES}
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
214 )
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
215
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
216
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
217 #####################################################################
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
218 ## System-specific patches
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
219 #####################################################################
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
220
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
221 if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows" AND
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
222 NOT MSVC AND
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
223 ENABLE_SDL)
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
224 # This is necessary when compiling EXE for Windows using MinGW
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
225 link_libraries(mingw32)
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
226 endif()
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
227
115
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
228 if (ORTHANC_SANDBOXED)
114
3541fc81331a starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 113
diff changeset
229 # Remove functions not suitable for a sandboxed environment
3541fc81331a starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 113
diff changeset
230 list(REMOVE_ITEM ORTHANC_CORE_SOURCES
3541fc81331a starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 113
diff changeset
231 ${ZLIB_SOURCES_DIR}/gzlib.c
3541fc81331a starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 113
diff changeset
232 ${ZLIB_SOURCES_DIR}/gzwrite.c
3541fc81331a starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 113
diff changeset
233 ${ZLIB_SOURCES_DIR}/gzread.c
3541fc81331a starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 113
diff changeset
234 )
3541fc81331a starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 113
diff changeset
235 endif()
3541fc81331a starting WebAssembly
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 113
diff changeset
236
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
237
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
238
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
239 #####################################################################
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
240 ## All the source files required to build Stone of Orthanc
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
241 #####################################################################
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
242
221
d7b2590744f8 wip: building applications reusable in SDL and WASM
am@osimis.io
parents: 215
diff changeset
243 set(APPLICATIONS_SOURCES
288
8c8da145fefa renamings and doc
am@osimis.io
parents: 287
diff changeset
244 ${ORTHANC_STONE_ROOT}/Applications/IStoneApplication.h
8c8da145fefa renamings and doc
am@osimis.io
parents: 287
diff changeset
245 ${ORTHANC_STONE_ROOT}/Applications/StoneApplicationContext.cpp
221
d7b2590744f8 wip: building applications reusable in SDL and WASM
am@osimis.io
parents: 215
diff changeset
246 )
d7b2590744f8 wip: building applications reusable in SDL and WASM
am@osimis.io
parents: 215
diff changeset
247
115
f598ffb81cda fix sandboxed build
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 114
diff changeset
248 if (NOT ORTHANC_SANDBOXED)
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
249 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
250 ${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
251 ${ORTHANC_STONE_ROOT}/Platforms/Generic/WebServiceCommandBase.cpp
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
252 ${ORTHANC_STONE_ROOT}/Platforms/Generic/WebServiceGetCommand.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
253 ${ORTHANC_STONE_ROOT}/Platforms/Generic/WebServicePostCommand.cpp
315
aad37d0b6407 Added LayerWidget::RemoveLayer + DELETE commands in WebService
am@osimis.io
parents: 307
diff changeset
254 ${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
255 ${ORTHANC_STONE_ROOT}/Platforms/Generic/DelayedCallCommand.cpp
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
256 ${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
257 ${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
258 ${ORTHANC_STONE_ROOT}/Platforms/Generic/OracleDelayedCallExecutor.h
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
259 )
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
260
274
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
261 if (ENABLE_SDL OR ENABLE_QT)
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
262 list(APPEND APPLICATIONS_SOURCES
291
87376a645ee1 renaming
am@osimis.io
parents: 288
diff changeset
263 ${ORTHANC_STONE_ROOT}/Applications/Generic/NativeStoneApplicationRunner.cpp
87376a645ee1 renaming
am@osimis.io
parents: 288
diff changeset
264 ${ORTHANC_STONE_ROOT}/Applications/Generic/NativeStoneApplicationContext.cpp
274
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
265 )
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
266 if (ENABLE_SDL)
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
267 list(APPEND APPLICATIONS_SOURCES
595
6e471e6cf09b CairoPolylineRenderer, SdlOpenGLWindow
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 594
diff changeset
268 ${ORTHANC_STONE_ROOT}/Applications/Sdl/SdlCairoSurface.cpp
274
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
269 ${ORTHANC_STONE_ROOT}/Applications/Sdl/SdlEngine.cpp
595
6e471e6cf09b CairoPolylineRenderer, SdlOpenGLWindow
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 594
diff changeset
270 ${ORTHANC_STONE_ROOT}/Applications/Sdl/SdlOpenGLWindow.cpp
274
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
271 ${ORTHANC_STONE_ROOT}/Applications/Sdl/SdlOrthancSurface.cpp
595
6e471e6cf09b CairoPolylineRenderer, SdlOpenGLWindow
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 594
diff changeset
272 ${ORTHANC_STONE_ROOT}/Applications/Sdl/SdlStoneApplicationRunner.cpp
274
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
273 ${ORTHANC_STONE_ROOT}/Applications/Sdl/SdlWindow.cpp
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
274 )
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
275 endif()
dc1beee33134 split SdlApplication into NativeApplication and SdlApplication
am@osimis.io
parents: 270
diff changeset
276 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
277 elseif (ENABLE_WASM)
221
d7b2590744f8 wip: building applications reusable in SDL and WASM
am@osimis.io
parents: 215
diff changeset
278 list(APPEND APPLICATIONS_SOURCES
242
092db46c6291 improved SDL/Wasm unification
am@osimis.io
parents: 222
diff changeset
279 ${ORTHANC_STONE_ROOT}/Applications/Wasm/StartupParametersBuilder.cpp
255
65562a28fe05 fixes for WASM
am@osimis.io
parents: 251
diff changeset
280 )
65562a28fe05 fixes for WASM
am@osimis.io
parents: 251
diff changeset
281
65562a28fe05 fixes for WASM
am@osimis.io
parents: 251
diff changeset
282 set(STONE_WASM_SOURCES
244
313903066093 cleanup
am@osimis.io
parents: 243
diff changeset
283 ${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
284 ${ORTHANC_STONE_ROOT}/Platforms/Wasm/WasmDelayedCallExecutor.cpp
244
313903066093 cleanup
am@osimis.io
parents: 243
diff changeset
285 ${ORTHANC_STONE_ROOT}/Platforms/Wasm/WasmWebService.cpp
313903066093 cleanup
am@osimis.io
parents: 243
diff changeset
286 ${ORTHANC_STONE_ROOT}/Platforms/Wasm/WasmViewport.cpp
307
be2660b6e40a wip: commands + status update
am@osimis.io
parents: 302
diff changeset
287 ${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
288 ${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
289 ${AUTOGENERATED_DIR}/default-library.c
255
65562a28fe05 fixes for WASM
am@osimis.io
parents: 251
diff changeset
290 )
295
b04b13810540 unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents: 294
diff changeset
291
b04b13810540 unified CMakeLists.txt into a single file for WASM/Native + bootstrap Command (to rework) + doc
am@osimis.io
parents: 294
diff changeset
292 # 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
293 # 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
294 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
295 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
296 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
297 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
298 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
299 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
300 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
301 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
302 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
303 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
304 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
305 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
306 endif()
80
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 73
diff changeset
307
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
308 list(APPEND ORTHANC_STONE_SOURCES
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
309 #${ORTHANC_STONE_ROOT}/Framework/Layers/SeriesFrameRendererFactory.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
310 #${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
311
597
9e51fb773bbd CairoCompositor
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 596
diff changeset
312 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/CairoCompositor.cpp
590
5430bcffba57 FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 588
diff changeset
313 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/ColorTextureSceneLayer.cpp
5430bcffba57 FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 588
diff changeset
314 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/FloatTextureSceneLayer.cpp
5430bcffba57 FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 588
diff changeset
315 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/InfoPanelSceneLayer.cpp
597
9e51fb773bbd CairoCompositor
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 596
diff changeset
316 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/CairoColorTextureRenderer.cpp
9e51fb773bbd CairoCompositor
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 596
diff changeset
317 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/CairoFloatTextureRenderer.cpp
9e51fb773bbd CairoCompositor
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 596
diff changeset
318 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/CairoInfoPanelRenderer.cpp
595
6e471e6cf09b CairoPolylineRenderer, SdlOpenGLWindow
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 594
diff changeset
319 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/CairoPolylineRenderer.cpp
597
9e51fb773bbd CairoCompositor
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 596
diff changeset
320 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/CairoTextRenderer.cpp
593
6bf8f881fcb5 OpenGLBasicPolylineRenderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 592
diff changeset
321 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/CompositorHelper.cpp
596
b716763571ad IPointerTracker
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 595
diff changeset
322 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/FixedPointAligner.cpp
b716763571ad IPointerTracker
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 595
diff changeset
323 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/PanSceneTracker.cpp
b716763571ad IPointerTracker
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 595
diff changeset
324 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/PointerEvent.cpp
590
5430bcffba57 FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 588
diff changeset
325 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/PolylineSceneLayer.cpp
596
b716763571ad IPointerTracker
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 595
diff changeset
326 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/RotateSceneTracker.cpp
590
5430bcffba57 FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 588
diff changeset
327 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Scene2D.cpp
5430bcffba57 FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 588
diff changeset
328 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/TextSceneLayer.cpp
5430bcffba57 FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 588
diff changeset
329 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/TextureBaseSceneLayer.cpp
596
b716763571ad IPointerTracker
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 595
diff changeset
330 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/ZoomSceneTracker.cpp
590
5430bcffba57 FloatTextureSceneLayer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 588
diff changeset
331
576
529c9617654b FontRenderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 573
diff changeset
332 ${ORTHANC_STONE_ROOT}/Framework/Fonts/FontRenderer.cpp
529c9617654b FontRenderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 573
diff changeset
333 ${ORTHANC_STONE_ROOT}/Framework/Fonts/Glyph.cpp
529c9617654b FontRenderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 573
diff changeset
334 ${ORTHANC_STONE_ROOT}/Framework/Fonts/GlyphAlphabet.cpp
577
b098a3aaf694 alphabet of glyphs
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 576
diff changeset
335 ${ORTHANC_STONE_ROOT}/Framework/Fonts/GlyphBitmapAlphabet.cpp
b098a3aaf694 alphabet of glyphs
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 576
diff changeset
336 ${ORTHANC_STONE_ROOT}/Framework/Fonts/GlyphTextureAlphabet.cpp
b098a3aaf694 alphabet of glyphs
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 576
diff changeset
337 ${ORTHANC_STONE_ROOT}/Framework/Fonts/TextBoundingBox.cpp
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
338 ${ORTHANC_STONE_ROOT}/Framework/Layers/CircleMeasureTracker.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
339 ${ORTHANC_STONE_ROOT}/Framework/Layers/ColorFrameRenderer.cpp
402
72355b637945 removed VolumeSlicerBase
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 398
diff changeset
340 ${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
341 ${ORTHANC_STONE_ROOT}/Framework/Layers/DicomStructureSetSlicer.cpp
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
342 ${ORTHANC_STONE_ROOT}/Framework/Layers/FrameRenderer.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
343 ${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
344 ${ORTHANC_STONE_ROOT}/Framework/Layers/IVolumeSlicer.h
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
345 ${ORTHANC_STONE_ROOT}/Framework/Layers/LineLayerRenderer.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
346 ${ORTHANC_STONE_ROOT}/Framework/Layers/LineMeasureTracker.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
347 ${ORTHANC_STONE_ROOT}/Framework/Layers/RenderStyle.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
348 ${ORTHANC_STONE_ROOT}/Framework/Layers/SliceOutlineRenderer.cpp
430
b85f635f1eb5 added serialization for RadiographyScene
am@osimis.io
parents: 415
diff changeset
349 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyAlphaLayer.cpp
b85f635f1eb5 added serialization for RadiographyScene
am@osimis.io
parents: 415
diff changeset
350 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyDicomLayer.cpp
415
c0589c3173fd finished reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 414
diff changeset
351 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyLayer.cpp
c0589c3173fd finished reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 414
diff changeset
352 ${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
353 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyLayerMaskTracker.cpp
414
f7616c010056 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 413
diff changeset
354 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyLayerMoveTracker.cpp
415
c0589c3173fd finished reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 414
diff changeset
355 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyLayerResizeTracker.cpp
414
f7616c010056 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 413
diff changeset
356 ${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
357 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyMaskLayer.cpp
408
6834c236b36d reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 405
diff changeset
358 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyScene.cpp
413
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
359 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographySceneCommand.cpp
430
b85f635f1eb5 added serialization for RadiographyScene
am@osimis.io
parents: 415
diff changeset
360 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographySceneReader.cpp
b85f635f1eb5 added serialization for RadiographyScene
am@osimis.io
parents: 415
diff changeset
361 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographySceneWriter.cpp
b85f635f1eb5 added serialization for RadiographyScene
am@osimis.io
parents: 415
diff changeset
362 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyTextLayer.cpp
413
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
363 ${ORTHANC_STONE_ROOT}/Framework/Radiography/RadiographyWidget.cpp
415
c0589c3173fd finished reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 414
diff changeset
364 ${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
365 ${ORTHANC_STONE_ROOT}/Framework/SmartLoader.cpp
50e5ec1bdd46 separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 330
diff changeset
366 ${ORTHANC_STONE_ROOT}/Framework/StoneEnumerations.cpp
50e5ec1bdd46 separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 330
diff changeset
367 ${ORTHANC_STONE_ROOT}/Framework/StoneException.h
610
0c4c0693b97c OrthancStone::StoneInitialize()
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 600
diff changeset
368 ${ORTHANC_STONE_ROOT}/Framework/StoneInitialization.cpp
409
99c9b3238008 AffineTransform2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 408
diff changeset
369 ${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
370 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/BaseWebService.cpp
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
371 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/CoordinateSystem3D.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
372 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/DicomFrameConverter.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
373 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/DicomStructureSet.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
374 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/DownloadStack.cpp
576
529c9617654b FontRenderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 573
diff changeset
375 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/DynamicBitmap.cpp
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
376 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/Extent2D.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
377 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/FiniteProjectiveCamera.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
378 ${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
379 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/IDelayedCallExecutor.h
377
8eb4fe74000f refactoring
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 365
diff changeset
380 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/IWebService.cpp
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
381 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/ImageGeometry.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
382 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/LinearAlgebra.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
383 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/MessagingToolbox.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
384 ${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
385 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/OrthancApiClient.cpp
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
386 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/OrthancSlicesLoader.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
387 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/ParallelSlices.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
388 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/ParallelSlicesCursor.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
389 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/ShearWarpProjectiveTransform.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
390 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/Slice.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
391 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/SlicesSorter.cpp
409
99c9b3238008 AffineTransform2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 408
diff changeset
392 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/UndoRedoStack.cpp
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
393 ${ORTHANC_STONE_ROOT}/Framework/Toolbox/ViewportGeometry.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
394 ${ORTHANC_STONE_ROOT}/Framework/Viewport/CairoContext.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
395 ${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
396 ${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
397 ${ORTHANC_STONE_ROOT}/Framework/Viewport/IStatusBar.h
330
7a364e44fbb4 renamed SetDefaultView in FitContent
am@osimis.io
parents: 327
diff changeset
398 ${ORTHANC_STONE_ROOT}/Framework/Viewport/IViewport.h
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
399 ${ORTHANC_STONE_ROOT}/Framework/Viewport/WidgetViewport.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
400 ${ORTHANC_STONE_ROOT}/Framework/Volumes/ImageBuffer3D.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
401 ${ORTHANC_STONE_ROOT}/Framework/Volumes/StructureSetLoader.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
402 ${ORTHANC_STONE_ROOT}/Framework/Volumes/VolumeReslicer.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
403 ${ORTHANC_STONE_ROOT}/Framework/Widgets/CairoWidget.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
404 ${ORTHANC_STONE_ROOT}/Framework/Widgets/EmptyWidget.cpp
327
8716176ff7f0 added support for arrow keys
am@osimis.io
parents: 315
diff changeset
405 ${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
406 ${ORTHANC_STONE_ROOT}/Framework/Widgets/IWorldSceneInteractor.h
281
300d8b8c48b3 mouse tracker tuning
am@osimis.io
parents: 276
diff changeset
407 ${ORTHANC_STONE_ROOT}/Framework/Widgets/IWorldSceneMouseTracker.h
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
408 ${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
409 ${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
410 ${ORTHANC_STONE_ROOT}/Framework/Widgets/PanZoomMouseTracker.cpp
388
20f149669c1f renamed LayerWidget as SliceViewerWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 377
diff changeset
411 ${ORTHANC_STONE_ROOT}/Framework/Widgets/SliceViewerWidget.cpp
215
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
412 ${ORTHANC_STONE_ROOT}/Framework/Widgets/TestCairoWidget.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
413 ${ORTHANC_STONE_ROOT}/Framework/Widgets/TestWorldSceneWidget.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
414 ${ORTHANC_STONE_ROOT}/Framework/Widgets/WidgetBase.cpp
07792a582de9 fix path
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 214
diff changeset
415 ${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
416 ${ORTHANC_STONE_ROOT}/Framework/Widgets/ZoomMouseTracker.cpp
576
529c9617654b FontRenderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 573
diff changeset
417
332
50e5ec1bdd46 separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 330
diff changeset
418 ${ORTHANC_STONE_ROOT}/Framework/dev.h
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
419
299
3897f9f28cfa backup work in progress: updated messaging framework with ICallable
am@osimis.io
parents: 295
diff changeset
420 ${ORTHANC_STONE_ROOT}/Framework/Messages/ICallable.h
250
5e642859267e added new Observable/Observer & MessageBroker (not used yet)
am@osimis.io
parents: 249
diff changeset
421 ${ORTHANC_STONE_ROOT}/Framework/Messages/IMessage.h
403
99e31898910e IObservable.cpp
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 402
diff changeset
422 ${ORTHANC_STONE_ROOT}/Framework/Messages/IObservable.cpp
250
5e642859267e added new Observable/Observer & MessageBroker (not used yet)
am@osimis.io
parents: 249
diff changeset
423 ${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
424 ${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
425 ${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
426 ${ORTHANC_STONE_ROOT}/Framework/Messages/Promise.h
250
5e642859267e added new Observable/Observer & MessageBroker (not used yet)
am@osimis.io
parents: 249
diff changeset
427
332
50e5ec1bdd46 separating ZoomMouseTracker and PanMouseTracker from WorldSceneWidget
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 330
diff changeset
428 ${ORTHANC_ROOT}/Plugins/Samples/Common/DicomDatasetReader.cpp
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
429 ${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
430 ${ORTHANC_ROOT}/Plugins/Samples/Common/FullOrthancDataset.cpp
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
431 ${ORTHANC_ROOT}/Plugins/Samples/Common/IOrthancConnection.cpp
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
432
80
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 73
diff changeset
433 ${PLATFORM_SOURCES}
145
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 140
diff changeset
434 ${APPLICATIONS_SOURCES}
113
2eca030792aa using the Orthanc Framework
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 111
diff changeset
435 ${ORTHANC_CORE_SOURCES}
256
86ccff58f344 fix build if dcmtk is enabled
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 215
diff changeset
436 ${ORTHANC_DICOM_SOURCES}
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
437 ${AUTOGENERATED_SOURCES}
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
438
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
439 # Mandatory components
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
440 ${CAIRO_SOURCES}
576
529c9617654b FontRenderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 573
diff changeset
441 ${FREETYPE_SOURCES}
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
442 ${PIXMAN_SOURCES}
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
443
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
444 # Optional components
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
445 ${SDL_SOURCES}
276
5de5699ad570 first display in QCairoWidget; no mouse interaction yet
am@osimis.io
parents: 274
diff changeset
446 ${QT_SOURCES}
145
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 140
diff changeset
447 ${BOOST_EXTENDED_SOURCES}
613
412a2d01a189 automatic initialization of glew
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 610
diff changeset
448 ${GLEW_SOURCES}
0
351ab0da0150 initial commit
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
449 )
221
d7b2590744f8 wip: building applications reusable in SDL and WASM
am@osimis.io
parents: 215
diff changeset
450
578
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
451
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
452 if (ENABLE_OPENGL)
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
453 list(APPEND ORTHANC_STONE_SOURCES
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
454 ${ORTHANC_STONE_ROOT}/Framework/Fonts/OpenGLTextCoordinates.cpp
579
fadacfbf5538 OpenGL programs and textures
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
455 ${ORTHANC_STONE_ROOT}/Framework/OpenGL/OpenGLProgram.cpp
578
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
456 ${ORTHANC_STONE_ROOT}/Framework/OpenGL/OpenGLShader.cpp
579
fadacfbf5538 OpenGL programs and textures
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 578
diff changeset
457 ${ORTHANC_STONE_ROOT}/Framework/OpenGL/OpenGLTexture.cpp
594
9807ed3d3e03 OpenGLCompositor
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 593
diff changeset
458 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/OpenGLCompositor.cpp
9807ed3d3e03 OpenGLCompositor
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 593
diff changeset
459 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLAdvancedPolylineRenderer.cpp
593
6bf8f881fcb5 OpenGLBasicPolylineRenderer
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 592
diff changeset
460 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLBasicPolylineRenderer.cpp
592
bbe29efd3d1c OpenGLLinesProgram
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 591
diff changeset
461 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLColorTextureProgram.cpp
594
9807ed3d3e03 OpenGLCompositor
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 593
diff changeset
462 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLColorTextureRenderer.cpp
591
b66ced2c43d4 OpenGLTextureProgram
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 590
diff changeset
463 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLFloatTextureProgram.cpp
594
9807ed3d3e03 OpenGLCompositor
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 593
diff changeset
464 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLFloatTextureRenderer.cpp
9807ed3d3e03 OpenGLCompositor
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 593
diff changeset
465 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLInfoPanelRenderer.cpp
592
bbe29efd3d1c OpenGLLinesProgram
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 591
diff changeset
466 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLLinesProgram.cpp
bbe29efd3d1c OpenGLLinesProgram
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 591
diff changeset
467 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLTextProgram.cpp
594
9807ed3d3e03 OpenGLCompositor
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 593
diff changeset
468 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLTextRenderer.cpp
591
b66ced2c43d4 OpenGLTextureProgram
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 590
diff changeset
469 ${ORTHANC_STONE_ROOT}/Framework/Scene2D/Internals/OpenGLTextureProgram.cpp
578
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
470 )
616
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
471
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
472 if (ENABLE_WASM)
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
473 list(APPEND ORTHANC_STONE_SOURCES
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
474 ${ORTHANC_STONE_ROOT}/Framework/OpenGL/WebAssemblyOpenGLContext.cpp
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
475 )
97926984d5d0 WebAssembly sample using Scene2D
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 613
diff changeset
476 endif()
578
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
477 endif()
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
478
21fd70df3fc9 starting work on OpenGL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 577
diff changeset
479
564
9ea4b57a9ed8 fix include
Alain Mazy <alain@mazy.be>
parents: 542
diff changeset
480 include_directories(${ORTHANC_STONE_ROOT})
413
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
481
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
482
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
483 ##
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
484 ## TEST - Automatically add all ".h" headers to the list of sources
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
485 ##
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
486
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
487 macro(AutodetectHeaderFiles SOURCES_VAR)
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
488 set(TMP)
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
489
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
490 foreach(f IN LISTS ${SOURCES_VAR})
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
491 get_filename_component(_base ${f} NAME_WE)
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
492 get_filename_component(_dir ${f} DIRECTORY)
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
493 get_filename_component(_extension ${f} EXT)
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
494 set(_header ${_dir}/${_base}.h)
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
495
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
496 if ((_extension STREQUAL ".cpp" OR
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
497 _extension STREQUAL ".cc" OR
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
498 _extension STREQUAL ".h") AND
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
499 EXISTS ${_header} AND
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
500 NOT IS_DIRECTORY ${_header} AND
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
501 NOT IS_SYMLINK ${_header})
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
502
414
f7616c010056 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 413
diff changeset
503 # Prevent adding the header twice if it is already manually
f7616c010056 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 413
diff changeset
504 # specified in the sources
413
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
505 list (FIND SOURCES_VAR ${_header} _index)
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
506 if (${_index} EQUAL -1)
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
507 list(APPEND TMP ${_header})
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
508 endif()
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
509 endif()
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
510 endforeach()
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
511
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
512 list(APPEND ${SOURCES_VAR} ${TMP})
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
513 endmacro()
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
514
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
515
18b707fb8620 reorganization
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 410
diff changeset
516 AutodetectHeaderFiles(ORTHANC_STONE_SOURCES)