diff options
author | fulup <fulup.arfoll@iot.bzh> | 2017-04-09 14:35:00 +0200 |
---|---|---|
committer | fulup <fulup.arfoll@iot.bzh> | 2017-04-09 14:35:00 +0200 |
commit | 6e70aac6c9f02496978d3d02efb355d66fb36ceb (patch) | |
tree | d50df20591076b3da2031b2b9eb249f2a1921f53 /HighLevel-afb/HighLevelBinding.h | |
parent | c75c329e08f4c189419aa4c5607f38890885b46c (diff) |
Clean CMAKE structure and rename files/directories
Diffstat (limited to 'HighLevel-afb/HighLevelBinding.h')
-rw-r--r-- | HighLevel-afb/HighLevelBinding.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/HighLevel-afb/HighLevelBinding.h b/HighLevel-afb/HighLevelBinding.h new file mode 100644 index 0000000..a2ca61c --- /dev/null +++ b/HighLevel-afb/HighLevelBinding.h @@ -0,0 +1,58 @@ +/* + * AlsaLibMapping -- provide low level interface with AUDIO lib (extracted from alsa-json-gateway code) + * Copyright (C) 2015,2016,2017, Fulup Ar Foll fulup@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 AUDIOLOGIC_H +#define AUDIOLOGIC_H + +#include <json-c/json.h> +#include <afb/afb-binding.h> +#include <afb/afb-service-itf.h> + +#include "audio-interface.h" + +// import from AlsaAfbBinding +extern const struct afb_binding_interface *afbIface; + + +// This structure hold private data for a given client of binding +typedef struct { + + int cardid; + const char *devid; + const char *shortname; + const char *longname; + const char *halapi; + struct { // volume in % [0-100] + int masterPlaybackVolume; + int pcmPlaybackVolume; + int pcmPlaybackSwitch; + int captureVolume; + } volumes; + json_object *queryurl; +} AudioLogicCtxT; + +// import from AlsaAfbMapping +PUBLIC void audioLogicSetVol (struct afb_req request); +PUBLIC void audioLogicGetVol(struct afb_req request); +PUBLIC void audioLogicMonitor(struct afb_req request); +PUBLIC void audioLogicOpen(struct afb_req request); +PUBLIC void audioLogicClose(struct afb_req request); +PUBLIC void audioLogicSubscribe(struct afb_req request); +PUBLIC int audioLogicInit (struct afb_service service); + +#endif /* AUDIOLOGIC_H */ + |