44 cl_device_id m_device;
54 cl_command_queue m_queue;
89 return this->m_context;
100 std::list<cl_mem> *cleanup,
106 std::list<cl_mem> *cleanup,
114 cl_mem clOutputMemoryBuffer);
123 cl_kernel
COM_clCreateKernel(
const char *kernelname, std::list<cl_kernel> *clKernelsToCleanUp);
Abstract class for device implementations to be used by the Compositor. devices are queried,...
a MemoryBuffer contains access to the data of a chunk
NodeOperation contains calculation logic.
device representing an GPU OpenCL device. an instance of this class represents a single cl_device
static const cl_image_format * determineImageFormat(MemoryBuffer *memoryBuffer)
determine an image format
void COM_clAttachMemoryBufferOffsetToKernelParameter(cl_kernel kernel, int offsetIndex, MemoryBuffer *memoryBuffers)
cl_command_queue getQueue()
cl_mem COM_clAttachMemoryBufferToKernelParameter(cl_kernel kernel, int parameterIndex, int offsetIndex, std::list< cl_mem > *cleanup, MemoryBuffer **inputMemoryBuffers, SocketReader *reader)
void COM_clEnqueueRange(cl_kernel kernel, MemoryBuffer *outputMemoryBuffer)
void COM_clAttachOutputMemoryBufferToKernelParameter(cl_kernel kernel, int parameterIndex, cl_mem clOutputMemoryBuffer)
void COM_clAttachSizeToKernelParameter(cl_kernel kernel, int offsetIndex, NodeOperation *operation)
cl_kernel COM_clCreateKernel(const char *kernelname, std::list< cl_kernel > *clKernelsToCleanUp)
OpenCLDevice(cl_context context, cl_device_id device, cl_program program, cl_int vendorId)
constructor with opencl device
void execute(WorkPackage *work) override
execute a WorkPackage
contains data about work that can be scheduled