CLBufferCreate

Создает буфер OpenCL и возвращает хендл на него.

int  CLBufferCreate(
   int   context,     // хендл на контекст OpenCL
   uint  size,        // размер буфера
   uint  flags        // комбинация флагов, задающие свойства буфера
   );

Параметры

context

[in]  Хендл на context OpenCL.

size

[in]  Размер буфера в байтах.

flags

[in]  Свойства буфера, задаваемые через комбинацию флагов:  CL_MEM_READ_WRITE, CL_MEM_WRITE_ONLY, CL_MEM_READ_ONLY, CL_MEM_ALLOC_HOST_PTR.

Возвращаемое значение

Хендл на буфер OpenCL при успешном выполнении. В случае ошибки возвращает -1. Для получения информации об ошибке используйте функцию GetLastError().

Примечание

На данный момент предусмотрены следующие коды ошибок:

  • ERR_OPENCL_INVALID_HANDLE  - невалидный хендл на контекст OpenCL,
  • ERR_NOT_ENOUGH_MEMORY – недостаточно памяти,
  • ERR_OPENCL_BUFFER_CREATE – внутренняя ошибка создания буфера.