MCPcopy Create free account
hub / github.com/RenderKit/embree / runIntersectionFilter1Helper

Function runIntersectionFilter1Helper

kernels/geometry/filter_sycl.h:13–46  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

11namespace embree
12{
13 __forceinline bool runIntersectionFilter1Helper(RTCFilterFunctionNArguments* args, int& mask, const Geometry* const geometry, RayQueryContext* context)
14 {
15 typedef void (*RTCFilterFunctionSYCL)(const void* args);
16 const RTCFeatureFlags feature_mask MAYBE_UNUSED = context->args->feature_mask;
17
18#if EMBREE_SYCL_GEOMETRY_CALLBACK
19 if (feature_mask & RTC_FEATURE_FLAG_FILTER_FUNCTION_IN_GEOMETRY)
20 {
21 RTCFilterFunctionSYCL gfilter = (RTCFilterFunctionSYCL) geometry->intersectionFilterN;
22 if (gfilter)
23 {
24 gfilter(args);
25
26 if (mask == 0)
27 return false;
28 }
29 }
30#endif
31
32 if (feature_mask & RTC_FEATURE_FLAG_FILTER_FUNCTION_IN_ARGUMENTS)
33 {
34 RTCFilterFunctionSYCL cfilter = (RTCFilterFunctionSYCL) context->args->filter;
35 if (cfilter)
36 {
37 if (context->enforceArgumentFilterFunction() || geometry->hasArgumentFilterFunctions())
38 cfilter(args);
39
40 if (mask == 0)
41 return false;
42 }
43 }
44
45 return true;
46 }
47
48 __forceinline bool runOcclusionFilter1Helper(RTCFilterFunctionNArguments* args, int& mask, const Geometry* const geometry, RayQueryContext* context)
49 {

Callers 1

Calls 1

Tested by

no test coverage detected