#
# Slicer3Config.cmake - Slicer3 CMake configuration file for external projects
#
# This file is configured by Slicer3 and used by UseSlicer3.cmake module
# to load Slicer3's settings for an external project. External projects
# can use these setting to build new modules against a Slicer3 build tree
# or a Slicer3 installation.
#

# The C and C++ flags added by Slicer3 to the cmake-configured flags.
set(Slicer3_REQUIRED_C_FLAGS "@Slicer3_REQUIRED_C_FLAGS@")
set(Slicer3_REQUIRED_CXX_FLAGS "@Slicer3_REQUIRED_CXX_FLAGS@")
set(Slicer3_REQUIRED_LINK_FLAGS "@Slicer3_REQUIRED_LINK_FLAGS@")

# The Slicer3 version number
set(Slicer3_VERSION_MAJOR "@Slicer3_VERSION_MAJOR@")
set(Slicer3_VERSION_MINOR "@Slicer3_VERSION_MINOR@")
set(Slicer3_VERSION_PATCH "@Slicer3_VERSION_PATCH@")

# Whether Slicer3 was built with modules and CLI support.
set(Slicer3_BUILD_MODULES "@Slicer3_BUILD_MODULES@")
set(Slicer3_BUILD_CLI "@Slicer3_BUILD_CLI@")
IF(Slicer3_USE_QT)
  set(Slicer3_BUILD_QTLOADABLEMODULES "@Slicer3_BUILD_QTLOADABLEMODULES@")
ENDIF(Slicer3_USE_QT)

# Whether Slicer3 was built with shared libraries.
set(Slicer3_BUILD_SHARED "@BUILD_SHARED_LIBS@")

# Slicer3 options
set(Slicer3_USE_BatchMake "@Slicer3_USE_BatchMake@")
set(Slicer3_USE_IGSTK "@Slicer3_USE_IGSTK@")
set(Slicer3_USE_MIDAS "@Slicer3_USE_MIDAS@")
set(Slicer3_USE_NAVITRACK "@Slicer3_USE_NAVITRACK@")
set(Slicer3_USE_NUMPY "@Slicer3_USE_NUMPY@")
set(Slicer3_USE_PYTHON "@Slicer3_USE_PYTHON@")
set(Slicer3_USE_OPENTRACKER "@Slicer3_USE_OPENTRACKER@")

# Slicer could be installed anywhere, so set all paths based on where 
# this file was found (which should be the lib/Slicer3 directory of the 
# installation)
get_filename_component(Slicer3_CONFIG_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)

# Slicer home (top of the tree)
set(Slicer3_HOME "${Slicer3_CONFIG_DIR}/../..")
get_filename_component(Slicer3_HOME ${Slicer3_HOME} ABSOLUTE)

# The CMake macros dir.
set(Slicer3_CMAKE_DIR "${Slicer3_HOME}/@Slicer3_INSTALL_LIB_DIR@/CMake")

# Slicer3 Libs libraries.  Those listed here should
# automatically pull in their dependencies.
set(Slicer3_Libs_LIBRARIES "@Slicer3_Libs_LIBRARIES@")

# Slicer3 Libs library directories.
set(Slicer3_Libs_LIBRARY_DIRS 
  "${Slicer3_HOME}/lib/FreeSurfer"
  "${Slicer3_HOME}/lib/IGT"
  "${Slicer3_HOME}/lib/ITKCommandIO"
  "${Slicer3_HOME}/lib/LoadableModule"
  "${Slicer3_HOME}/lib/MGHImageIO"
  "${Slicer3_HOME}/lib/MRML"
  "${Slicer3_HOME}/lib/MRMLIDImageIO"
  "${Slicer3_HOME}/lib/ModuleDescriptionParser"
  "${Slicer3_HOME}/lib/Qdec"
  "${Slicer3_HOME}/lib/RemoteIO"
  "${Slicer3_HOME}/lib/SlicerIO"
  "${Slicer3_HOME}/lib/tclap"
  "${Slicer3_HOME}/lib/vtkITK"
  "${Slicer3_HOME}/lib/vtkTeem"
  "${Slicer3_HOME}/lib/TclTk/lib"
  "${Slicer3_HOME}/lib/TclTk/lib/itcl@INCR_TCL_VERSION_DOT@"
  "${Slicer3_HOME}/lib/TclTk/lib/itk@INCR_TCL_VERSION_DOT@"
  )

# Slicer3 Libs include file directories.
set(Slicer3_Libs_INCLUDE_DIRS 
  "${Slicer3_HOME}/include/FreeSurfer"
  "${Slicer3_HOME}/include/IGT"
  "${Slicer3_HOME}/include/ITKCommandIO"
  "${Slicer3_HOME}/include/LoadableModule"
  "${Slicer3_HOME}/include/MGHImageIO"
  "${Slicer3_HOME}/include/MRML"
  "${Slicer3_HOME}/include/MRMLIDImageIO"
  "${Slicer3_HOME}/include/ModuleDescriptionParser"
  "${Slicer3_HOME}/include/Qdec"
  "${Slicer3_HOME}/include/RemoteIO"
  "${Slicer3_HOME}/include/SlicerIO"
  "${Slicer3_HOME}/include/tclap"
  "${Slicer3_HOME}/include/vtkITK"
  "${Slicer3_HOME}/include/vtkTeem"
  )

# Slicer3 Base libraries.  Those listed here should
# automatically pull in their dependencies.
set(Slicer3_Base_LIBRARIES "@Slicer3_Base_LIBRARIES@")

# Slicer3 Base library directories.
set(Slicer3_Base_LIBRARY_DIRS 
  "${Slicer3_HOME}/@Slicer3_INSTALL_LIB_DIR@"
  )

# Slicer3 Base include file directories.
set(Slicer3_Base_INCLUDE_DIRS 
  "${Slicer3_HOME}/@Slicer3_INSTALL_INCLUDE_DIR@" 
  "${Slicer3_HOME}/@Slicer3_INSTALL_INCLUDE_DIR@/SlicerBaseCLI" 
  "${Slicer3_HOME}/@Slicer3_INSTALL_INCLUDE_DIR@/SlicerBaseGUI" 
  "${Slicer3_HOME}/@Slicer3_INSTALL_INCLUDE_DIR@/SlicerBaseLogic" 
  )

# The location of the UseSlicer3.cmake file.
set(Slicer3_USE_FILE "${Slicer3_CONFIG_DIR}/UseSlicer3.cmake")

# The build settings file.
set(Slicer3_BUILD_SETTINGS_FILE 
  "${Slicer3_CONFIG_DIR}/Slicer3BuildSettings.cmake")

# The Slicer3 relative install directories.
set(Slicer3_INSTALL_BIN_DIR "@Slicer3_INSTALL_BIN_DIR@")
set(Slicer3_INSTALL_LIB_DIR "@Slicer3_INSTALL_LIB_DIR@")
set(Slicer3_INSTALL_INCLUDE_DIR "@Slicer3_INSTALL_INCLUDE_DIR@")
set(Slicer3_INSTALL_SHARE_DIR "@Slicer3_INSTALL_SHARE_DIR@")
set(Slicer3_INSTALL_ITKFACTORIES_DIR "@Slicer3_INSTALL_ITKFACTORIES_DIR@")

set(Slicer3_INSTALL_PLUGINS_BIN_DIR "@Slicer3_INSTALL_PLUGINS_BIN_DIR@")
set(Slicer3_INSTALL_PLUGINS_LIB_DIR "@Slicer3_INSTALL_PLUGINS_LIB_DIR@")
set(Slicer3_INSTALL_PLUGINS_INCLUDE_DIR "@Slicer3_INSTALL_PLUGINS_INCLUDE_DIR@")
set(Slicer3_INSTALL_PLUGINS_SHARE_DIR "@Slicer3_INSTALL_PLUGINS_SHARE_DIR@")
set(Slicer3_INSTALL_PLUGINS_CACHE_DIR "@Slicer3_INSTALL_PLUGINS_CACHE_DIR@")

set(Slicer3_INSTALL_MODULES_BIN_DIR "@Slicer3_INSTALL_MODULES_BIN_DIR@")
set(Slicer3_INSTALL_MODULES_LIB_DIR "@Slicer3_INSTALL_MODULES_LIB_DIR@")
set(Slicer3_INSTALL_MODULES_INCLUDE_DIR "@Slicer3_INSTALL_MODULES_INCLUDE_DIR@")
set(Slicer3_INSTALL_MODULES_SHARE_DIR "@Slicer3_INSTALL_MODULES_SHARE_DIR@")

IF(Slicer3_USE_QT AND Slicer3_BUILD_QTLOADABLEMODULES)
  set(Slicer3_INSTALL_QTLOADABLEMODULES_BIN_DIR "@Slicer3_INSTALL_QTLOADABLEMODULES_BIN_DIR@")
  set(Slicer3_INSTALL_QTLOADABLEMODULES_LIB_DIR "@Slicer3_INSTALL_QTLOADABLEMODULES_LIB_DIR@")
  set(Slicer3_INSTALL_QTLOADABLEMODULES_INCLUDE_DIR "@Slicer3_INSTALL_QTLOADABLEMODULES_INCLUDE_DIR@")
  set(Slicer3_INSTALL_QTLOADABLEMODULES_SHARE_DIR "@Slicer3_INSTALL_QTLOADABLEMODULES_SHARE_DIR@")
ENDIF(Slicer3_USE_QT AND Slicer3_BUILD_QTLOADABLEMODULES)

# Components needed to build modules from outside a Slicer3 build tree or 
# from outside a Slicer3 installation tree
set(TCLAP_DIR "${Slicer3_HOME}/lib/tclap")
set(ModuleDescriptionParser_DIR "${Slicer3_HOME}/lib/ModuleDescriptionParser")
set(GenerateCLP_DIR "${Slicer3_HOME}/lib/GenerateCLP")
set(GenerateLM_DIR "${Slicer3_HOME}/lib/GenerateLM")
set(ITK_DIR "${Slicer3_HOME}/lib/InsightToolkit")
set(KWWidgets_DIR "${Slicer3_HOME}/lib/KWWidgets")
set(LoadableModule_DIR "${Slicer3_HOME}/lib/LoadableModule")
set(Teem_DIR "${Slicer3_HOME}/lib/Teem-@Teem_VERSION_MAJOR@.@Teem_VERSION_MINOR@.@Teem_VERSION_PATCH@")
set(VTK_DIR "${Slicer3_HOME}/lib/vtk-@VTK_MAJOR_VERSION@.@VTK_MINOR_VERSION@")
set(PYTHON_INCLUDE_PATH "@PYTHON_INCLUDE_PATH@")
get_filename_component(PYTHON_LIB_FILE "${PYTHON_LIBRARY}" NAME)
set(PYTHON_LIBRARIES "${Slicer3_HOME}/lib/Python/lib/${PYTHON_LIB_FILE}")
get_filename_component(PYTHON_INCLUDE_DIR "${PYTHON_INCLUDE_PATH}" NAME)
set(PYTHON_INCLUDE_PATH "${Slicer3_HOME}/lib/Python/include/${PYTHON_INCLUDE_DIR}")
