1rtcNewSYCLDevice(3) Embree Ray Tracing Kernels 4 rtcNewSYCLDevice(3)
2
3
4
5 NAME
6 rtcNewSYCLDevice - creates a new device to be used with SYCL
7
8 SYNOPSIS
9 #include <embree4/rtcore.h>
10
11 RTCDevice rtcNewSYCLDevice(sycl::context context, const char* config);
12
13 DESCRIPTION
14 This function creates a new device to be used with SYCL for GPU render‐
15 ing and returns a handle to this device. The device object is refer‐
16 ence counted with an initial reference count of 1. The handle can get
17 released using the rtcReleaseDevice API call.
18
19 The passed SYCL context (context argument) is used to allocate GPU da‐
20 ta, thus only devices contained inside this context can be used for
21 rendering. By default the GPU data is allocated on the first GPU de‐
22 vice of the context, but this behavior can get changed with the [rtc‐
23 SetDeviceSYCLDevice] function.
24
25 The device object acts as a class factory for all other object types.
26 All objects created from the device (like scenes, geometries, etc.)
27 hold a reference to the device, thus the device will not be destroyed
28 unless these objects are destroyed first.
29
30 Objects are only compatible if they belong to the same device, e.g it
31 is not allowed to create a geometry in one device and attach it to a
32 scene created with a different device.
33
34 For an overview of configurations that can get passed (config argument)
35 please see the [rtcNewDevice] function description.
36
37 EXIT STATUS
38 On success returns a handle of the created device. On failure returns
39 NULL as device and sets a per-thread error code that can be queried us‐
40 ing rtcGetDeviceError(NULL).
41
42 SEE ALSO
43 [rtcRetainDevice], [rtcReleaseDevice], [rtcNewDevice]
44
45
46
47 rtcNewSYCLDevice(3)