#---------------------------------------------------------
# OSPRay
#---------------------------------------------------------
if (VTK_USE_OSPRAY)
SET ( OSPRAY_SRCS
  vtkOSPRay/vtkOSPRayActor.cxx
  vtkOSPRay/vtkOSPRayCamera.cxx
  vtkOSPRay/vtkOSPRayLight.cxx
  vtkOSPRay/vtkOSPRayManager.cxx
  vtkOSPRay/# vtkOSPRayPolyDataMapper.cxx
  vtkOSPRay/vtkOSPRayProperty.cxx
  vtkOSPRay/vtkOSPRayRenderer.cxx
  vtkOSPRay/# vtkOSPRayTestSource.cxx
  vtkOSPRay/vtkOSPRayTexture.cxx
  vtkOSPRay/vtkOSPRayVolumeRayCastMapper.h
  vtkOSPRay/vtkOSPRayVolumeRayCastMapper.cxx
  vtkOSPRay/# vtkOSPRayPVLODVolume.cxx
  )
set(Module_SRCS ${Module_SRCS} ${OSPRAY_SRCS})
#---------------------------------------------------------

# set_source_files_properties(
#   vtkDirectionEncoder
#   vtkEncodedGradientEstimator
#   vtkVolumeMapper
#   vtkVolumeRayCastFunction
#   vtkVolumeTextureMapper
#   vtkUnstructuredGridVolumeMapper
#   vtkUnstructuredGridVolumeRayCastFunction
#   vtkUnstructuredGridVolumeRayCastIterator
#   vtkUnstructuredGridVolumeRayIntegrator
#   ABSTRACT
#   )

# if(VTK_RENDERING_BACKEND STREQUAL "OpenGL2")
#   set_source_files_properties(
#     vtkGPUVolumeRayCastMapper.cxx APPEND PROPERTIES
#     COMPILE_DEFINITIONS VTK_OPENGL2
#     )
# endif()

# only some volume mappers are supported for the OpenGL2 backend
# if(NOT VTK_RENDERING_BACKEND STREQUAL "OpenGL2")
#   set(Module_SRCS ${Module_SRCS}
#     vtkHAVSVolumeMapper.cxx
#     vtkProjectedAAHexahedraMapper.cxx
#     vtkVolumeTextureMapper2D.cxx
#     vtkVolumeTextureMapper3D.cxx
#     vtkVolumeTextureMapper.cxx
#     )
# endif()

set (${vtk-module}_NO_HeaderTest 1)
vtk_module_library(${vtk-module} ${Module_SRCS})
include(vtkOpenGL)
vtk_opengl_link(${vtk-module})

#---------------------------------------------------------
# OSPRay
#---------------------------------------------------------
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/CMake)
find_package(OSPRay)
INCLUDE_DIRECTORIES(${OSPRAY_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR}/vtkOSPRay)
vtk_module_link_libraries (${vtk-module} LINK_PRIVATE ${OSPRAY_LIBRARIES} ${QT_LIBRARIES})
# OSPRay_Core uses MMTime which is in it's own special library.
if(WIN32)
  TARGET_LINK_LIBRARIES(${PROJECT_NAME} LINK_PRIVATE Winmm)
endif()
#cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR)
#target_compile_features(${PROJECT_NAME} PRIVATE cxx_range_for)
#---------------------------------------------------------
endif(VTK_USE_OSPRAY)
