.\" Automatically generated by Pandoc 2.9.2.1 .\" .TH "rtcGetSYCLDeviceFunctionPointer" "3" "" "" "Embree Ray Tracing Kernels 4" .hy .SS NAME .IP .nf \f[C] rtcGetSYCLDeviceFunctionPointer - obtains a device side function pointer for some SYCL function \f[R] .fi .SS SYNOPSIS .IP .nf \f[C] #include template inline decltype(F) rtcGetSYCLDeviceFunctionPointer(sycl::queue& queue); \f[R] .fi .SS DESCRIPTION .PP This function returns a device side function pointer for some function F. This function F must be defined using the \f[C]RTC_SYCL_INDIRECTLY_CALLABLE\f[R] attribute, e.g.: .IP .nf \f[C] RTC_SYCL_INDIRECTLY_CALLABLE void filter( const RTCFilterFunctionNArguments* args) { ... } RTCFilterFunctionN fptr = rtcGetSYCLDeviceFunctionPointer(queue); \f[R] .fi .PP Such a device side function pointers of some filter callbacks can get assigned to a geometry using the \f[C]rtcSetGeometryIntersectFilterFunction\f[R] and \f[C]rtcSetGeometryOccludedFilterFunction\f[R] API functions. .PP Further, device side function pointers for user geometry callbacks can be assigned to geometries using the \f[C]rtcSetGeometryIntersectFunction\f[R] and \f[C]rtcSetGeometryOccludedFunction\f[R] API calls. .PP These geometry versions of the callback functions are disabled in SYCL by default, and we recommend not using them for performance reasons. .SS EXIT STATUS .PP On failure an error code is set that can be queried using \f[C]rtcGetDeviceError\f[R]. .SS SEE ALSO .PP [rtcSetGeometryIntersectFunction], [rtcSetGeometryOccludedFunction], [rtcSetGeometryIntersectFilterFunction], [rtcSetGeometryOccludedFilterFunction]