1rtcGetSYCLDeviceFunctionPoEimnbtreere(3R)ay Tracing KretrcnGeeltsSY4CLDeviceFunctionPointer(3)
2
3
4
5 NAME
6 rtcGetSYCLDeviceFunctionPointer - obtains a device side
7 function pointer for some SYCL function
8
9 SYNOPSIS
10 #include <embree4/rtcore.h>
11
12 template<auto F>
13 inline decltype(F) rtcGetSYCLDeviceFunctionPointer(sycl::queue& queue);
14
15 DESCRIPTION
16 This function returns a device side function pointer for some function
17 F. This function F must be defined using the RTC_SYCL_INDIRECT‐
18 LY_CALLABLE attribute, e.g.:
19
20 RTC_SYCL_INDIRECTLY_CALLABLE void filter(
21 const RTCFilterFunctionNArguments* args) { ... }
22
23 RTCFilterFunctionN fptr = rtcGetSYCLDeviceFunctionPointer<filter>(queue);
24
25 Such a device side function pointers of some filter callbacks can get
26 assigned to a geometry using the rtcSetGeometryIntersectFilterFunction
27 and rtcSetGeometryOccludedFilterFunction API functions.
28
29 Further, device side function pointers for user geometry callbacks can
30 be assigned to geometries using the rtcSetGeometryIntersectFunction and
31 rtcSetGeometryOccludedFunction API calls.
32
33 These geometry versions of the callback functions are disabled in SYCL
34 by default, and we recommend not using them for performance reasons.
35
36 EXIT STATUS
37 On failure an error code is set that can be queried using rtcGetDe‐
38 viceError.
39
40 SEE ALSO
41 [rtcSetGeometryIntersectFunction], [rtcSetGeometryOccludedFunction],
42 [rtcSetGeometryIntersectFilterFunction], [rtcSetGeometryOccludedFilter‐
43 Function]
44
45
46
47 rtcGetSYCLDeviceFunctionPointer(3)