1d5ac70f0Sopenharmony_ci/**
2d5ac70f0Sopenharmony_ci * \file include/control_plugin.h
3d5ac70f0Sopenharmony_ci * \brief Common control plugin code
4d5ac70f0Sopenharmony_ci * \author Jaroslav Kysela <perex@perex.cz>
5d5ac70f0Sopenharmony_ci * \date 2021
6d5ac70f0Sopenharmony_ci *
7d5ac70f0Sopenharmony_ci * Application interface library for the ALSA driver.
8d5ac70f0Sopenharmony_ci * See the \ref control_plugins page for more details.
9d5ac70f0Sopenharmony_ci *
10d5ac70f0Sopenharmony_ci * \warning Using of contents of this header file might be dangerous
11d5ac70f0Sopenharmony_ci *	    in the sense of compatibility reasons. The contents might be
12d5ac70f0Sopenharmony_ci *	    freely changed in future.
13d5ac70f0Sopenharmony_ci */
14d5ac70f0Sopenharmony_ci/*
15d5ac70f0Sopenharmony_ci *   This library is free software; you can redistribute it and/or modify
16d5ac70f0Sopenharmony_ci *   it under the terms of the GNU Lesser General Public License as
17d5ac70f0Sopenharmony_ci *   published by the Free Software Foundation; either version 2.1 of
18d5ac70f0Sopenharmony_ci *   the License, or (at your option) any later version.
19d5ac70f0Sopenharmony_ci *
20d5ac70f0Sopenharmony_ci *   This program is distributed in the hope that it will be useful,
21d5ac70f0Sopenharmony_ci *   but WITHOUT ANY WARRANTY; without even the implied warranty of
22d5ac70f0Sopenharmony_ci *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
23d5ac70f0Sopenharmony_ci *   GNU Lesser General Public License for more details.
24d5ac70f0Sopenharmony_ci *
25d5ac70f0Sopenharmony_ci *   You should have received a copy of the GNU Lesser General Public
26d5ac70f0Sopenharmony_ci *   License along with this library; if not, write to the Free Software
27d5ac70f0Sopenharmony_ci *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
28d5ac70f0Sopenharmony_ci *
29d5ac70f0Sopenharmony_ci */
30d5ac70f0Sopenharmony_ci
31d5ac70f0Sopenharmony_ci#ifndef __ALSA_CONTROL_PLUGIN_H
32d5ac70f0Sopenharmony_ci#define __ALSA_CONTROL_PLUGIN_H
33d5ac70f0Sopenharmony_ci
34d5ac70f0Sopenharmony_ci/**
35d5ac70f0Sopenharmony_ci * \defgroup Control_Plugins Primitive Control Plugins
36d5ac70f0Sopenharmony_ci * \ingroup Control
37d5ac70f0Sopenharmony_ci * See the \ref control_plugins page for more details.
38d5ac70f0Sopenharmony_ci * \{
39d5ac70f0Sopenharmony_ci */
40d5ac70f0Sopenharmony_ci
41d5ac70f0Sopenharmony_ci/*
42d5ac70f0Sopenharmony_ci * Control HW
43d5ac70f0Sopenharmony_ci */
44d5ac70f0Sopenharmony_ciint snd_ctl_hw_open(snd_ctl_t **handle, const char *name, int card, int mode);
45d5ac70f0Sopenharmony_ciint _snd_ctl_hw_open(snd_ctl_t **handlep, char *name, snd_config_t *root, snd_config_t *conf, int mode);
46d5ac70f0Sopenharmony_ci
47d5ac70f0Sopenharmony_ci/*
48d5ac70f0Sopenharmony_ci * Control Remap & Map
49d5ac70f0Sopenharmony_ci */
50d5ac70f0Sopenharmony_ciint snd_ctl_remap_open(snd_ctl_t **handlep, const char *name, snd_config_t *remap,
51d5ac70f0Sopenharmony_ci		       snd_config_t *map, snd_ctl_t *child, int mode);
52d5ac70f0Sopenharmony_ciint _snd_ctl_remap_open(snd_ctl_t **handlep, char *name, snd_config_t *root, snd_config_t *conf, int mode);
53d5ac70f0Sopenharmony_ci
54d5ac70f0Sopenharmony_ci/** \} */
55d5ac70f0Sopenharmony_ci
56d5ac70f0Sopenharmony_ci#endif /* __ALSA_CONTROL_PLUGIN_H */
57