PipeWire  0.3.65
param-types.h
Go to the documentation of this file.
1 /* Simple Plugin API
2  *
3  * Copyright © 2018 Wim Taymans
4  *
5  * Permission is hereby granted, free of charge, to any person obtaining a
6  * copy of this software and associated documentation files (the "Software"),
7  * to deal in the Software without restriction, including without limitation
8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9  * and/or sell copies of the Software, and to permit persons to whom the
10  * Software is furnished to do so, subject to the following conditions:
11  *
12  * The above copyright notice and this permission notice (including the next
13  * paragraph) shall be included in all copies or substantial portions of the
14  * Software.
15  *
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
19  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22  * DEALINGS IN THE SOFTWARE.
23  */
24 
25 #ifndef SPA_PARAM_TYPES_H
26 #define SPA_PARAM_TYPES_H
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
37 #include <spa/param/props.h>
38 #include <spa/param/format.h>
39 #include <spa/buffer/type-info.h>
40 
41 /* base for parameter object enumerations */
42 #define SPA_TYPE_INFO_ParamId SPA_TYPE_INFO_ENUM_BASE "ParamId"
43 #define SPA_TYPE_INFO_PARAM_ID_BASE SPA_TYPE_INFO_ParamId ":"
44 
45 static const struct spa_type_info spa_type_param[] = {
63  { 0, 0, NULL, NULL },
64 };
65 
66 /* base for parameter objects */
67 #define SPA_TYPE_INFO_Param SPA_TYPE_INFO_OBJECT_BASE "Param"
68 #define SPA_TYPE_INFO_PARAM_BASE SPA_TYPE_INFO_Param ":"
69 
70 #include <spa/param/audio/type-info.h>
71 
72 static const struct spa_type_info spa_type_prop_float_array[] = {
73  { SPA_PROP_START, SPA_TYPE_Float, SPA_TYPE_INFO_BASE "floatArray", NULL, },
74  { 0, 0, NULL, NULL },
75 };
76 
77 static const struct spa_type_info spa_type_prop_channel_map[] = {
79  { 0, 0, NULL, NULL },
80 };
81 
82 static const struct spa_type_info spa_type_prop_iec958_codec[] = {
83  { SPA_PROP_START, SPA_TYPE_Id, SPA_TYPE_INFO_BASE "iec958Codec", spa_type_audio_iec958_codec, },
84  { 0, 0, NULL, NULL },
85 };
86 
87 #define SPA_TYPE_INFO_ParamBitorder SPA_TYPE_INFO_ENUM_BASE "ParamBitorder"
88 #define SPA_TYPE_INFO_PARAM_BITORDER_BASE SPA_TYPE_INFO_ParamBitorder ":"
89 
90 static const struct spa_type_info spa_type_param_bitorder[] = {
94  { 0, 0, NULL, NULL },
95 };
96 
97 #define SPA_TYPE_INFO_ParamAvailability SPA_TYPE_INFO_ENUM_BASE "ParamAvailability"
98 #define SPA_TYPE_INFO_PARAM_AVAILABILITY_BASE SPA_TYPE_INFO_ParamAvailability ":"
99 
100 static const struct spa_type_info spa_type_param_availability[] = {
104  { 0, 0, NULL, NULL },
105 };
106 
111 #ifdef __cplusplus
112 } /* extern "C" */
113 #endif
114 
115 #endif /* SPA_PARAM_TYPES_H */
Definition: spa/include/spa/utils/type.h:100
invalid
Definition: param.h:50
profile configuration as SPA_TYPE_OBJECT_ParamProfile
Definition: param.h:59
unknown bitorder
Definition: param.h:94
static const struct spa_type_info spa_type_prop_iec958_codec[]
Definition: param-types.h:91
#define SPA_TYPE_INFO_BASE
Definition: spa/include/spa/utils/type.h:115
Definition: spa/include/spa/utils/type.h:51
processing latency, a SPA_TYPE_OBJECT_ParamProcessLatency
Definition: param.h:66
static const struct spa_type_info spa_type_param_bitorder[]
Definition: param-types.h:101
#define SPA_TYPE_INFO_PARAM_AVAILABILITY_BASE
Definition: param-types.h:111
Definition: spa/include/spa/utils/type.h:54
Definition: spa/include/spa/utils/type.h:94
Definition: spa/include/spa/utils/type.h:66
spa/buffer/type-info.h
properties as SPA_TYPE_OBJECT_Props
Definition: param.h:52
port configuration enumeration as SPA_TYPE_OBJECT_ParamPortConfig
Definition: param.h:60
Definition: spa/include/spa/utils/type.h:97
configured format as SPA_TYPE_OBJECT_Format
Definition: param.h:54
latency reporting, a SPA_TYPE_OBJECT_ParamLatency
Definition: param.h:65
port configuration as SPA_TYPE_OBJECT_ParamPortConfig
Definition: param.h:61
Definition: spa/include/spa/utils/type.h:162
Definition: props.h:62
Definition: spa/include/spa/utils/type.h:95
Definition: spa/include/spa/utils/type.h:102
static const struct spa_type_info spa_type_prop_channel_map[]
Definition: param-types.h:86
routing enumeration as SPA_TYPE_OBJECT_ParamRoute
Definition: param.h:62
Definition: spa/include/spa/utils/type.h:104
available
Definition: param.h:102
static const struct spa_type_info spa_type_param_availability[]
Definition: param-types.h:113
Definition: spa/include/spa/utils/type.h:96
Definition: spa/include/spa/utils/type.h:101
Definition: spa/include/spa/utils/type.h:99
profile enumeration as SPA_TYPE_OBJECT_ParamProfile
Definition: param.h:58
Definition: spa/include/spa/utils/type.h:98
Definition: spa/include/spa/utils/type.h:56
configurable IO areas as SPA_TYPE_OBJECT_ParamIO
Definition: param.h:57
least significant bit
Definition: param.h:96
available formats as SPA_TYPE_OBJECT_Format
Definition: param.h:53
static const struct spa_type_info spa_type_param[]
Definition: param-types.h:52
unknown availability
Definition: param.h:100
static const struct spa_type_info spa_type_audio_channel[]
Definition: audio/raw-types.h:174
property information as SPA_TYPE_OBJECT_PropInfo
Definition: param.h:51
allowed metadata for buffers as SPA_TYPE_OBJECT_ParamMeta
Definition: param.h:56
Definition: spa/include/spa/utils/type.h:105
most significant bit
Definition: param.h:95
routing configuration as SPA_TYPE_OBJECT_ParamRoute
Definition: param.h:63
#define SPA_TYPE_INFO_PARAM_BITORDER_BASE
Definition: param-types.h:99
Control parameter, a SPA_TYPE_Sequence.
Definition: param.h:64
spa/param/format.h
not available
Definition: param.h:101
spa/param/props.h
static const struct spa_type_info spa_type_prop_float_array[]
Definition: param-types.h:81
#define SPA_TYPE_INFO_PARAM_ID_BASE
Definition: param-types.h:50
Definition: spa/include/spa/utils/type.h:53
buffer configurations as SPA_TYPE_OBJECT_ParamBuffers
Definition: param.h:55