PROJECT(BrainReg)

#SET(CMAKE_BUILD_TYPE "Debug")
SET(CMAKE_BUILD_TYPE "Release")
cmake_minimum_required(VERSION 2.6)

FIND_PACKAGE(ITK)
IF(ITK_FOUND)
  INCLUDE(${ITK_USE_FILE})
ELSE(ITK_FOUND)
  MESSAGE(FATAL_ERROR
          "Please Set ITK_DIR")
ENDIF(ITK_FOUND)

SET (SRCS
    brainio.cpp
    brainregistration.cpp
    test.cpp
)

SET (HDRS
    registrationlevelupdate.h
    imagedefinitions.h
    brainio.h
    brainregistration.h
)

# Use the include path and library for Qt that is used by VTK.
INCLUDE_DIRECTORIES(
	${CMAKE_CURRENT_BINARY_DIR}
	${CMAKE_CURRENT_SOURCE_DIR}
)

SET(SRCS ${SRCS} ${HDRS})

ADD_EXECUTABLE( BrainReg ${SRCS})

TARGET_LINK_LIBRARIES( BrainReg
        ITKCommon
        ITKIO
        ITKStatistics
        ITKAlgorithms
        ITKBasicFilters
)

SET(Libraries
  ITKCommon
  ITKIO
  ITKStatistics
  ITKStatistics 
  ITKNumerics
)

ADD_EXECUTABLE(demonsMR3D demonsMR3D.cxx )
TARGET_LINK_LIBRARIES(demonsMR3D ITKIO ITKStatistics ITKNumerics)

ADD_EXECUTABLE(imageDifference imageDifference.cxx )
TARGET_LINK_LIBRARIES(imageDifference ITKIO ITKStatistics ITKNumerics)

SET(CurrentExe "DemonsRegistration")
ADD_EXECUTABLE(${CurrentExe} DemonsRegistration.cxx)
TARGET_LINK_LIBRARIES(${CurrentExe} ${Libraries})

ADD_EXECUTABLE(ImageStats ImageStats.cxx )
TARGET_LINK_LIBRARIES(ImageStats ITKIO ITKStatistics)

ADD_EXECUTABLE(computeDistances computeDistances.cxx )
TARGET_LINK_LIBRARIES(computeDistances ITKIO ITKStatistics ITKNumerics)

ADD_EXECUTABLE(deformableWarp deformableWarp.cxx )
TARGET_LINK_LIBRARIES(deformableWarp ITKIO ITKStatistics ITKNumerics)

ADD_EXECUTABLE(deformationFieldStats deformationFieldStats.cxx )
TARGET_LINK_LIBRARIES(deformationFieldStats ITKIO ITKStatistics)

ADD_EXECUTABLE(transformacioAfi transformacioAfi.cxx )
TARGET_LINK_LIBRARIES(transformacioAfi ITKIO ITKNumerics)

ADD_EXECUTABLE(transformacioFlexible transformacioFlexible.cxx )
TARGET_LINK_LIBRARIES(transformacioFlexible ITKIO ITKNumerics)

ADD_EXECUTABLE(transformacioRigid transformacioRigid.cxx )
TARGET_LINK_LIBRARIES(transformacioRigid ITKIO ITKNumerics)


