]> Creatis software - creaImageIO.git/blobdiff - src/CMakeLists.txt
Feature #1764
[creaImageIO.git] / src / CMakeLists.txt
index 05d6b096cecdc1295aead37a9c796452bf31a5ba..90f1ceee4aab9c93767b19c71774491f63966256 100644 (file)
@@ -1,6 +1,32 @@
-SET(LIBRARY_NAME creaImageIO)
+# ---------------------------------------------------------------------
+#
+# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image 
+#                        pour la Santé)
+# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
+# Previous Authors : Laurent Guigues, Jean-Pierre Roux
+# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
+#
+#  This software is governed by the CeCILL-B license under French law and 
+#  abiding by the rules of distribution of free software. You can  use, 
+#  modify and/ or redistribute the software under the terms of the CeCILL-B 
+#  license as circulated by CEA, CNRS and INRIA at the following URL 
+#  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html 
+#  or in the file LICENSE.txt.
+#
+#  As a counterpart to the access to the source code and  rights to copy,
+#  modify and redistribute granted by the license, users are provided only
+#  with a limited warranty  and the software's author,  the holder of the
+#  economic rights,  and the successive licensors  have only  limited
+#  liability. 
+#
+#  The fact that you are presently reading this means that you have had
+#  knowledge of the CeCILL-B license and that you accept its terms.
+# ------------------------------------------------------------------------
 
+SET(LIBRARY_NAME creaImageIO)
 
+#-----------------------------------------
+#SOURCES
 FILE(GLOB SOURCES_CREAIMAGEIO  
   # SQLite 
   CppSQLite3.cpp
@@ -15,13 +41,17 @@ FILE(GLOB SOURCES_CREAIMAGEIO
   # settings
   creaImageIOSettings.cpp
   creaImageIOGimmickView.cpp
-)
+  )
+#--------------------------------------------
+
 IF(USE_WXWIDGETS)
- FILE(GLOB SOURCES_CREAIMAGEIO_DIALOG  
-   creaImageIOGimmickReaderDialog.cpp
-   )
-   SOURCE_GROUP("Source Files\\Reader Dialog" FILES ${SOURCES_CREAIMAGEIO_DIALOG})
       FILE(GLOB SOURCES_CREAIMAGEIO_DIALOG  
+          creaImageIOGimmickReaderDialog.cpp
+          )
+       SOURCE_GROUP("Source Files\\Reader Dialog" FILES ${SOURCES_CREAIMAGEIO_DIALOG})
 ENDIF(USE_WXWIDGETS)
+
+#--------------------------------------------
  # Attributed tree data structure
 FILE(GLOB SOURCES_CREAIMAGEIO_TREE
          creaImageIOTree.cpp
@@ -34,105 +64,148 @@ FILE(GLOB SOURCES_CREAIMAGEIO_TREE
          creaImageIOTreeHandlerImageAdder.cpp
          creaImageIOSQLiteTreeHandler.cpp
          creaImageIOOutputModel.cpp
-         )
+          )
+
+#--------------------------------------------
+ # Image Readers
 IF(USE_GDCM)
- FILE(GLOB SOURCES_CREAIMAGEIO_IMG_DICOM_READER
-               creaImageIODicomImageReader.cpp)
+        FILE(GLOB SOURCES_CREAIMAGEIO_IMG_DICOM_READER
+                       creaImageIODicomImageReader.cpp
+                       )
 ENDIF(USE_GDCM)
          
 IF(USE_GDCM2)
- FILE(GLOB SOURCES_CREAIMAGEIO_IMG_DICOM_READER
-               creaImageIODicomImageReader2.cpp
-               creaImageIODicomScanner.cpp)
+        FILE(GLOB SOURCES_CREAIMAGEIO_IMG_DICOM_READER
+                       creaImageIODicomImageReader2.cpp
+                       creaImageIODicomScanner.cpp
+                       )
 ENDIF(USE_GDCM2)
 
- # Image Readers
+IF (USE_WXWIDGETS)
+       FILE(GLOB SOURCES_CREAIMAGEIO_MULTI_IMG_READER   creaImageIOMultiThreadImageReader.cpp)
+#ELSEIF(USE_QT4)
+       #FILE(GLOB SOURCES_CREAIMAGEIO_MULTI_IMG_READER   creaImageIOQMultiThreadImageReader.cpp)
+ENDIF()
+
 FILE(GLOB SOURCES_CREAIMAGEIO_IMG_READER
          creaImageIOSimpleView.cpp
          creaImageIOAbstractImageReader.cpp
          creaImageIOImageReader.cpp
          creaImageIOUltrasonixImageReader.cpp
          creaImageIOVtkImageReader.cpp
-         creaImageIOQMultiThreadImageReader.cpp
-                 ${SOURCES_CREAIMAGEIO_IMG_DICOM_READER}
+         ${SOURCES_CREAIMAGEIO_IMG_DICOM_READER}
+         ${SOURCES_CREAIMAGEIO_MULTI_IMG_READER}
          )
-
+IF(USE_ITK)
+FILE(GLOB SOURCES_CREAIMAGEIO_ITK_DLG
+       creaImageIOWxIsimpleDlg.h
+       creaImageIOWxIsimpleDlg.hpp
+       creaImageIOWxAnySimpleDlg.h
+       creaImageIOWxAnySimpleDlg.cpp
+       )
+ENDIF(USE_ITK)
+         
+#--------------------------------------------
 # The wxWidgets-based components
 if (USE_WXWIDGETS)
-FILE(GLOB SOURCES_CREAIMAGEIO_WX
-         creaImageIOWxSimpleDlg.cpp
-         creaImageIOWxAttributeSelectionPanel.cpp
-         creaImageIOWxCustomizeConfigPanel.cpp
-         creaImageIOWxDescriptorPanel.cpp
-         creaImageIOWxEditFieldsPanel.cpp
-         creaImageIOWxExportDlg.cpp
-         creaImageIOWxDumpPanel.cpp
-         creaImageIOWxGimmickView.cpp
-         creaImageIOWxGimmickReaderDialog.cpp
-      creaImageIOWxGimmickFrame.cpp
-      creaImageIOWxGimmickPanel.cpp
-      creaImageIOWxGimmickTools.cpp
-      creaImageIOWxListenerPanel.cpp
-      creaImageIOWxPACSConnectionPanel.cpp
-         creaImageIOWxTreeView.cpp
-         creaImageIOWxOutputDlg.cpp
-         #  Viewer
-         creaImageIOWxViewer.cpp
-         creaImageIOExternalGimmick.cpp
-         BlockScopeWxApp.cpp
-        creaImageIOListener.cpp
-        creaImageIOMultiThreadImageReader.cpp
-    )
-         SOURCE_GROUP("Source Files\\GUI" FILES ${SOURCES_CREAIMAGEIO_WX})
-endif()
+       FILE(GLOB SOURCES_CREAIMAGEIO_WX
+                 creaImageIOWxSimpleDlg.cpp
+                 creaImageIOWxAttributeSelectionPanel.cpp
+                 creaImageIOWxCustomizeConfigPanel.cpp
+                 creaImageIOWxDescriptorPanel.cpp
+                 creaImageIOWxEditFieldsPanel.cpp
+                 creaImageIOWxExportDlg.cpp
+                 creaImageIOWxDumpPanel.cpp
+                 creaImageIOWxGimmickView.cpp
+                 creaImageIOWxGimmickReaderDialog.cpp
+                 creaImageIOWxGimmickFrame.cpp
+                 creaImageIOWxGimmickPanel.cpp
+                 creaImageIOWxGimmickTools.cpp
+                 creaImageIOWxListenerPanel.cpp
+                 creaImageIOWxPACSConnectionPanel.cpp
+                 creaImageIOWxTreeView.cpp
+                 creaImageIOWxOutputDlg.cpp
+                 #  Viewer
+                 creaImageIOWxViewer.cpp
+                 creaImageIOExternalGimmick.cpp
+                 BlockScopeWxApp.cpp
+                 creaImageIOListener.cpp
+                 )
+       SOURCE_GROUP("Source Files\\GUI" FILES ${SOURCES_CREAIMAGEIO_WX})
+       
+       IF(USE_ITK)
+FILE(GLOB SOURCES_CREAIMAGEIO_ITK_DLG
+       creaImageIOWxIsimpleDlg.h
+       creaImageIOWxIsimpleDlg.hpp
+       creaImageIOWxAnySimpleDlg.h
+       creaImageIOWxAnySimpleDlg.cpp
+       )
+ENDIF(USE_ITK)
+         
+endif(USE_WXWIDGETS)
 
+
+
+
+#--------------------------------------------
 # USE QT, need to transform files (moc mechanism)
+
 IF (USE_QT4)
+
+#ADD_SUBDIRECTORY(Qt)
+       # UI
+       FILE(GLOB UI_FILES Qt/*.ui)
+       QT4_WRAP_UI(UI_SOURCES ${UI_FILES})
+       SOURCE_GROUP("Source Files\\UI Files" FILES ${UI_FILES})
+       SOURCE_GROUP("Source Files\\Qt Generated Files" FILES ${UI_SOURCES})
+
        #cpp
-       FILE(GLOB QT_CPP 
-               QtGUI/*.cpp 
-               QtGUI/*.cxx
+       FILE(GLOB QT_CPP Qt/*.cpp
+               #creaImageIOQtGimmickReaderDialog.cpp 
                )
        
        # headers
-       SET(QT4_HEADERS_TO_WRAP
-               QtGUI/creaimageioqtreeview.h
-               QtGUI/creaImageIOQTGimmickReaderDialog.h
+       FILE(GLOB QT4_HEADERS_TO_WRAP Qt/*.h
+               #creaImageIOQtGimmickReaderDialog.h
                )
-       
-
-  QT4_WRAP_CPP(MOC_SOURCES ${QT4_HEADERS_TO_WRAP})
-  SOURCE_GROUP("Source Files\\GUI" FILES ${MOC_SOURCES})
-  
+       # UI
+       #       FILE(GLOB UI_FILES *.ui)
+       #   QT4_WRAP_UI(UI_SOURCES ${UI_FILES})
+       # SOURCE_GROUP("UI Files" FILES ${UI_FILES})
+       # SOURCE_GROUP("Qt Generated Files" FILES ${UI_SOURCES})
+#      FILE(GLOB UI_FILES creaImageIOQtGimmickReaderDialog.ui)
+#      QT4_WRAP_UI(UI_SOURCES_H ${UI_FILES} OPTIONS -o ${PROJECT_BINARY_DIR}/src)
+        QT4_WRAP_CPP(QT_MOC_CPP ${QT4_HEADERS_TO_WRAP})
   
-  # UI
-  FILE(GLOB UI_FILES QtGUI/*.ui)
-  QT4_WRAP_UI(UI_SOURCES ${UI_FILES})
-  #SOURCE_GROUP("UI Files" FILES ${UI_FILES})
-  SOURCE_GROUP("Source Files\\GUI" FILES ${UI_SOURCES})
+   # FILE(GLOB ${LIBRARY_NAME}_HEADERS "*.h" "*.txx" "${PROJECT_BINARY_DIR}/src/*.h")
+       # MEssage(STATUS" qt files = ${QT_MOC_CPP}")
+        SOURCE_GROUP("Source Files\\GUI" FILES ${QT_MOC_CPP} ${QT_CPP} )
+       # INCLUDE_DIRECTORIES ( ${PROJECT_BINARY_DIR})
+       SOURCE_GROUP("Source Files\\GUI" FILES ${UI_SOURCES_H} ${UI_FILES})
+       SOURCE_GROUP("Header Files" FILES ${QT4_HEADERS_TO_WRAP})
 ENDIF(USE_QT4)
 
-
 IF(USE_XERCES)
-FILE(GLOB SOURCES_CREAIMAGEIO_OUTPUT
-         creaImageIOOutputModel.cpp
-         creaImageIOOutputModelParser.cpp
-         )
-SOURCE_GROUP("Source Files\\Output" FILES ${SOURCES_CREAIMAGEIO_OUTPUT})        
+       FILE(GLOB SOURCES_CREAIMAGEIO_OUTPUT
+                 creaImageIOOutputModel.cpp
+                 creaImageIOOutputModelParser.cpp
+                 )
+       SOURCE_GROUP("Source Files\\Output" FILES ${SOURCES_CREAIMAGEIO_OUTPUT})         
 ENDIF(USE_XERCES)
 
 
 
 
 # Header Files   
-FILE(GLOB HEADER_CREAIMAGEIO #creaImageIOImagePointerHolder.h  CppSQLite3.h)
+FILE(GLOB HEADER_CREAIMAGEIO creaImageIOImagePointerHolder.h  CppSQLite3.h)
 #*.h)
 FILE(GLOB SOURCES_CREAIMAGEIO_PACS PACS/*.cpp)
 FILE(GLOB HEADER_CREAIMAGEIO_PACS PACS/*.h)
 
-
+FILE(GLOB QT4_HEADERS          creaImageIOQtGimmickReaderDialog.h              )
+MEssage(STATUS" qt files = ${QT4_HEADERS}")
 SOURCE_GROUP("Source Files" FILES ${SOURCES_CREAIMAGEIO})
-SOURCE_GROUP("Header Files" FILES ${HEADER_CREAIMAGEIO})
+SOURCE_GROUP("Header Files" FILES ${HEADER_CREAIMAGEIO} ${QT4_HEADERS})
 if(BUILD_CREA_PACS)
        SOURCE_GROUP("Source Files\\PACS" FILES ${SOURCES_CREAIMAGEIO_PACS})
        SOURCE_GROUP("Header Files\\PACS" FILES ${HEADER_CREAIMAGEIO_PACS})
@@ -141,7 +214,7 @@ SOURCE_GROUP("Source Files\\Readers" FILES ${SOURCES_CREAIMAGEIO_IMG_READER}
                                                                                        ${SOURCES_CREAIMAGEIO_IMG_DICOM_READER})
 SOURCE_GROUP("Source Files\\Tree" FILES ${SOURCES_CREAIMAGEIO_TREE})
 
-
+SOURCE_GROUP("Source Files\\ITK" FILES ${SOURCES_CREAIMAGEIO_ITK_DLG})
 
 
 IF(USE_WXWIDGETS)
@@ -153,7 +226,7 @@ ELSE(USE_WXWIDGETS)
 SET( GUI_SRCS
         ${QT_CPP}
         ${UI_SOURCES}
-        ${MOC_SOURCES}
+        ${QT_MOC_CPP}
         )
 ENDIF(USE_WXWIDGETS)
 SET( PRIMITIVE_SRCS
@@ -163,6 +236,7 @@ SET( PRIMITIVE_SRCS
  ${SOURCES_CREAIMAGEIO_IMG_DICOM_READER}
  ${GUI_SRCS}
  ${SOURCES_CREAIMAGEIO_TREE}
+ ${SOURCES_CREAIMAGEIO_ITK_DLG}
 )
 
 
@@ -217,6 +291,7 @@ TARGET_LINK_LIBRARIES(${LIBRARY_NAME}
   ${VTK_LIBRARIES}
   ${GDCM_LIBRARIES}
   ${BOOST_LIBRARIES}
+  ${ITK_LIBRARIES}
   sqlite3)
 ELSE(NOT USE_XERCES)
 TARGET_LINK_LIBRARIES(${LIBRARY_NAME} 
@@ -248,7 +323,7 @@ INSTALL(
 
      # Sets the settings for macro CREA_ADVANCED_INSTALL_LIBRARY_FOR_CMAKE
   SET(${LIBRARY_NAME}_INSTALL_FOLDER ${LIBRARY_NAME})
-  SET(${LIBRARY_NAME}_LIBRARIES ${LIBRARY_NAME})
+  SET(${LIBRARY_NAME}_LIBRARIES ${LIBRARY_NAME} )
   
 #  FILE(RELATIVE_PATH 
 #    ${LIBRARY_NAME}_BUILD_TREE_RELATIVE_INCLUDE_PATHS 
@@ -291,10 +366,10 @@ SET(${LIBRARY_NAME}_ADDITIONAL_USE_FILE
   CREA_ADVANCED_INSTALL_LIBRARY_FOR_CMAKE(${LIBRARY_NAME})
 IF (WIN32)
        SET(INPUT_DATA_DIR ${PROJECT_SOURCE_DIR}/src/data)
-       SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/bin/share/gimmick)
+       SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/bin/share/creaImageIO)
 ELSE (WIN32)
        SET(INPUT_DATA_DIR ${PROJECT_SOURCE_DIR}/src/data)
-       SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/share/gimmick)
+       SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/share/creaImageIO)
 ENDIF (WIN32)
 CREA_CPDIR(${INPUT_DATA_DIR} ${OUTPUT_DATA_DIR})
 
@@ -304,11 +379,10 @@ CREA_CPDIR(${INPUT_DATA_DIR} ${OUTPUT_DATA_DIR})
 
 OPTION( BUILD_DOXYGEN_DOC "Build doxygen doc ?" OFF)
 IF(BUILD_DOXYGEN_DOC)
-  SUBDIRS(doxygen)
+  ADD_SUBDIRECTORY(doxygen)
 ENDIF(BUILD_DOXYGEN_DOC)
 
 INCLUDE_DIRECTORIES(
 #  ${PROJECT_BINARY_DIR}
   ${PROJECT_SOURCE_DIR}/src
-
   )