rtcore_config.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. // Copyright 2009-2021 Intel Corporation
  2. // SPDX-License-Identifier: Apache-2.0
  3. #pragma once
  4. #if !defined(EMBREE_SYCL_SUPPORT)
  5. // #cmakedefine EMBREE_SYCL_SUPPORT
  6. #endif
  7. #define RTC_VERSION_MAJOR 4
  8. #define RTC_VERSION_MINOR 4
  9. #define RTC_VERSION_PATCH 0
  10. #define RTC_VERSION 40400
  11. #define RTC_VERSION_STRING "4.4.0"
  12. #define RTC_MAX_INSTANCE_LEVEL_COUNT 1
  13. // #cmakedefine EMBREE_GEOMETRY_INSTANCE_ARRAY
  14. #if defined(EMBREE_GEOMETRY_INSTANCE_ARRAY)
  15. #define RTC_GEOMETRY_INSTANCE_ARRAY
  16. #endif
  17. // #cmakedefine01 EMBREE_SYCL_GEOMETRY_CALLBACK
  18. #define EMBREE_MIN_WIDTH 0
  19. #define RTC_MIN_WIDTH EMBREE_MIN_WIDTH
  20. #if !defined(EMBREE_STATIC_LIB)
  21. #define EMBREE_STATIC_LIB
  22. #endif
  23. // #cmakedefine EMBREE_API_NAMESPACE
  24. #if defined(EMBREE_API_NAMESPACE)
  25. # define RTC_NAMESPACE
  26. # define RTC_NAMESPACE_BEGIN namespace {
  27. # define RTC_NAMESPACE_END }
  28. # define RTC_NAMESPACE_USE using namespace;
  29. # define RTC_API_EXTERN_C
  30. # define RTC_API_EXTERN_CPP
  31. # undef EMBREE_API_NAMESPACE
  32. #else
  33. # define RTC_NAMESPACE_BEGIN
  34. # define RTC_NAMESPACE_END
  35. # define RTC_NAMESPACE_USE
  36. # if defined(__cplusplus)
  37. # define RTC_API_EXTERN_C extern "C"
  38. # define RTC_API_EXTERN_CPP extern "C++"
  39. # else
  40. # define RTC_API_EXTERN_C
  41. # endif
  42. #endif
  43. #if defined(ISPC)
  44. # define RTC_API_IMPORT extern "C" unmasked
  45. # define RTC_API_EXPORT extern "C" unmasked
  46. #elif defined(EMBREE_STATIC_LIB)
  47. # define RTC_API_IMPORT RTC_API_EXTERN_C
  48. # define RTC_API_EXPORT RTC_API_EXTERN_C
  49. #elif defined(_WIN32)
  50. # define RTC_API_IMPORT RTC_API_EXTERN_C __declspec(dllimport)
  51. # define RTC_API_EXPORT RTC_API_EXTERN_C __declspec(dllexport)
  52. #else
  53. # define RTC_API_IMPORT RTC_API_EXTERN_C
  54. # define RTC_API_EXPORT RTC_API_EXTERN_C __attribute__ ((visibility ("default")))
  55. #endif
  56. #if defined(ISPC)
  57. # define RTC_API_IMPORT_CPP extern "C++" unmasked
  58. # define RTC_API_EXPORT_CPP extern "C++" unmasked
  59. #elif defined(EMBREE_STATIC_LIB)
  60. # define RTC_API_IMPORT_CPP RTC_API_EXTERN_CPP
  61. # define RTC_API_EXPORT_CPP RTC_API_EXTERN_CPP
  62. #elif defined(_WIN32)
  63. # define RTC_API_IMPORT_CPP RTC_API_EXTERN_CPP __declspec(dllimport)
  64. # define RTC_API_EXPORT_CPP RTC_API_EXTERN_CPP __declspec(dllexport)
  65. #else
  66. # define RTC_API_IMPORT_CPP RTC_API_EXTERN_CPP
  67. # define RTC_API_EXPORT_CPP RTC_API_EXTERN_CPP __attribute__ ((visibility ("default")))
  68. #endif
  69. #if defined(RTC_EXPORT_API)
  70. # define RTC_API RTC_API_EXPORT
  71. #else
  72. # define RTC_API RTC_API_IMPORT
  73. #endif
  74. #if defined(RTC_EXPORT_API)
  75. # define RTC_API_CPP RTC_API_EXPORT_CPP
  76. #else
  77. # define RTC_API_CPP RTC_API_IMPORT_CPP
  78. #endif
  79. #if defined(ISPC)
  80. # define RTC_SYCL_INDIRECTLY_CALLABLE
  81. #elif defined(__SYCL_DEVICE_ONLY__)
  82. # define RTC_SYCL_INDIRECTLY_CALLABLE [[intel::device_indirectly_callable]] SYCL_EXTERNAL
  83. # define RTC_SYCL_API SYCL_EXTERNAL
  84. #else
  85. # define RTC_SYCL_INDIRECTLY_CALLABLE
  86. # define RTC_SYCL_API RTC_API
  87. #endif