Blender V4.3
DeviceKernelArguments Struct Reference

#include <queue.h>

Public Types

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

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 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]
 
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 24 of file device/queue.h.

Member Enumeration Documentation

◆ Type

Enumerator
POINTER 
INT32 
FLOAT32 
KERNEL_FILM_CONVERT 
HIPRT_GLOBAL_STACK 

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

Constructor & Destructor Documentation

◆ DeviceKernelArguments() [1/3]

DeviceKernelArguments::DeviceKernelArguments ( )
inline

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

◆ DeviceKernelArguments() [2/3]

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

Definition at line 42 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 47 of file device/queue.h.

References add().

Member Function Documentation

◆ add() [1/6]

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

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

References add(), and POINTER.

◆ add() [2/6]

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

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

References add(), and FLOAT32.

◆ add() [3/6]

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

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

References add(), and INT32.

◆ add() [4/6]

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

Definition at line 53 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 78 of file device/queue.h.

References add().

◆ add() [6/6]

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

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

References count, MAX_ARGS, size(), and sizes.

Member Data Documentation

◆ count

size_t DeviceKernelArguments::count = 0

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

Referenced by add().

◆ MAX_ARGS

const int DeviceKernelArguments::MAX_ARGS = 18
static

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

Referenced by add().

◆ sizes

size_t DeviceKernelArguments::sizes[MAX_ARGS]

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

Referenced by add().

◆ types

Type DeviceKernelArguments::types[MAX_ARGS]

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

◆ values

void* DeviceKernelArguments::values[MAX_ARGS]

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


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