nongnu.org/gsequencer


gsequencer 7.0.5
Advanced Gtk+ Sequencer
ags_vst_parameters.h
Go to the documentation of this file.
1/* GSequencer - Advanced GTK Sequencer
2 * Copyright (C) 2005-2021 Joël Krähemann
3 *
4 * This file is part of GSequencer.
5 *
6 * GSequencer is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * GSequencer is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with GSequencer. If not, see <http://www.gnu.org/licenses/>.
18 */
19
20#ifndef __AGS_VST_PARAMETERS_H__
21#define __AGS_VST_PARAMETERS_H__
22
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
31 typedef struct AgsVstParameter Parameter;
32
33 typedef struct AgsVstRangeParameter RangeParameter;
34
35 typedef struct AgsVstStringListParameter StringListParameter;
36
37 typedef struct AgsVstParameterContainer ParameterContainer;
38
39 AgsVstParameter* ags_vst_parameter_new();
41 AgsVstParameter* ags_vst_parameter_new_full(gunichar2 *title, guint32 tag, gunichar2 *units,
42 gdouble default_value_normalized, gint32 step_count,
43 gint32 flags, gint32 unit_id,
44 gunichar2 *short_title);
45
46 void ags_vst_parameter_delete(AgsVstParameter *parameter);
47
48 AgsVstParameterInfo* ags_vst_parameter_get_info(AgsVstParameter *parameter);
49
50 void ags_vst_parameter_set_unit_id(AgsVstParameter *parameter,
51 gint32 id);
52 gint32 ags_vst_parameter_get_unit_id(AgsVstParameter *parameter);
53
54 gdouble ags_vst_parameter_get_normalized(AgsVstParameter *parameter);
55 gboolean ags_vst_parameter_set_normalized(AgsVstParameter *parameter,
56 gdouble v);
57
58 void ags_vst_parameter_to_string(AgsVstParameter *parameter,
59 gdouble value_normalized, AgsVstString128 string);
60 gboolean ags_vst_parameter_from_string(AgsVstParameter *parameter,
61 gunichar2 *string, gdouble *value_normalized);
62 gdouble ags_vst_parameter_to_plain(AgsVstParameter *parameter,
63 gdouble value_normalized);
64 gdouble ags_vst_parameter_to_normalized(AgsVstParameter *parameter,
65 gdouble plain_value);
66 gint32 ags_vst_parameter_get_precision(AgsVstParameter *parameter);
67 void ags_vst_parameter_set_precision(AgsVstParameter *parameter,
68 gint32 val);
69
70 AgsVstRangeParameter* ags_vst_range_parameter_new_with_info(AgsVstParameterInfo *param_info, gdouble min, gdouble max);
71 AgsVstRangeParameter* ags_vst_range_parameter_new_full(gunichar2 *title, guint32 tag, gunichar2 *units,
72 gdouble min_plain, gdouble max_plain,
73 gdouble default_value_plain, gint32 step_count,
74 gint32 flags, gint32 unit_id,
75 gunichar2 *short_title);
76
77 gdouble ags_vst_range_parameter_get_min(AgsVstRangeParameter *range_parameter);
78 void ags_vst_range_parameter_set_min(AgsVstRangeParameter *range_parameter,
79 gdouble value);
80 gdouble ags_vst_range_parameter_get_max(AgsVstRangeParameter *range_parameter);
81 void ags_vst_range_parameter_set_max(AgsVstRangeParameter *range_parameter,
82 gdouble value);
83
84 void ags_vst_range_parameter_to_string(AgsVstRangeParameter *range_parameter,
85 gdouble value_normalized, AgsVstString128 string);
86 gboolean ags_vst_range_parameter_from_string(AgsVstRangeParameter *range_parameter,
87 gunichar2 *string, gdouble *value_normalized);
88
89 gdouble ags_vst_range_parameter_to_plain(AgsVstRangeParameter *range_parameter,
90 gdouble value_normalized);
91 gdouble ags_vst_range_parameter_to_normalized(AgsVstRangeParameter *range_parameter,
92 gdouble plain_value);
93
94 AgsVstStringListParameter* ags_vst_string_list_parameter_new_with_info(AgsVstParameterInfo *param_info);
95 AgsVstStringListParameter* ags_vst_string_list_parameter_new_full(gunichar2 *title, guint32 tag, gunichar2 *units,
96 gint32 flags,
97 gint32 unit_id, gunichar2 *short_title);
98
99 void ags_vst_string_list_parameter_append_string(AgsVstStringListParameter *string_list_parameter,
100 AgsVstString128 string);
101 gboolean ags_vst_string_list_parameter_replace_string(AgsVstStringListParameter *string_list_parameter,
102 gint32 index, AgsVstString128 string);
103
104 void ags_vst_string_list_parameter_to_string(AgsVstStringListParameter *string_list_parameter,
105 gdouble value_normalized, AgsVstString128 string);
106 gboolean ags_vst_string_list_parameter_from_string(AgsVstStringListParameter *string_list_parameter,
107 gunichar2 *string, gdouble *_value_normalized);
108
109 gdouble ags_vst_string_list_parameter_to_plain(AgsVstStringListParameter *string_list_parameter,
110 gdouble value_normalized);
111 gdouble ags_vst_string_list_parameter_to_normalized(AgsVstStringListParameter *string_list_parameter,
112 gdouble plain_value);
113
114 AgsVstParameterContainer* ags_vst_parameter_container_new();
115
116 void ags_vst_parameter_container_init(AgsVstParameterContainer *parameter_container,
117 gint32 initial_size, gint32 resize_delta);
118
119 AgsVstParameter* ags_vst_parameter_container_add_parameter_with_info(AgsVstParameterContainer *parameter_container,
120 AgsVstParameterInfo *info);
121
122 AgsVstParameter* ags_vst_parameter_container_add_parameter_extended(AgsVstParameterContainer *parameter_container,
123 gunichar2 *title, gunichar2 *units, gint32 step_count,
124 gdouble default_value_normalized,
125 gint32 flags, gint32 tag,
126 gint32 unit_id, gunichar2 *short_title);
127
128 AgsVstParameter* ags_vst_parameter_container_add_parameter(AgsVstParameterContainer *parameter_container,
129 AgsVstParameter *p);
130
131 gint32 ags_vst_parameter_container_get_parameter_count(AgsVstParameterContainer *parameter_container);
132
133 AgsVstParameter* ags_vst_parameter_container_get_parameter_by_index(AgsVstParameterContainer *parameter_container,
134 gint32 index);
135
136 void ags_vst_parameter_container_remove_all(AgsVstParameterContainer *parameter_container);
137 AgsVstParameter* ags_vst_parameter_container_get_parameter(AgsVstParameterContainer *parameter_container,
138 guint32 tag);
139
140#ifdef __cplusplus
141}
142#endif
143
144#endif /*__AGS_VST_PARAMETERS_H__*/
struct ParameterInfo AgsVstParameterInfo
Definition ags_vst_iedit_controller.h:34
AgsVstParameter * ags_vst_parameter_container_add_parameter_extended(AgsVstParameterContainer *parameter_container, gunichar2 *title, gunichar2 *units, gint32 step_count, gdouble default_value_normalized, gint32 flags, gint32 tag, gint32 unit_id, gunichar2 *short_title)
Definition ags_vst_parameters.cpp:635
gint32 ags_vst_parameter_get_precision(AgsVstParameter *parameter)
Definition ags_vst_parameters.cpp:241
gdouble ags_vst_string_list_parameter_to_plain(AgsVstStringListParameter *string_list_parameter, gdouble value_normalized)
Definition ags_vst_parameters.cpp:552
gboolean ags_vst_string_list_parameter_replace_string(AgsVstStringListParameter *string_list_parameter, gint32 index, AgsVstString128 string)
Definition ags_vst_parameters.cpp:503
gdouble ags_vst_parameter_get_normalized(AgsVstParameter *parameter)
Definition ags_vst_parameters.cpp:149
AgsVstParameter * ags_vst_parameter_container_get_parameter_by_index(AgsVstParameterContainer *parameter_container, gint32 index)
Definition ags_vst_parameters.cpp:684
AgsVstParameterContainer * ags_vst_parameter_container_new()
Definition ags_vst_parameters.cpp:581
AgsVstRangeParameter * ags_vst_range_parameter_new_with_info(AgsVstParameterInfo *param_info, gdouble min, gdouble max)
Definition ags_vst_parameters.cpp:278
void ags_vst_string_list_parameter_append_string(AgsVstStringListParameter *string_list_parameter, AgsVstString128 string)
Definition ags_vst_parameters.cpp:487
struct AgsVstRangeParameter RangeParameter
Definition ags_vst_parameters.h:33
gdouble ags_vst_range_parameter_to_normalized(AgsVstRangeParameter *range_parameter, gdouble plain_value)
Definition ags_vst_parameters.cpp:426
gboolean ags_vst_range_parameter_from_string(AgsVstRangeParameter *range_parameter, gunichar2 *string, gdouble *value_normalized)
Definition ags_vst_parameters.cpp:396
void ags_vst_parameter_set_unit_id(AgsVstParameter *parameter, gint32 id)
Definition ags_vst_parameters.cpp:122
AgsVstStringListParameter * ags_vst_string_list_parameter_new_with_info(AgsVstParameterInfo *param_info)
Definition ags_vst_parameters.cpp:448
AgsVstParameter * ags_vst_parameter_container_get_parameter(AgsVstParameterContainer *parameter_container, guint32 tag)
Definition ags_vst_parameters.cpp:710
gint32 ags_vst_parameter_container_get_parameter_count(AgsVstParameterContainer *parameter_container)
Definition ags_vst_parameters.cpp:670
void ags_vst_string_list_parameter_to_string(AgsVstStringListParameter *string_list_parameter, gdouble value_normalized, AgsVstString128 string)
Definition ags_vst_parameters.cpp:518
AgsVstParameter * ags_vst_parameter_container_add_parameter(AgsVstParameterContainer *parameter_container, AgsVstParameter *p)
Definition ags_vst_parameters.cpp:656
gdouble ags_vst_string_list_parameter_to_normalized(AgsVstStringListParameter *string_list_parameter, gdouble plain_value)
Definition ags_vst_parameters.cpp:567
gdouble ags_vst_range_parameter_get_min(AgsVstRangeParameter *range_parameter)
Definition ags_vst_parameters.cpp:325
AgsVstRangeParameter * ags_vst_range_parameter_new_full(gunichar2 *title, guint32 tag, gunichar2 *units, gdouble min_plain, gdouble max_plain, gdouble default_value_plain, gint32 step_count, gint32 flags, gint32 unit_id, gunichar2 *short_title)
Definition ags_vst_parameters.cpp:304
struct AgsVstStringListParameter StringListParameter
Definition ags_vst_parameters.h:35
gboolean ags_vst_parameter_set_normalized(AgsVstParameter *parameter, gdouble v)
Definition ags_vst_parameters.cpp:163
void ags_vst_range_parameter_to_string(AgsVstRangeParameter *range_parameter, gdouble value_normalized, AgsVstString128 string)
Definition ags_vst_parameters.cpp:380
void ags_vst_range_parameter_set_min(AgsVstRangeParameter *range_parameter, gdouble value)
Definition ags_vst_parameters.cpp:338
AgsVstStringListParameter * ags_vst_string_list_parameter_new_full(gunichar2 *title, guint32 tag, gunichar2 *units, gint32 flags, gint32 unit_id, gunichar2 *short_title)
Definition ags_vst_parameters.cpp:470
AgsVstParameter * ags_vst_parameter_new_with_info(AgsVstParameterInfo *info)
Definition ags_vst_parameters.cpp:50
struct AgsVstParameter Parameter
Definition ags_vst_parameters.h:31
void ags_vst_parameter_container_init(AgsVstParameterContainer *parameter_container, gint32 initial_size, gint32 resize_delta)
Definition ags_vst_parameters.cpp:595
void ags_vst_parameter_container_remove_all(AgsVstParameterContainer *parameter_container)
Definition ags_vst_parameters.cpp:697
void ags_vst_parameter_set_precision(AgsVstParameter *parameter, gint32 val)
Definition ags_vst_parameters.cpp:254
gdouble ags_vst_parameter_to_plain(AgsVstParameter *parameter, gdouble value_normalized)
Definition ags_vst_parameters.cpp:212
gint32 ags_vst_parameter_get_unit_id(AgsVstParameter *parameter)
Definition ags_vst_parameters.cpp:136
gdouble ags_vst_parameter_to_normalized(AgsVstParameter *parameter, gdouble plain_value)
Definition ags_vst_parameters.cpp:227
void ags_vst_parameter_to_string(AgsVstParameter *parameter, gdouble value_normalized, AgsVstString128 string)
Definition ags_vst_parameters.cpp:178
AgsVstParameterInfo * ags_vst_parameter_get_info(AgsVstParameter *parameter)
Definition ags_vst_parameters.cpp:105
gdouble ags_vst_range_parameter_get_max(AgsVstRangeParameter *range_parameter)
Definition ags_vst_parameters.cpp:352
void ags_vst_parameter_delete(AgsVstParameter *parameter)
Definition ags_vst_parameters.cpp:92
AgsVstParameter * ags_vst_parameter_new_full(gunichar2 *title, guint32 tag, gunichar2 *units, gdouble default_value_normalized, gint32 step_count, gint32 flags, gint32 unit_id, gunichar2 *short_title)
Definition ags_vst_parameters.cpp:74
struct AgsVstParameterContainer ParameterContainer
Definition ags_vst_parameters.h:37
gboolean ags_vst_parameter_from_string(AgsVstParameter *parameter, gunichar2 *string, gdouble *value_normalized)
Definition ags_vst_parameters.cpp:194
void ags_vst_range_parameter_set_max(AgsVstRangeParameter *range_parameter, gdouble value)
Definition ags_vst_parameters.cpp:365
gdouble ags_vst_range_parameter_to_plain(AgsVstRangeParameter *range_parameter, gdouble value_normalized)
Definition ags_vst_parameters.cpp:411
gboolean ags_vst_string_list_parameter_from_string(AgsVstStringListParameter *string_list_parameter, gunichar2 *string, gdouble *_value_normalized)
Definition ags_vst_parameters.cpp:534
AgsVstParameter * ags_vst_parameter_new()
Definition ags_vst_parameters.cpp:36
AgsVstParameter * ags_vst_parameter_container_add_parameter_with_info(AgsVstParameterContainer *parameter_container, AgsVstParameterInfo *info)
Definition ags_vst_parameters.cpp:610
AgsVstTChar AgsVstString128[128]
Definition ags_vst_types.h:44