diff options
author | Jonathan Aillet <jonathan.aillet@iot.bzh> | 2019-01-07 11:30:12 +0100 |
---|---|---|
committer | Jonathan Aillet <jonathan.aillet@iot.bzh> | 2019-01-28 15:38:28 +0100 |
commit | 4f44ee8f17789ac27cd1e29a451ac450c7dbeb06 (patch) | |
tree | e27e4c05a417ef2d8a9ca12451af0f8e298cc1cb /4a-hal-utilities/4a-hal-utilities-alsa-data.h | |
parent | a93c3566d181e82a39b32acffdb13a411ca4f5f5 (diff) |
Turn '4a-hal-utilities' into an internal library
That way, includes will be cleaner and '4a-hal-utilities'
functions will be usable in plugin.
Change-Id: I8a2146bd4e5dd5ef449b9ba7f2b1eed4d59045d3
Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
Diffstat (limited to '4a-hal-utilities/4a-hal-utilities-alsa-data.h')
-rw-r--r-- | 4a-hal-utilities/4a-hal-utilities-alsa-data.h | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/4a-hal-utilities/4a-hal-utilities-alsa-data.h b/4a-hal-utilities/4a-hal-utilities-alsa-data.h new file mode 100644 index 0000000..5a998ae --- /dev/null +++ b/4a-hal-utilities/4a-hal-utilities-alsa-data.h @@ -0,0 +1,72 @@ +/* +* Copyright (C) 2019 "IoT.bzh" +* Author Jonathan Aillet <jonathan.aillet@iot.bzh> +* +* 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. +*/ + +#ifndef _HAL_UTILITIES_ALSA_DATA_INCLUDE_ +#define _HAL_UTILITIES_ALSA_DATA_INCLUDE_ + +#include <stdio.h> + +#include <json-c/json.h> + +#include <alsa/asoundlib.h> + +#include <ctl-config.h> + +struct CtlHalAlsaDBScale { + int min; + int max; + int step; + int mute; +}; + +struct CtlHalAlsaCtlProperties { + snd_ctl_elem_type_t type; + int count; + int minval; + int maxval; + int step; + // TBD JAI : use them + const char **enums; + struct CtlHalAlsaDBScale *dbscale; +}; + +struct CtlHalAlsaCtl { + char *name; + int numid; + int value; + struct CtlHalAlsaCtlProperties alsaCtlProperties; + struct CtlHalAlsaCtlProperties *alsaCtlCreation; +}; + +struct CtlHalAlsaMap { + const char *uid; + char *info; + AFB_EventT alsaControlEvent; + struct CtlHalAlsaCtl ctl; + json_object *actionJ; + CtlActionT *action; +}; + +struct CtlHalAlsaMapT { + struct CtlHalAlsaMap *ctls; + unsigned int ctlsCount; +}; + +// Free contents of 'CtlHalAlsaMapT' data structure +uint8_t HalUtlFreeAlsaCtlsMap(struct CtlHalAlsaMapT *alsaCtlsMap); + +#endif /* _HAL_UTILITIES_ALSA_DATA_INCLUDE_ */
\ No newline at end of file |