project(MedicalExamples)

set(OIV_MODULE Medical)

option(OIV_NODEPRECATE_MEDICALEXAMPLES "Disable OIV deprecation warnings in medical examples" true)
if(OIV_NODEPRECATE_MEDICALEXAMPLES)
  add_definitions(-DSoDEPRECATED_NO_WARN)
endif()

#Be sure Medical libs require C++ 17 Standard
if (NOT APPLE)
  set(CMAKE_CXX_STANDARD 17)
endif()

# These files are not available in packaging
if(OIV_DEV_BUILD)
  SET(OIV_CMAKE_PREPACK_PATH_PREFIX "/")
  SET(OIV_MED_CMAKE_PREPACK_PATH_PREFIX "/OIVHOME/examples/source/Medical/")
else()
  SET(OIV_CMAKE_PREPACK_PATH_PREFIX "/../../")
  SET(OIV_MED_CMAKE_PREPACK_PATH_PREFIX "/")
endif()

set(CMAKE_PREPACKED_FILE ${CMAKE_SOURCE_DIR}${OIV_CMAKE_PREPACK_PATH_PREFIX}cmake/Prepacked/Prepacked.cmake)
set(OIV_MED_CMAKE_DATA_PATH ${OIV_MED_CMAKE_PREPACK_PATH_PREFIX}data/Medical)

# Private data management. Not needed in package mode
if (EXISTS ${CMAKE_PREPACKED_FILE})
  include(${CMAKE_PREPACKED_FILE})
endif()

set(subdirectories
  Analysis
  Input
  Rendering
  Segmentation
  Tools
  TransferFunction
  Dental
  )

if(${OIV_ENABLE_REMOTEVIZ_SERVICES_EXAMPLES})
  set(subdirectories ${subdirectories} Web)
endif()

foreach(subdirectory ${subdirectories})
 add_subdirectory(${subdirectory})
endforeach(subdirectory)
