Blender  V2.93
Macros | Functions
kernel_split_data.h File Reference
#include "kernel/split/kernel_split_data_types.h"
#include "kernel/kernel_globals.h"

Go to the source code of this file.

Macros

#define SPLIT_DATA_ENTRY(type, name, num)   +align_up(num_elements *num * sizeof(type), 16)
 
#define SPLIT_DATA_ENTRY(type, name, num)
 

Functions

CCL_NAMESPACE_BEGIN ccl_device_inline uint64_t split_data_buffer_size (KernelGlobals *kg, size_t num_elements)
 
ccl_device_inline void split_data_init (KernelGlobals *kg, ccl_global SplitData *split_data, size_t num_elements, ccl_global void *data, ccl_global char *ray_state)
 

Macro Definition Documentation

◆ SPLIT_DATA_ENTRY [1/2]

#define SPLIT_DATA_ENTRY (   type,
  name,
  num 
)    +align_up(num_elements *num * sizeof(type), 16)

◆ SPLIT_DATA_ENTRY [2/2]

#define SPLIT_DATA_ENTRY (   type,
  name,
  num 
)
Value:
split_data->name = (type *)p; \
p += align_up(num_elements * num * sizeof(type), 16);
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
ccl_device_inline size_t align_up(size_t offset, size_t alignment)
Definition: util_types.h:65

Function Documentation

◆ split_data_buffer_size()

CCL_NAMESPACE_BEGIN ccl_device_inline uint64_t split_data_buffer_size ( KernelGlobals *  kg,
size_t  num_elements 
)

◆ split_data_init()

ccl_device_inline void split_data_init ( KernelGlobals *  kg,
ccl_global SplitData split_data,
size_t  num_elements,
ccl_global void *  data,
ccl_global char *  ray_state 
)