This function returns the handles of all the clients in the library’s internal list.

Function Header

IMRResult IMR_GetAllClients(

ClientID *client_list,

int *list_size


Function Parameters



Value or Description



An array of ClientIDs to be filled by the library. This parameter may be NULL, in which case only the size of the library’s client list is returned, via the ‘list_size’ parameter.



Input: A pointer to an integer. When calling the function, the integer’s value must be the size of the buffer pointed to by ‘client_list’, in ClientID units (that is, how many ClientIDs can fit in the ‘client_list’ buffer).

Output: If there is enough space in the ‘client_list’ buffer, the buffer will be filled with the ClientIDs of all of the clients managed by the library, and the ‘list_size’ argument will be updated to be the number of ClientIDs that were actually written into the buffer. If there are more clients managed by the library than there is space in the buffer, then the library will return in the ‘client_list’ buffer as many as can fit, the ‘list_size’ argument will be updated to be the number of clients managed by the library and the call will fail with the IMR_RES_NOT_ENOUGH_SPACE error code. This parameter must not be NULL.

Function Return Status

For a complete list of possible error codes, see Error Codes.


Value or Description


The command finished successfully.


Not enough memory.


Not enough space is available in the ‘client_list’ buffer to hold the entire client list. The library will return as many as can fit, and return the total number of clients available in ‘list_size’.

Copyright © 2006-2022, Intel Corporation. All rights reserved.