Blender  V3.3
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
DeviceKernelArguments Struct Reference

#include <queue.h>

Public Types

enum  Type {
  POINTER , INT32 , FLOAT32 , BOOLEAN ,
  KERNEL_FILM_CONVERT
}
 

Public Member Functions

 DeviceKernelArguments ()
 
template<class T >
 DeviceKernelArguments (const T *arg)
 
template<class T , class... Args>
 DeviceKernelArguments (const T *first, Args... args)
 
void add (const KernelFilmConvert *value)
 
void add (const device_ptr *value)
 
void add (const int32_t *value)
 
void add (const float *value)
 
void add (const bool *value)
 
void add (const Type type, const void *value, size_t size)
 
template<typename T , typename... Args>
void add (const T *first, Args... args)
 

Public Attributes

Type types [MAX_ARGS]
 
voidvalues [MAX_ARGS]
 
size_t sizes [MAX_ARGS]
 
size_t count = 0
 

Static Public Attributes

static const int MAX_ARGS = 18
 

Detailed Description

Definition at line 23 of file device/queue.h.

Member Enumeration Documentation

◆ Type

Enumerator
POINTER 
INT32 
FLOAT32 
BOOLEAN 
KERNEL_FILM_CONVERT 

Definition at line 25 of file device/queue.h.

Constructor & Destructor Documentation

◆ DeviceKernelArguments() [1/3]

DeviceKernelArguments::DeviceKernelArguments ( )
inline

Definition at line 39 of file device/queue.h.

◆ DeviceKernelArguments() [2/3]

template<class T >
DeviceKernelArguments::DeviceKernelArguments ( const T arg)
inline

Definition at line 43 of file device/queue.h.

References add().

◆ DeviceKernelArguments() [3/3]

template<class T , class... Args>
DeviceKernelArguments::DeviceKernelArguments ( const T first,
Args...  args 
)
inline

Definition at line 48 of file device/queue.h.

References add().

Member Function Documentation

◆ add() [1/7]

void DeviceKernelArguments::add ( const bool value)
inline

Definition at line 70 of file device/queue.h.

References add(), and BOOLEAN.

◆ add() [2/7]

void DeviceKernelArguments::add ( const device_ptr value)
inline

Definition at line 58 of file device/queue.h.

References add(), and POINTER.

◆ add() [3/7]

void DeviceKernelArguments::add ( const float value)
inline

Definition at line 66 of file device/queue.h.

References add(), and FLOAT32.

◆ add() [4/7]

void DeviceKernelArguments::add ( const int32_t value)
inline

Definition at line 62 of file device/queue.h.

References add(), and INT32.

◆ add() [5/7]

void DeviceKernelArguments::add ( const KernelFilmConvert value)
inline

Definition at line 54 of file device/queue.h.

References KERNEL_FILM_CONVERT.

Referenced by add(), and DeviceKernelArguments().

◆ add() [6/7]

template<typename T , typename... Args>
void DeviceKernelArguments::add ( const T first,
Args...  args 
)
inline

Definition at line 83 of file device/queue.h.

References add().

◆ add() [7/7]

void DeviceKernelArguments::add ( const Type  type,
const void value,
size_t  size 
)
inline

Definition at line 74 of file device/queue.h.

References count, MAX_ARGS, size(), sizes, type, types, and values.

Member Data Documentation

◆ count

size_t DeviceKernelArguments::count = 0

Definition at line 37 of file device/queue.h.

Referenced by add().

◆ MAX_ARGS

const int DeviceKernelArguments::MAX_ARGS = 18
static

Definition at line 33 of file device/queue.h.

Referenced by add().

◆ sizes

size_t DeviceKernelArguments::sizes[MAX_ARGS]

Definition at line 36 of file device/queue.h.

Referenced by add().

◆ types

Type DeviceKernelArguments::types[MAX_ARGS]

Definition at line 34 of file device/queue.h.

Referenced by add().

◆ values

void* DeviceKernelArguments::values[MAX_ARGS]

Definition at line 35 of file device/queue.h.

Referenced by add().


The documentation for this struct was generated from the following file: