Blender
V5.0
intern
cycles
kernel
device
metal
device/metal/globals.h
Go to the documentation of this file.
1
/* SPDX-FileCopyrightText: 2021-2022 Blender Foundation
2
*
3
* SPDX-License-Identifier: Apache-2.0 */
4
5
/* Constant Globals */
6
7
#include "
kernel/types.h
"
8
9
#include "
kernel/integrator/state.h
"
10
#include "
kernel/util/profiler.h
"
11
12
#include "
util/color.h
"
13
#include "
util/texture.h
"
14
15
CCL_NAMESPACE_BEGIN
16
17
struct
KernelParamsMetal
{
18
19
#define KERNEL_DATA_ARRAY(type, name) ccl_global const type *name;
20
#include "
kernel/data_arrays.h
"
21
#undef KERNEL_DATA_ARRAY
22
23
const
IntegratorStateGPU
integrator_state
;
24
const
KernelData
data
;
25
};
26
27
struct
KernelGlobalsGPU
{
28
int
unused
[1];
29
};
30
31
using
KernelGlobals
=
const
ccl_global
KernelGlobalsGPU
*
ccl_restrict
;
32
33
/* Abstraction macros */
34
#define kernel_data launch_params_metal.data
35
#define kernel_data_fetch(name, index) launch_params_metal.name[index]
36
#define kernel_data_array(name) launch_params_metal.name
37
#define kernel_integrator_state launch_params_metal.integrator_state
38
39
CCL_NAMESPACE_END
color.h
data_arrays.h
KernelGlobals
const ThreadKernelGlobalsCPU * KernelGlobals
Definition
device/cpu/globals.h:92
CCL_NAMESPACE_END
#define CCL_NAMESPACE_END
Definition
device/cuda/compat.h:10
ccl_restrict
#define ccl_restrict
ccl_global
#define ccl_global
types.h
CCL_NAMESPACE_BEGIN
Definition
python.cpp:37
profiler.h
state.h
IntegratorStateGPU
Definition
state.h:141
KernelGlobalsGPU
Definition
device/cuda/globals.h:21
KernelGlobalsGPU::unused
int unused[1]
Definition
device/cuda/globals.h:22
KernelParamsMetal
Definition
device/metal/globals.h:17
KernelParamsMetal::integrator_state
CCL_NAMESPACE_END const IntegratorStateGPU integrator_state
Definition
device/metal/globals.h:23
KernelParamsMetal::data
const KernelData data
Definition
device/metal/globals.h:24
texture.h
Generated on
for Blender by
doxygen
1.16.1