From fa46d3cd2c0166d064a720bd5e621b11751a9977 Mon Sep 17 00:00:00 2001 From: Tobias Jahnke Date: Fri, 9 Aug 2019 14:12:09 +0200 Subject: unicens-controller: insert initial code of service Bug-AGL: SPEC-2738 - adds service widget to control microphone mode, amplifier and slimamp master volume Signed-off-by: Tobias Jahnke Change-Id: I2463b0351c740c738e35185997d926a602bb2489 Signed-off-by: Tobias Jahnke --- binding/wrap-unicens/wrap-unicens.h | 44 +++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 binding/wrap-unicens/wrap-unicens.h (limited to 'binding/wrap-unicens/wrap-unicens.h') diff --git a/binding/wrap-unicens/wrap-unicens.h b/binding/wrap-unicens/wrap-unicens.h new file mode 100644 index 0000000..a6e2f43 --- /dev/null +++ b/binding/wrap-unicens/wrap-unicens.h @@ -0,0 +1,44 @@ +/* + * Copyright 2019 Microchip Technology Inc. and its subsidiaries + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#pragma once + +#ifndef AFB_BINDING_VERSION +# define AFB_BINDING_VERSION 3 +#endif + +#include +#include +#include +#include + +extern int wrap_ucs_init(afb_api_t apiHandle); + +/* Asynchronous API: result callback */ +typedef void (*wrap_ucs_availability_cb_t)(uint16_t node, bool available); +typedef void (*wrap_ucs_result_cb_t)(uint8_t result, void *user_ptr); + +/* Asynchronous API: functions */ +extern int wrap_ucs_i2cwrite(uint16_t node, + uint8_t *data_ptr, + uint8_t data_sz, + wrap_ucs_result_cb_t result_fptr, + void *result_user_ptr); + +/* Synchronous API: functions */ +extern int wrap_ucs_subscribe_sync(void); +extern int wrap_ucs_interpret_event(const char *event, struct json_object *object, wrap_ucs_availability_cb_t callback); +extern int wrap_ucs_i2cwrite_sync(uint16_t node, uint8_t *data_ptr, uint8_t data_sz); +extern int wrap_ucs_sendmessage_sync(uint16_t src_addr, uint16_t msg_id, uint8_t *data_ptr, uint8_t data_sz); -- cgit 1.2.3-korg