Used to get information that is common to all memory objects (buffer and image objects).
memobj
Specifies the memory object being queried.
param_name
Specifies the information to query. The list of supported param_name types and the
information returned in param_value by clGetMemObjectInfo is described in the table below.
| cl_mem_info | Return Type | Info. returned in param_value |
|---|---|---|
CL_MEM_TYPE
|
cl_mem_object_type |
Returns CL_MEM_OBJECT_BUFFER if
memobj is created with clCreateBuffer,
CL_MEM_OBJECT_IMAGE2D if
memobj is created with
clCreateImage2D or
CL_MEM_OBJECT_IMAGE3D if
memobj is created with
clCreateImage3D.
|
CL_MEM_FLAGS
|
cl_mem_flags |
Return the flags argument value
specified when memobj is created with clCreateBuffer, clCreateImage2D, or clCreateImage3D.
|
CL_MEM_SIZE
|
size_t |
Return actual size of memobj in bytes.
|
CL_MEM_HOST_PTR
|
void * |
Return the host_ptr argument value specified when memobj is created.
|
CL_MEM_MAP_COUNT
|
cl_uint | Map count. The map count returned should be considered immediately stale. It is unsuitable for general use in applications. This feature is provided for debugging. |
CL_MEM_REFERENCE_COUNT
|
cl_uint |
Return memobj reference count. The reference count returned should be considered immediately stale. It is unsuitable for general use in
applications. This feature is provided for identifying memory leaks.
|
CL_MEM_CONTEXT
|
cl_context | Return context specified when memory object is created. |
param_value
A pointer to memory where the appropriate result being queried is returned. If param_value is NULL, it is ignored.
param_value_size
Used to specify the size in bytes of memory pointed to by param_value.
This size must be greater than or equal to size of return type as described in the table above.
param_value_size_ret
Returns the actual size in bytes of data being queried by param_value. If param_value_size_ret is NULL, it is ignored.
clGetMemObjectInfo returns CL_SUCCESS if the function is executed successfully, returns
CL_INVALID_VALUE if param_name is not valid, or if size in bytes specified by
param_value_size is less than the size of return type as described in the table above and param_value is not
NULL, and returns CL_INVALID_MEM_OBJECT if memobj is a not a valid image object.
Copyright © 2007-2009 The Khronos Group Inc.
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and/or associated documentation files (the
"Materials"), to deal in the Materials without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Materials, and to
permit persons to whom the Materials are furnished to do so, subject to
the condition that this copyright notice and permission notice shall be included
in all copies or substantial portions of the Materials.