28#ifndef vtkDeviceArrayFactory_h
29#define vtkDeviceArrayFactory_h
31#include "vtkCommonCoreModule.h"
35VTK_ABI_NAMESPACE_BEGIN
52 vtkSetMacro(NumberOfComponents,
int);
53 vtkGetMacro(NumberOfComponents,
int);
54 vtkSetMacro(DataType,
int);
55 vtkGetMacro(DataType,
int);
103 vtkTypeUInt64 driver, vtkTypeUInt64 device, vtkTypeUInt64 context);
116 int NumberOfComponents = 1;
static bool HasLevelZeroContext()
VTK's Level Zero context, as integers: the ze_driver_handle_t, ze_device_handle_t and ze_context_hand...
static int GetDeviceOrdinal(vtkMemoryDescriptor *descriptor)
The number of the device the memory a descriptor describes is on, as the vendor's runtime counts devi...
static bool IsMemorySpaceAvailable(const char *space)
Whether memory of the space named ("cuda", "hip", "level_zero") can be held: whether the vendor's dri...
static vtkTypeUInt64 GetLevelZeroDriverHandle()
VTK's Level Zero context, as integers: the ze_driver_handle_t, ze_device_handle_t and ze_context_hand...
vtkDataArray * CreateArray()
The array, or nullptr (with an error) if the descriptor, shape or type do not fit,...
void AddBuffer(vtkMemoryDescriptor *descriptor)
The memory: one descriptor, of role "data".
int GetNumberOfBuffers() const
The memory: one descriptor, of role "data".
~vtkDeviceArrayFactory() override
void ClearBuffers()
The memory: one descriptor, of role "data".
static vtkTypeUInt64 GetLevelZeroContextHandle()
VTK's Level Zero context, as integers: the ze_driver_handle_t, ze_device_handle_t and ze_context_hand...
static vtkTypeUInt64 GetLevelZeroDeviceHandle()
VTK's Level Zero context, as integers: the ze_driver_handle_t, ze_device_handle_t and ze_context_hand...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkDeviceArrayFactory * New()
static void SetLevelZeroContext(vtkTypeUInt64 driver, vtkTypeUInt64 device, vtkTypeUInt64 context)
VTK's Level Zero context, as integers: the ze_driver_handle_t, ze_device_handle_t and ze_context_hand...
a simple class to control print indentation
Describes a memory buffer on host or device, and who keeps it alive.
Hold a reference to a vtkObjectBase instance.