1 # ---------------------------------------------------------------------
3 # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
5 # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
6 # Previous Authors : Laurent Guigues, Jean-Pierre Roux
7 # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
9 # This software is governed by the CeCILL-B license under French law and
10 # abiding by the rules of distribution of free software. You can use,
11 # modify and/ or redistribute the software under the terms of the CeCILL-B
12 # license as circulated by CEA, CNRS and INRIA at the following URL
13 # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
14 # or in the file LICENSE.txt.
16 # As a counterpart to the access to the source code and rights to copy,
17 # modify and redistribute granted by the license, users are provided only
18 # with a limited warranty and the software's author, the holder of the
19 # economic rights, and the successive licensors have only limited
22 # The fact that you are presently reading this means that you have had
23 # knowledge of the CeCILL-B license and that you accept its terms.
24 # ------------------------------------------------------------------------ */
27 INCLUDE_REGULAR_EXPRESSION("^.*$")
30 #===========================================================================
31 # CMAKE SETTINGS FOR BUILDING A BBTK PACKAGE
32 #===========================================================================
34 #===========================================================================
35 # THE NAME OF THE BBTK PACKAGE
36 SET(BBTK_PACKAGE_NAME creaMaracasVisu)
37 #===========================================================================
41 #===========================================================================
42 # IF IT IS A STANDALONE PROJECT UNCOMMENT NEXT LINE TO DECLARE YOUR PROJECT
43 # PROJECT(bb${BBTK_PACKAGE_NAME})
44 #===========================================================================
46 #===========================================================================
48 # !!! NO COMMA ALLOWED !!!
49 SET(${BBTK_PACKAGE_NAME}_AUTHOR "eduardo.davila [at] creatis.insa-lyon.fr")
50 #===========================================================================
52 #===========================================================================
54 SET(${BBTK_PACKAGE_NAME}_DESCRIPTION "Maracas library. LG : what does it provide ?")
55 #===========================================================================
57 #===========================================================================
58 # PACKAGE VERSION NUMBER
59 SET(${BBTK_PACKAGE_NAME}_MAJOR_VERSION 1)
60 SET(${BBTK_PACKAGE_NAME}_MINOR_VERSION 0)
61 SET(${BBTK_PACKAGE_NAME}_BUILD_VERSION 0)
62 #===========================================================================
65 #===========================================================================
66 # UNCOMMENT EACH LIBRARY NEEDED (WILL BE FOUND AND USED AUTOMATICALLY)
67 SET(${BBTK_PACKAGE_NAME}_USE_VTK ON)
68 SET(${BBTK_PACKAGE_NAME}_USE_ITK ON)
69 # SET(${BBTK_PACKAGE_NAME}_USE_GDCM ON)
70 # SET(${BBTK_PACKAGE_NAME}_USE_GSMIS ON)
71 SET(${BBTK_PACKAGE_NAME}_USE_WXWIDGETS ON)
72 #===========================================================================
74 #===========================================================================
75 # LIST HERE THE OTHER bbtk PACKAGES NEEDED
76 # (WILL BE FOUND AND USED AUTOMATICALLY)
77 SET(${BBTK_PACKAGE_NAME}_USE_PACKAGES
84 #===========================================================================
86 #===========================================================================
87 # THE SOURCES OF THE PACKAGE
88 # EITHER UNCOMMENT NEXT LINE TO COMPILE ALL .cxx OF THE src DIRECTORY :
89 SET(${BBTK_PACKAGE_NAME}_COMPILE_ALL_CXX ON)
90 # ... OR LIST THE FILES TO COMPILE MANUALLY :
91 #SET(${BBTK_PACKAGE_NAME}_SOURCES
92 # LIST HERE THE FILES TO COMPILE TO BUILD THE LIB
93 # E.G. TO COMPILE "toto.cxx" ADD "toto" (NO EXTENSION)
94 # THE PATH MUST BE RELATIVE TO THE src FOLDER
96 #===========================================================================
98 #===========================================================================
99 # THE xml SOURCES OF THE PACKAGE
100 # EITHER UNCOMMENT NEXT LINE TO bbfy ALL .xml OF THE src DIRECTORY :
101 SET(${BBTK_PACKAGE_NAME}_COMPILE_ALL_XML ON)
102 # ... OR LIST THE FILES TO COMPILE MANUALLY :
103 #SET(${BBTK_PACKAGE_NAME}_XML_SOURCES
104 # LIST HERE THE FILES TO bbfy TO BUILD THE LIB
105 # E.G. TO bbfy "toto.xml" ADD "toto" (NO EXTENSION)
106 # THE PATH MUST BE RELATIVE TO THE src FOLDER
108 #===========================================================================
110 #===========================================================================
111 # THE SCRIPT-DEFINED BOXES OF THE PACKAGE (bbs)
112 # EITHER UNCOMMENT NEXT LINE TO INCLUDE ALL .bbs OF THE bbs/boxes DIRECTORY :
113 SET(${BBTK_PACKAGE_NAME}_INCLUDE_ALL_BBS_BOXES ON)
114 # ... OR LIST THE FILES TO INCLUDE MANUALLY :
115 # SET(${BBTK_PACKAGE_NAME}_BBS_BOXES
116 # LIST HERE THE bbs FILES TO INCLUDE
117 # E.G. TO INCLUDE "boxes/bbtoto.bbs" ADD "boxes/bbtoto" (NO EXTENSION)
118 # !! THE PATH MUST BE RELATIVE TO THE bbs FOLDER !!
120 #===========================================================================
122 #===========================================================================
123 # THE SCRIPT-DEFINED APPLICATIONS OF THE PACKAGE (bbs)
124 # EITHER UNCOMMENT NEXT LINE TO INCLUDE ALL .bbs OF THE bbs/appli DIRECTORY :
125 SET(${BBTK_PACKAGE_NAME}_INCLUDE_ALL_BBS_APPLI ON)
126 # ... OR LIST THE FILES TO INCLUDE MANUALLY :
127 # SET(${BBTK_PACKAGE_NAME}_BBS_APPLI
128 # LIST HERE THE bbs FILES TO INCLUDE
129 # E.G. TO INCLUDE "appli/testToto.bbs" ADD "appli/testToto" (NO EXTENSION)
130 # !! THE PATH MUST BE RELATIVE TO THE bbs FOLDER !!
132 #===========================================================================
134 #===========================================================================
135 SET(${BBTK_PACKAGE_NAME}_INCLUDE_DIRS
136 # LIST HERE YOUR ADDITIONAL INCLUDE DIRECTORIES
140 # - automatically handled libraries or packages : wx, vtk... (see above)
141 # - the dirs automatically set by other libraries found by FIND_PACKAGE
143 #===========================================================================
145 #FIND_PATH( libIdo_DIR libidobin $ENV{LIBIDO_PATH} )
146 #FIND_PACKAGE(libIdo)
147 #INCLUDE_DIRECTORIES(${LIBIDO_INCLUDE_PATH})
149 #===========================================================================
150 # INCLUDE_DIRECTORIES(
151 # # LIST HERE YOUR ADDITIONAL INCLUDE DIRECTORIES (EXCEPT BBTK'S)
152 # ../lib/maracasVisuLib/src/kernel
153 # ../lib/maracasVisuLib/include
154 # ../lib/maracasVisuLib/src/kernel
155 # ../lib/maracasVisuLib/src/interface/wxWindows
156 # ../lib/maracasVisuLib/src/interface/wxWindows/Contour
157 # ../lib/maracasVisuLib/src/interface/wxWindows/widgets
158 # ../lib/maracasVisuLib/src/interface/wxWindows/widgets/pPlotter
159 # ../lib/maracasVisuLib/src/interface/wxWindows/widgets/manualContour
160 # ../lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint
161 # ../lib/maracasVisuLib/src/interface/wxWindows/widgets/ThresholdImageView
162 # ../lib/maracasVisuLib/src/CutModule/interface
163 # ../lib/maracasVisuLib/src/CutModule/kernel
165 ### ${MaracasSrcDir}/ILPD/src/wxInterface
167 #===========================================================================
169 #TODO for a nice VC++ we need to add header file...
170 #1SET(MARACASVISU_LIB_SRCS
171 #1 ${MaracasSrcDir}/manualContour.cpp
172 #1 ${MaracasSrcDir}/manualContour.h
173 #1 ${MaracasSrcDir}/Contour/ContourCrownWidget.cxx
174 #1 ${MaracasSrcDir}/Contour/ContourCrownWidget.h
175 #1 ${MaracasSrcDir}/Contour/ContourVOIWidget.cxx
176 #1 ${MaracasSrcDir}/Contour/ContourVOIWidget.h
177 #1 ${MaracasSrcDir}/Contour/Propagation.cxx
178 #1 ${MaracasSrcDir}/Contour/Propagation.h
179 #1 ${MaracasSrcDir}/Contour/ExtractControlPoints2D.cxx
180 #1 ${MaracasSrcDir}/Contour/ExtractControlPoints2D.h
181 #1 ${MaracasSrcDir}/Contour/AutoControlPoints.cxx
182 #1 ${MaracasSrcDir}/Contour/AutoControlPoints.h
183 #1 ${MaracasSrcDir}/Contour/ContourPropagation.cxx
184 #1 ${MaracasSrcDir}/Contour/ContourPropagation.h
185 #1 ${MaracasSrcDir}/Contour/contoursIntersection.cxx
186 #1 ${MaracasSrcDir}/Contour/contoursIntersection.h
187 #1 ${MaracasSrcDir}/Contour/vectorFunctions.cxx
188 #1 ${MaracasSrcDir}/Contour/vectorFunctions.h
191 # wxMaracas3DBrowser.cxx
192 # wxMaracas3DBrowser.h
193 # wxMaracasDataBrowser.cxx
194 # wxMaracasDataBrowser.h
195 # wxMaracasImageBrowser.cxx
196 # wxMaracasImageBrowser.h
197 #1 ${MaracasSrcDir}/wxMaracasImageBrowser02.cxx
198 #1 ${MaracasSrcDir}/wxMaracasImageBrowser02.h
199 #1 ${MaracasSrcDir}/widgets/wxReadingPriorityPanel.cpp
200 #1 ${MaracasSrcDir}/widgets/wxReadingPriorityPanel.h
201 # wxMaracasFrame02.cxx
204 ### ${MaracasSrcDir}/wxILPDwithImage.cxx
205 ### ${MaracasSrcDir}/wxILPDwithImage.h
207 # wxMaracasParametersDialog.cxx
208 # wxMaracasParametersDialog.h
209 # widgets/wxParametersDialog.cpp
210 # widgets/wxParametersDialog.h
211 # wxMaracasHelpDialog.cxx
212 # wxMaracasHelpDialog.h
213 # wxMaracasQuantification.cxx
214 # wxMaracasQuantification.h
215 #1 ${MaracasSrcDir}/widgets/wxVTKRenderWindowInteractor.cxx
216 #1 ${MaracasSrcDir}/widgets/wxVTKRenderWindowInteractor.h
217 # widgets/wxVTKRenderWindowInteractorEditContour.cxx
218 # widgets/wxVTKRenderWindowInteractorEditContour.h
219 # widgets/vtk3DSurfaceWidget.cxx
220 # widgets/vtk3DSurfaceWidget.h
221 # widgets/vtk3DQuantSurfaceWidget.cxx
222 # widgets/vtk3DQuantSurfaceWidget.h
223 # widgets/vtk2DQuantSliceWidget.cxx
224 # widgets/vtk2DQuantSliceWidget.h
225 # widgets/vtk3DSurfaceSTLWidget.cxx
226 # widgets/vtk3DSurfaceSTLWidget.h
227 # widgets/wxSurfaceSTLWidget.cxx
228 # widgets/wxSurfaceSTLWidget.h
229 # widgets/wxSurfaceWidget.cxx
230 # widgets/wxSurfaceWidget.h
231 #1 ${MaracasSrcDir}/widgets/InterfaceVtkPanelWidgets.cxx
232 #1 ${MaracasSrcDir}/widgets/InterfaceVtkPanelWidgets.h
233 # widgets/wxImageBrowserWdg.cxx
234 # widgets/wxImageBrowserWdg.h
235 # widgets/wxImageViewerWidget.cxx
236 # widgets/wxImageViewerWidget.h
237 #1 ${MaracasSrcDir}/widgets/vtkClosePolyData.cxx
238 #1 ${MaracasSrcDir}/widgets/vtkClosePolyData.h
239 # widgets/vtkImagePolyDataSeedConnectivity.cxx
240 # widgets/vtkImagePolyDataSeedConnectivity.h
241 # widgets/vtkInteractorStyleCutter.cxx
242 # widgets/vtkInteractorStyleCutter.h
243 # widgets/wxQuantificationWidget.cxx
244 # widgets/wxQuantificationWidget.h
245 #1 ${MaracasSrcDir}/wxMaracasMPR.cxx
246 #1 ${MaracasSrcDir}/wxMaracasMPR.h
247 # ${MaracasSrcDir}/wxMaracasEmptyPanel.cxx
248 # ${MaracasSrcDir}/wxMaracasEmptyPanel.h
249 # ${MaracasSrcDir}/widgets/wxEmptyPanelWidget.cxx
250 # ${MaracasSrcDir}/widgets/wxEmptyPanelWidget.h
251 # ${MaracasSrcDir}/wxMaracasEmptyPanel_2.cxx
252 # ${MaracasSrcDir}/wxMaracasEmptyPanel_2.h
253 # ${MaracasSrcDir}/widgets/wxEmptyPanelWidget_2.cxx
254 # ${MaracasSrcDir}/widgets/wxEmptyPanelWidget_2.h
255 #1 ${MaracasSrcDir}/widgets/wxMPRWidget.cxx
256 #1 ${MaracasSrcDir}/widgets/wxMPRWidget.h
257 #1 ${MaracasSrcDir}/widgets/wxMPRBaseData.cxx
258 #1 ${MaracasSrcDir}/widgets/wxMPRBaseData.h
259 #1 ${MaracasSrcDir}/widgets/wxVtkBaseView.cxx
260 #1 ${MaracasSrcDir}/widgets/wxVtkBaseView.h
261 #1 ${MaracasSrcDir}/widgets/wxMaracas_ViewerWidget.h
262 #1 ${MaracasSrcDir}/widgets/wxMaracas_ViewerWidget.cxx
263 #1 ${MaracasSrcDir}/widgets/wxMaracas_N_ViewersWidget.h
264 #1 ${MaracasSrcDir}/widgets/wxMaracas_N_ViewersWidget.cxx
265 # wxMaracasProcessingCT.cxx
266 # wxMaracasProcessingCT.h
267 # widgets/wxProcessingCTWidget.cxx
268 # widgets/wxProcessingCTWidget.h
269 # wxMaracasQuantificationCT.cxx
270 # wxMaracasQuantificationCT.h
271 # widgets/wxQuantificationWidgetCT.cxx
272 # widgets/wxQuantificationWidgetCT.h
273 # widgets/wxQuantificationWidget_base.cxx
274 # widgets/wxQuantificationWidget_base.h
275 # wxMaracasEmptyPanel_3.cxx
276 # wxMaracasEmptyPanel_3.h
277 # widgets/wxEmptyPanel_3_Widget.cxx
278 # widgets/wxEmptyPanel_3_Widget.h
279 #1 ${MaracasSrcDir}/wxMaracas_ManualTree_MPR.cxx
280 #1 ${MaracasSrcDir}/wxMaracas_ManualTree_MPR.h
281 #1 ${MaracasSrcDir}/widgets/wxManualTree_MPRWidget.cxx
282 #1 ${MaracasSrcDir}/widgets/wxManualTree_MPRWidget.h
283 # widgets/wxManualRegistration3D.cxx
284 # widgets/wxManualRegistration3D.h
285 #1 ${MaracasSrcDir}/res/wxInterface.rc
286 #1 ${MaracasSrcDir}/widgets/ContourView.h
287 #1 ${MaracasSrcDir}/widgets/ContourView.cxx
288 #1 ${MaracasSrcDir}/widgets/PointView.h
289 #1 ${MaracasSrcDir}/widgets/PointView.cxx
290 #1 ${MaracasSrcDir}/widgets/LineView.h
291 #1 ${MaracasSrcDir}/widgets/LineView.cxx
292 # wxMaracasPathology_01.cxx
293 # wxMaracasPathology_01.h
294 # widgets/wxPathologyWidget_01.cxx
295 # widgets/wxPathologyWidget_01.h
296 # widgets/wxSTLWidget_02.cxx
297 # widgets/wxSTLWidget_02.h
298 # widgets/wxSTLWidget_03.cxx
299 # widgets/wxSTLWidget_03.h
300 #1 ${MaracasSrcDir}/widgets/UtilVtk3DGeometriSelection.cxx
301 #1 ${MaracasSrcDir}/widgets/UtilVtk3DGeometriSelection.h
302 # manualContourContainer.cxx
303 # manualContourContainer.h
304 # wxMaracas_ManualSegmentation_MPR.cxx
305 # wxMaracas_ManualSegmentation_MPR.h
306 # widgets/wxManualSegmentation_MPRWidget.cxx
307 # widgets/wxManualSegmentation_MPRWidget.h
308 # wxMaracas_SegmentationFM3D.cxx
309 # wxMaracas_SegmentationFM3D.h
310 # widgets/wxSegmentationFM3DWidget.cxx
311 # widgets/wxSegmentationFM3DWidget.h
312 # wxMaracas_ManualContour_Panel.cxx
313 # wxMaracas_ManualContour_Panel.h
316 #####pPlotter classes
317 #1 ${MaracasSrcDir}/widgets/pPlotter/HistogramDialog.cxx
318 #1 ${MaracasSrcDir}/widgets/pPlotter/HistogramDialog.h
319 #1 ${MaracasSrcDir}/widgets/pPlotter/HistogramWidget.cxx
320 #1 ${MaracasSrcDir}/widgets/pPlotter/HistogramWidget.h
321 #1 ${MaracasSrcDir}/widgets/pPlotter/pHistogram.cxx
322 #1 ${MaracasSrcDir}/widgets/pPlotter/pHistogram.h
323 #1 ${MaracasSrcDir}/widgets/pPlotter/mBarRange.cxx
324 #1 ${MaracasSrcDir}/widgets/pPlotter/mBarRange.h
325 #1 ${MaracasSrcDir}/widgets/pPlotter/pLogicalFunction.cxx
326 #1 ${MaracasSrcDir}/widgets/pPlotter/pLogicalFunction.h
327 #1 ${MaracasSrcDir}/widgets/pPlotter/LogicalColorBar.cxx
328 #1 ${MaracasSrcDir}/widgets/pPlotter/LogicalColorBar.h
329 #1 ${MaracasSrcDir}/widgets/pPlotter/pGraphicalFunction.h
330 #1 ${MaracasSrcDir}/widgets/pPlotter/pGraphicalFunction.cxx
331 #1 ${MaracasSrcDir}/widgets/pPlotter/pFunctionPoint.cxx
332 #1 ${MaracasSrcDir}/widgets/pPlotter/pFunctionPoint.h
333 #1 ${MaracasSrcDir}/widgets/pPlotter/pPlotterWindow.cxx
334 #1 ${MaracasSrcDir}/widgets/pPlotter/pPlotterWindow.h
335 #1 ${MaracasSrcDir}/widgets/pPlotter/pPlotterLayer.cxx
336 #1 ${MaracasSrcDir}/widgets/pPlotter/pPlotterLayer.h
337 #1 ${MaracasSrcDir}/widgets/pPlotter/pPlotterScaleX.h
338 #1 ${MaracasSrcDir}/widgets/pPlotter/pPlotterScaleX.cxx
339 #1 ${MaracasSrcDir}/widgets/pPlotter/pPlotterScaleY.h
340 #1 ${MaracasSrcDir}/widgets/pPlotter/pPlotterScaleY.cxx
341 #1 ${MaracasSrcDir}/widgets/pPlotter/pColorBar.h
342 #1 ${MaracasSrcDir}/widgets/pPlotter/pColorBar.cxx
343 #1 ${MaracasSrcDir}/widgets/pPlotter/pFigure.h
344 #1 ${MaracasSrcDir}/widgets/pPlotter/pFigure.cxx
345 #1 ${MaracasSrcDir}/widgets/pPlotter/pColorPoint.h
346 #1 ${MaracasSrcDir}/widgets/pPlotter/pColorPoint.cxx
347 #1 ${MaracasSrcDir}/widgets/pPlotter/pPlotter.h
348 #1 ${MaracasSrcDir}/widgets/pPlotter/pPlotter.cxx
349 #1 ${MaracasSrcDir}/widgets/pPlotter/mathplot.cxx
350 #1 ${MaracasSrcDir}/widgets/pPlotter/mathplot.h
351 #1 ${MaracasSrcDir}/widgets/pPlotter/MaximumsDialog.cxx
352 #1 ${MaracasSrcDir}/widgets/pPlotter/MaximumsDialog.h
353 #1 ${MaracasSrcDir}/widgets/pPlotter/Histogram.cxx
354 #1 ${MaracasSrcDir}/widgets/pPlotter/Histogram.h
357 #1 ${MaracasSrcDir}/../../../include/matrix.h
358 #1 ${MaracasSrcDir}/../../kernel/marImageData.cpp
359 #1 ${MaracasSrcDir}/../../kernel/marImageData.h
360 #1 ${MaracasSrcDir}/../../kernel/marDicomBase.cpp
361 #1 ${MaracasSrcDir}/../../kernel/marDicomBase.h
362 #1 ${MaracasSrcDir}/../../kernel/marGdcmDicom.cpp
363 #1 ${MaracasSrcDir}/../../kernel/marGdcmDicom.h
364 #1 ${MaracasSrcDir}/../../kernel/marObject.cpp
365 #1 ${MaracasSrcDir}/../../kernel/marObject.h
366 #1 ${MaracasSrcDir}/../../kernel/volume.cxx
367 #1 ${MaracasSrcDir}/../../kernel/volume.hxx
368 #1 ${MaracasSrcDir}/../../kernel/marParameters.cpp
369 #1 ${MaracasSrcDir}/../../kernel/marParameters.h
370 #1 ${MaracasSrcDir}/../../kernel/marDynData.cpp
371 #1 ${MaracasSrcDir}/../../kernel/marDynData.h
375 #1ADD_LIBRARY(maracasvisu STATIC ${MARACASVISU_LIB_SRCS} )
376 #1TARGET_LINK_LIBRARIES(maracasvisu
377 #1 ${BBP_WXWIDGETS_LIBRARIES}
378 #1 vtkCommon vtkFiltering vtkGraphics vtkImaging vtkRendering vtkHybrid
379 #1 vtkWidgets vtkVolumeRendering vtkHybrid
381 #1 ${LIBIDO_LIBRARIES}
386 #===========================================================================
387 SET(${BBTK_PACKAGE_NAME}_LIBS
388 # LIST HERE THE ADDITIONAL LIBS TO LINK AGAINST
389 # EXCEPT : the same libs than for INCLUDE_DIRS
390 ### ${MYSQL_LIBRARIES}
399 KernelSurfaceRenderer
401 #creaMaracasVisu_CutModule_interface
402 #creaMaracasVisu_CutModule_kernel
405 ### ILPDcontrolerInterface
408 #===========================================================================
410 #===========================================================================
411 # SET TO TRUE TO HAVE INFORMATION ON LIBRARIES FOUND DURING CMAKE CONFIGURE
412 SET(FIND_PACKAGE_VERBOSE TRUE)
413 #===========================================================================
415 #===========================================================================
416 # END OF USER SECTION
417 #===========================================================================
423 #===========================================================================
424 # Include configuration script
425 INCLUDE(Configure.cmake)
426 #===========================================================================
428 #===========================================================================
430 #===========================================================================
432 ### ADD_SUBDIRECTORY( ../../src/interface/wxWindows/ILPD ILPD )