logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

clCreateFromD3D11BufferKHR - Creates an OpenCL buffer object from a Direct3D 11 buffer.

Authors

TheKhronosGroup

Errors

       Returns CL_SUCCESS returns a valid non-zero OpenCL buffer object and errcode_ret is set to CL_SUCCESS if
       the buffer object is created successfully. Otherwise, it returns a NULL value with one of the following
       error values returned in errcode_ret:

       •   CL_INVALID_CONTEXT if context is not a valid context.

       •   CL_INVALID_VALUE if values specified in flags are not valid.

       •   CL_INVALID_D3D11_RESOURCE_KHR if resource is not a Direct3D 11 buffer resource, if resource was
           created with the D3D11_USAGE flag D3D11_USAGE_IMMUTABLE, if a cl_mem from resource has already been
           created using clCreateFromD3D11BufferKHR, or if context was not created against the same Direct3D 11
           device from which resource was created.

       •   CL_OUT_OF_HOST_MEMORY if there is a failure to allocate resources required by the OpenCL
           implementation on the host.

Name

       clCreateFromD3D11BufferKHR - Creates an OpenCL buffer object from a Direct3D 11 buffer.

       cl_memclCreateFromD3D11BufferKHR(cl_contextcontext,cl_mem_flagsflags,ID3D11Buffer*resource,cl_int*errcode_ret);

Notes

        1. OpenCL Specification
           page 104, section 9.11.7.3 - Sharing Direct3D 11 Buffer Resources

The Khronos Group                                  11/18/2024                         CLCREATEFROMD3D11BUF(3clc)

Parameters

context
           A valid OpenCL context created from a Direct3D 11 device.

       flags
           A bit-field that is used to specify usage information. May be CL_MEM_READ_ONLY, CL_MEM_WRITE_ONLY, or
           CL_MEM_READ_WRITE. (See the table for clCreateBuffer(3clc) for more information.)

       resource
           A pointer to the Direct3D 11 buffer to share.

       errcode_ret
           An appropriate error code. If errcode_ret is NULL, no error code is returned.

See Also

cl_khr_d3d11_sharing(3clc), clGetDeviceIDsFromD3D11KHR(3clc), clCreateFromD3D11Texture2DKHR(3clc),
       clCreateFromD3D11Texture3DKHR(3clc), clEnqueueAcquireD3D11ObjectsKHR(3clc),
       clEnqueueReleaseD3D11ObjectsKHR(3clc)

Specification

OpenCLSpecification[1]

See Also