nongnu.org/gsequencer


gsequencer 7.0.5
Advanced Gtk+ Sequencer
ags_vst_audio_effect.h
Go to the documentation of this file.
1/* GSequencer - Advanced GTK Sequencer
2 * Copyright (C) 2005-2019 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_AUDIO_EFFECT_H__
21#define __AGS_VST_AUDIO_EFFECT_H__
22
23#include <glib.h>
24
28
29#ifdef __cplusplus
30extern "C" {
31#endif
32
33 typedef struct AgsVstAudioEffect AudioEffect;
34
35 AgsVstAudioEffect* ags_vst_audio_effect_new();
36
37 void ags_vst_audio_effect_delete(AgsVstAudioEffect *audio_effect);
38
39 AgsVstAudioBus* ags_vst_audio_effect_add_audio_input(AgsVstAudioEffect *audio_effect,
41 gint32 flags);
42
43 AgsVstAudioBus* ags_vst_audio_effect_add_audio_output(AgsVstAudioEffect *audio_effect,
45 gint32 flags);
46
47 AgsVstAudioBus* ags_vst_audio_effect_get_audio_input(AgsVstAudioEffect *audio_effect,
48 gint32 index);
49
50 AgsVstAudioBus* ags_vst_audio_effect_get_audio_output(AgsVstAudioEffect *audio_effect,
51 gint32 index);
52
53 AgsVstEventBus* ags_vst_audio_effect_add_event_input(AgsVstAudioEffect *audio_effect,
54 AgsVstTChar *name, gint32 channels, AgsVstBusType bus_type,
55 gint32 flags);
56 AgsVstEventBus* ags_vst_audio_effect_add_event_output(AgsVstAudioEffect *audio_effect,
57 AgsVstTChar *name, gint32 channels, AgsVstBusType bus_type,
58 gint32 flags);
59
60 AgsVstEventBus* ags_vst_audio_effect_get_event_input(AgsVstAudioEffect *audio_effect,
61 gint32 index);
62 AgsVstEventBus* ags_vst_audio_effect_get_event_output(AgsVstAudioEffect *audio_effect,
63 gint32 index);
64
65 gint32 ags_vst_audio_effect_set_bus_arrangements(AgsVstAudioEffect *audio_effect,
66 AgsVstSpeakerArrangement *inputs, gint32 num_ins,
67 AgsVstSpeakerArrangement *outputs, gint32 num_outs);
68
69 gint32 ags_vst_audio_effect_get_bus_arrangement(AgsVstAudioEffect *audio_effect,
70 AgsVstBusDirection bus_direction, gint32 bus_index,
72
73 gint32 ags_vst_audio_effect_can_process_sample_size(AgsVstAudioEffect *audio_effect,
74 gint32 symbolic_sample_size);
75
76 guint32 ags_vst_audio_effect_get_latency_samples(AgsVstAudioEffect *audio_effect);
77
78 gint32 ags_vst_audio_effect_setup_processing(AgsVstAudioEffect *audio_effect,
79 AgsVstProcessSetup *setup);
80
81 gint32 ags_vst_audio_effect_set_processing(AgsVstAudioEffect *audio_effect,
82 gboolean state);
83
84 gint32 ags_vst_audio_effect_process(AgsVstAudioEffect *audio_effect,
85 AgsVstProcessData *data);
86
87 guint32 ags_vst_audio_effect_get_tail_samples(AgsVstAudioEffect *audio_effect);
88
89#ifdef __cplusplus
90}
91#endif
92
93#endif /*__AGS_VST_AUDIO_EFFECT_H__*/
gint32 ags_vst_audio_effect_can_process_sample_size(AgsVstAudioEffect *audio_effect, gint32 symbolic_sample_size)
Definition ags_vst_audio_effect.cpp:242
gint32 ags_vst_audio_effect_set_bus_arrangements(AgsVstAudioEffect *audio_effect, AgsVstSpeakerArrangement *inputs, gint32 num_ins, AgsVstSpeakerArrangement *outputs, gint32 num_outs)
Definition ags_vst_audio_effect.cpp:203
AgsVstEventBus * ags_vst_audio_effect_get_event_input(AgsVstAudioEffect *audio_effect, gint32 index)
Definition ags_vst_audio_effect.cpp:170
AgsVstEventBus * ags_vst_audio_effect_add_event_output(AgsVstAudioEffect *audio_effect, AgsVstTChar *name, gint32 channels, AgsVstBusType bus_type, gint32 flags)
Definition ags_vst_audio_effect.cpp:153
AgsVstEventBus * ags_vst_audio_effect_get_event_output(AgsVstAudioEffect *audio_effect, gint32 index)
Definition ags_vst_audio_effect.cpp:185
gint32 ags_vst_audio_effect_process(AgsVstAudioEffect *audio_effect, AgsVstProcessData *data)
Definition ags_vst_audio_effect.cpp:304
guint32 ags_vst_audio_effect_get_latency_samples(AgsVstAudioEffect *audio_effect)
Definition ags_vst_audio_effect.cpp:256
void ags_vst_audio_effect_delete(AgsVstAudioEffect *audio_effect)
Definition ags_vst_audio_effect.cpp:46
AgsVstAudioBus * ags_vst_audio_effect_add_audio_output(AgsVstAudioEffect *audio_effect, AgsVstTChar *name, AgsVstSpeakerArrangement arr, AgsVstBusType bus_type, gint32 flags)
Definition ags_vst_audio_effect.cpp:83
gint32 ags_vst_audio_effect_set_processing(AgsVstAudioEffect *audio_effect, gboolean state)
Definition ags_vst_audio_effect.cpp:289
guint32 ags_vst_audio_effect_get_tail_samples(AgsVstAudioEffect *audio_effect)
Definition ags_vst_audio_effect.cpp:321
gint32 ags_vst_audio_effect_setup_processing(AgsVstAudioEffect *audio_effect, AgsVstProcessSetup *setup)
Definition ags_vst_audio_effect.cpp:271
AgsVstAudioBus * ags_vst_audio_effect_add_audio_input(AgsVstAudioEffect *audio_effect, AgsVstTChar *name, AgsVstSpeakerArrangement arr, AgsVstBusType bus_type, gint32 flags)
Definition ags_vst_audio_effect.cpp:63
AgsVstEventBus * ags_vst_audio_effect_add_event_input(AgsVstAudioEffect *audio_effect, AgsVstTChar *name, gint32 channels, AgsVstBusType bus_type, gint32 flags)
Definition ags_vst_audio_effect.cpp:133
AgsVstAudioBus * ags_vst_audio_effect_get_audio_output(AgsVstAudioEffect *audio_effect, gint32 index)
Definition ags_vst_audio_effect.cpp:115
gint32 ags_vst_audio_effect_get_bus_arrangement(AgsVstAudioEffect *audio_effect, AgsVstBusDirection bus_direction, gint32 bus_index, AgsVstSpeakerArrangement *arr)
Definition ags_vst_audio_effect.cpp:222
AgsVstAudioBus * ags_vst_audio_effect_get_audio_input(AgsVstAudioEffect *audio_effect, gint32 index)
Definition ags_vst_audio_effect.cpp:100
AgsVstAudioEffect * ags_vst_audio_effect_new()
Definition ags_vst_audio_effect.cpp:34
struct AgsVstAudioEffect AudioEffect
Definition ags_vst_audio_effect.h:33
struct ProcessSetup AgsVstProcessSetup
Definition ags_vst_iaudio_processor.h:36
struct ProcessData AgsVstProcessData
Definition ags_vst_iaudio_processor.h:38
long unsigned int AgsVstSpeakerArrangement
Definition ags_vst_types.h:70
gunichar2 AgsVstTChar
Definition ags_vst_types.h:43
gint32 AgsVstBusDirection
Definition ags_vst_types.h:47
gint32 AgsVstBusType
Definition ags_vst_types.h:48