Blender V5.0
DeviceKernelArguments Struct Reference

#include <queue.h>

Public Types

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

Public Member Functions

 DeviceKernelArguments ()=default
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 Type type, const void *value, const size_t size)
template<typename T, typename... Args>
void add (const T *first, Args... args)

Public Attributes

Type types [MAX_ARGS]
void * values [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 
KERNEL_FILM_CONVERT 
HIPRT_GLOBAL_STACK 

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

Constructor & Destructor Documentation

◆ DeviceKernelArguments() [1/3]

DeviceKernelArguments::DeviceKernelArguments ( )
default

◆ DeviceKernelArguments() [2/3]

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

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

References add(), and T.

◆ DeviceKernelArguments() [3/3]

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

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

References add(), and T.

Member Function Documentation

◆ add() [1/6]

void DeviceKernelArguments::add ( const device_ptr * value)
inline

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

References add(), and POINTER.

◆ add() [2/6]

void DeviceKernelArguments::add ( const float * value)
inline

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

References add(), and FLOAT32.

◆ add() [3/6]

void DeviceKernelArguments::add ( const int32_t * value)
inline

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

References add(), and INT32.

◆ add() [4/6]

void DeviceKernelArguments::add ( const KernelFilmConvert * value)
inline

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

References add(), and KERNEL_FILM_CONVERT.

Referenced by add(), add(), add(), add(), add(), DeviceKernelArguments(), and DeviceKernelArguments().

◆ add() [5/6]

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

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

References add(), and T.

◆ add() [6/6]

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

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

References assert, count, MAX_ARGS, size(), sizes, 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: