X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FCMakeLists.txt;h=0ed51e11c6ae10a2bf9ec610b77dc98f8798f358;hb=4153d65cc0c8b1c3f47f89c1ac7d3efc9a6fa5d0;hp=c406d94f4f522e44230a755b684ea70d643b0b98;hpb=28b54ef09e7b960841314a668e0147a19aab984e;p=creaImageIO.git diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c406d94..0ed51e1 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,73 +1,197 @@ -SET( SRCS +SET(LIBRARY_NAME creaImageIO) + + +FILE(GLOB SOURCES_CREAIMAGEIO # SQLite - CppSQLite3 - - # wxTreeListCtrl - treelistctrl.cpp + CppSQLite3.cpp + # + creaImageIOGimmick.cpp + creaImageIOSynchron.cpp + creaImageIOPACSConnection.cpp - # Image readers - creaImageIOImageReader - creaImageIOMultiThreadImageReader + # Abstract views + creaImageIOTreeView.cpp - # Dicom database management - creaImageIODicomNode - creaImageIODicomNodeComparators - creaImageIODicomNodeTypeDescription - creaImageIODicomDatabaseStructure - creaImageIODicomDatabase - creaImageIOField + # settings + creaImageIOSettings.cpp - # The Gimmick! widgets - creaImageIOWxGimmick - creaImageIOWxGimmickSettings - creaImageIOWxGimmickFieldsView + BlockScopeWxApp.cpp + creaImageIOGimmickReaderDialog.cpp + creaImageIOExternalGimmick.cpp + # Viewer + creaImageIOWxViewer.cpp + creaImageIOGimmickView.cpp + creaImageIOListener.cpp +) + + # Attributed tree data structure +FILE(GLOB SOURCES_CREAIMAGEIO_TREE + creaImageIOTree.cpp + creaImageIOTreeAttributeDescriptor.cpp + creaImageIOTreeDescriptor.cpp + creaImageIOTreeNode.cpp + creaImageIOTreeLevelDescriptor.cpp + # Tree Handlers + creaImageIOTreeHandler.cpp + creaImageIOTreeHandlerImageAdder.cpp + creaImageIOSQLiteTreeHandler.cpp + creaImageIOOutputModel.cpp + ) +IF(USE_GDCM) + 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) +ENDIF(USE_GDCM2) - creaImageIOWxGimmickDialog + # Image Readers +FILE(GLOB SOURCES_CREAIMAGEIO_IMG_READER + creaImageIOSimpleView.cpp + creaImageIOAbstractImageReader.cpp + creaImageIOImageReader.cpp + creaImageIOUltrasonixImageReader.cpp + creaImageIOVtkImageReader.cpp + creaImageIOMultiThreadImageReader.cpp + ${SOURCES_CREAIMAGEIO_IMG_DICOM_READER} + ) +# 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 + ) +endif() -# creaImageIOWxDicomDatabaseTreeView -# creaImageIOWxDicomDatabaseTreeViewSettings -# creaImageIOWxDicomNodeFieldsView - - # File selector wxDialog using a DDB tree view -# creaImageIOWxDicomFilesSelectorDialog - # wx-free function which opens a file selector dialog -# BlockScopeWxApp -# creaImageIODicomFilesSelectorDialog +IF(USE_XERCES) +FILE(GLOB SOURCES_CREAIMAGEIO_OUTPUT + creaImageIOOutputModel.cpp + creaImageIOOutputModelParser.cpp + ) +SOURCE_GROUP("Source Files\\Output" FILES ${SOURCES_CREAIMAGEIO_OUTPUT}) +ENDIF(USE_XERCES) -) -OPTION(creaImageIO_BUILD_SHARED - "Build creaImageIO as a shared library (dynamic) ?" ON) -IF (creaImageIO_BUILD_SHARED) +# Header Files +FILE(GLOB HEADER_CREAIMAGEIO creaImageIOImagePointerHolder.h) +FILE(GLOB SOURCES_CREAIMAGEIO_PACS PACS/*.cpp) +FILE(GLOB HEADER_CREAIMAGEIO_PACS PACS/*.h) + + +SOURCE_GROUP("Source Files" FILES ${SOURCES_CREAIMAGEIO}) +SOURCE_GROUP("Header Files" FILES ${HEADER_CREAIMAGEIO}) +SOURCE_GROUP("Source Files\\GUI" FILES ${SOURCES_CREAIMAGEIO_WX}) +if(BUILD_CREA_PACS) + SOURCE_GROUP("Source Files\\PACS" FILES ${SOURCES_CREAIMAGEIO_PACS}) + SOURCE_GROUP("Header Files\\PACS" FILES ${HEADER_CREAIMAGEIO_PACS}) +endif(BUILD_CREA_PACS) +SOURCE_GROUP("Source Files\\Readers" FILES ${SOURCES_CREAIMAGEIO_IMG_READER} + ${SOURCES_CREAIMAGEIO_IMG_DICOM_READER}) +SOURCE_GROUP("Source Files\\Tree" FILES ${SOURCES_CREAIMAGEIO_TREE}) + + +SET( PRIMITIVE_SRCS + ${SOURCES_CREAIMAGEIO} + ${HEADER_CREAIMAGEIO} + ${SOURCES_CREAIMAGEIO_IMG_READER} + ${SOURCES_CREAIMAGEIO_IMG_DICOM_READER} + ${SOURCES_CREAIMAGEIO_WX} + ${SOURCES_CREAIMAGEIO_TREE} +) + +if( BUILD_CREA_PACS) + SET (SRCS + ${PRIMITIVE_SRCS} + ${SOURCES_CREAIMAGEIO_PACS} + ${HEADER_CREAIMAGEIO_PACS} + ) +else (BUILD_CREA_PACS) +IF(USE_XERCES) + SET (SRCS + ${PRIMITIVE_SRCS} + ${SOURCES_CREAIMAGEIO_OUTPUT} + ) +ELSE(USE_XERCES) + SET (SRCS + ${PRIMITIVE_SRCS} + ) +ENDIF(USE_XERCES) +endif (BUILD_CREA_PACS) + +OPTION(${LIBRARY_NAME}_BUILD_SHARED + "Build ${LIBRARY_NAME} as a shared library (dynamic) ?" ON) +IF (${LIBRARY_NAME}_BUILD_SHARED) SET(CREAIMAGEIO_BUILD_SHARED SHARED) crea_DEFINE(CREAIMAGEIO_BUILD_SHARED) -ENDIF(creaImageIO_BUILD_SHARED) +ENDIF(${LIBRARY_NAME}_BUILD_SHARED) crea_DEFINE(CREAIMAGEIO_EXPORT_SYMBOLS) -ADD_LIBRARY(creaImageIO ${CREAIMAGEIO_BUILD_SHARED} ${SRCS}) +ADD_LIBRARY(${LIBRARY_NAME} ${CREAIMAGEIO_BUILD_SHARED} ${SRCS}) +IF(USE_QT4) +TARGET_LINK_LIBRARIES(${LIBRARY_NAME} + ${QT_LIBRARIES}) +ENDIF(USE_QT4) +IF(USE_WXWIDGETS) +TARGET_LINK_LIBRARIES(${LIBRARY_NAME} + ${WXWIDGETS_LIBRARIES}) +ENDIF(USE_WXWIDGETS) -TARGET_LINK_LIBRARIES(creaImageIO + +IF (NOT USE_XERCES) +TARGET_LINK_LIBRARIES(${LIBRARY_NAME} ${crea_LIBRARIES} + ${creaBruker_LIBRARIES} ${WXWIDGETS_LIBRARIES} ${VTK_LIBRARIES} ${GDCM_LIBRARIES} ${BOOST_LIBRARIES} sqlite3) - +ELSE(NOT USE_XERCES) +TARGET_LINK_LIBRARIES(${LIBRARY_NAME} + ${crea_LIBRARIES} + ${creaBruker_LIBRARIES} + ${WXWIDGETS_LIBRARIES} + ${VTK_LIBRARIES} + ${GDCM_LIBRARIES} + ${BOOST_LIBRARIES} + ${XERCES_LIBRARIES} + sqlite3) +ENDIF(NOT USE_XERCES) + + #---------------------------------------------------------------------------- # INSTALLS LIBRARY -FILE(GLOB HEADERS "*.h") +FILE(GLOB HEADERS "*.h" "*.txx") INSTALL( FILES ${HEADERS} - DESTINATION include/creaImageIO + DESTINATION include/${LIBRARY_NAME} ) + + IF (WIN32) SET(CREAIMAGEIO_LIB_PATH bin) ELSE (WIN32) @@ -75,19 +199,23 @@ ELSE (WIN32) ENDIF(WIN32) INSTALL( - TARGETS creaImageIO + TARGETS ${LIBRARY_NAME} DESTINATION ${CREAIMAGEIO_LIB_PATH}) - - # Sets the settings for macro CREA_ADVANCED_INSTALL_LIBRARY_FOR_CMAKE - SET(LIBRARY_NAME creaImageIO) + # Sets the settings for macro CREA_ADVANCED_INSTALL_LIBRARY_FOR_CMAKE SET(${LIBRARY_NAME}_INSTALL_FOLDER ${LIBRARY_NAME}) SET(${LIBRARY_NAME}_LIBRARIES ${LIBRARY_NAME}) - FILE(RELATIVE_PATH - ${LIBRARY_NAME}_BUILD_TREE_RELATIVE_INCLUDE_PATHS - ${PROJECT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR} - ) +# FILE(RELATIVE_PATH +# ${LIBRARY_NAME}_BUILD_TREE_RELATIVE_INCLUDE_PATHS +# ${PROJECT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR} +# ) +SET(${LIBRARY_NAME}_BUILD_TREE_RELATIVE_INCLUDE_PATHS + src + win32 +) + + IF ( ${PROJECT_BINARY_DIR} STREQUAL ${EXECUTABLE_OUTPUT_PATH} ) SET(CILFC_EXECUTABLE_OUTPUT_REL_PATH ".") ELSE ( ${PROJECT_BINARY_DIR} STREQUAL ${EXECUTABLE_OUTPUT_PATH} ) @@ -102,26 +230,39 @@ INSTALL( SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_LIBRARY_PATHS lib) ELSE(UNIX) SET(${LIBRARY_NAME}_BUILD_TREE_RELATIVE_LIBRARY_PATHS - ${CILFC_EXECUTABLE_OUTPUT_REL_PATH}/Debug - ${CILFC_EXECUTABLE_OUTPUT_REL_PATH}/Release) + ${CILFC_EXECUTABLE_OUTPUT_REL_PATH}) SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_LIBRARY_PATHS bin) ENDIF(UNIX) SET(${LIBRARY_NAME}_INSTALL_TREE_RELATIVE_INCLUDE_PATHS include/${LIBRARY_NAME}) SET(${LIBRARY_NAME}_HAS_ADDITIONAL_CONFIG_FILE TRUE) SET(${LIBRARY_NAME}_ADDITIONAL_CONFIG_FILE - ${PROJECT_SOURCE_DIR}/src/AdditionalcreaImageIOConfig.cmake.in) + ${PROJECT_SOURCE_DIR}/src/Additional${LIBRARY_NAME}Config.cmake.in) SET(${LIBRARY_NAME}_ADDITIONAL_USE_FILE - ${PROJECT_SOURCE_DIR}/src/AdditionalUsecreaImageIO.cmake.in) + ${PROJECT_SOURCE_DIR}/src/AdditionalUse${LIBRARY_NAME}.cmake.in) # Invoke the advanced macro 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) +ELSE (WIN32) + SET(INPUT_DATA_DIR ${PROJECT_SOURCE_DIR}/src/data) + SET(OUTPUT_DATA_DIR ${PROJECT_BINARY_DIR}/share/gimmick) +ENDIF (WIN32) +CREA_CPDIR(${INPUT_DATA_DIR} ${OUTPUT_DATA_DIR}) -#CREA_INSTALL_LIBRARY_FOR_CMAKE(creaImageIO) +#CREA_INSTALL_LIBRARY_FOR_CMAKE(${LIBRARY_NAME}) #----------------------------------------------------------------------------- OPTION( BUILD_DOXYGEN_DOC "Build doxygen doc ?" OFF) IF(BUILD_DOXYGEN_DOC) SUBDIRS(doxygen) ENDIF(BUILD_DOXYGEN_DOC) + +INCLUDE_DIRECTORIES( +# ${PROJECT_BINARY_DIR} + ${PROJECT_SOURCE_DIR}/src +# ${PROJECT_SOURCE_DIR}/src/CppSQLite3 + )