diff options
author | Emre Ucan <eucan@de.adit-jv.com> | 2015-04-07 13:20:41 +0200 |
---|---|---|
committer | Nobuhiko Tanibata <nobuhiko_tanibata@xddp.denso.co.jp> | 2015-05-13 16:06:26 +0900 |
commit | 2ec87cd04a552444607ae2c97399e34d29e9ddec (patch) | |
tree | 67923fabf61a152cc8817ff2a8706bc176edb85e /ivi-input-api | |
parent | 07cdf1c8c83ad4bef7db912a48d43b04975679d8 (diff) | |
download | wayland-ivi-extension-2ec87cd04a552444607ae2c97399e34d29e9ddec.tar.gz |
ilmInput: implement ilm_getInputDeviceCapabilities
Signed-off-by: Emre Ucan <eucan@de.adit-jv.com>
Diffstat (limited to 'ivi-input-api')
-rw-r--r-- | ivi-input-api/ilmInput/src/ilm_input.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/ivi-input-api/ilmInput/src/ilm_input.c b/ivi-input-api/ilmInput/src/ilm_input.c index 688fe32..005e91e 100644 --- a/ivi-input-api/ilmInput/src/ilm_input.c +++ b/ivi-input-api/ilmInput/src/ilm_input.c @@ -213,7 +213,25 @@ ilm_getInputDevices(ilmInputDevice bitmask, t_ilm_uint *num_seats, ILM_EXPORT ilmErrorTypes ilm_getInputDeviceCapabilities(t_ilm_string seat_name, ilmInputDevice *bitmask) { - return ILM_FAILED; + ilmErrorTypes returnValue = ILM_FAILED; + struct ilm_control_context *ctx; + struct seat_context *seat; + + if ((seat_name == NULL) || (bitmask == NULL)) { + fprintf(stderr, "Invalid Argument\n"); + return ILM_FAILED; + } + + ctx = sync_and_acquire_instance(); + wl_list_for_each(seat, &ctx->wl.list_seat, link) { + if (strcmp(seat_name, seat->seat_name) == 0) { + *bitmask = seat->capabilities; + returnValue = ILM_SUCCESS; + } + } + + release_instance(); + return returnValue; } ILM_EXPORT ilmErrorTypes |