/* Copyright (C) 2000-2001 Stefan Westerfeld stefan@space.twc.de 2001-2003 Matthias Kretz kretz@kde.org 2002 Arnold Krille arnold@arnoldarts.de This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* * DISCLAIMER: The interfaces in artsmodules.idl (and the derived .cc/.h files) * DO NOT GUARANTEE BINARY COMPATIBILITY YET. * * They are intended for developers. You shouldn't expect that applications in * binary form will be fully compatibile with further releases of these * interfaces. */ #include #include #include #include #include #include #include module Arts { // EXPERIMENTAL ENVIRONMENT CODE: // //// moved to common // //module Environment { // interface Context; // interface Item; // interface Container; // interface InstrumentItem : Item; // interface InstrumentItemGuiFactory : Arts::GuiFactory; // interface StereoEffectItem : Item; // interface MixerChannel : Arts::StereoEffect; // interface MixerItem : Item; // interface EffectRackItem : Item; //}; //// moved to mixers // //interface SimpleMixerChannel : Environment::MixerChannel; //interface MonoSimpleMixerChannel : Environment::MixerChannel; //interface Synth_AUX_BUS : SynthModule; { //// moved to common // //// creates: Environment::MixerItem, SimpleMixerChannel //interface MixerGuiFactory : GuiFactory; //// creates: Environment::EffectRackItem //interface EffectRackGuiFactory : GuiFactory; //// moved to mixers // //// creates: MonoSimpleMixerChannel //interface MonoSimpleMixerChannelGuiFactory : GuiFactory; //// creates: SimpleMixerChannel //interface SimpleMixerChannelGuiFactory : GuiFactory; //// moved to common // //interface MixerItemGui; //// moved to synth // //// EXPERIMENTAL MIDI //interface ObjectCache; //interface MidiReleaseHelper : SynthModule; //// END EXPERIMENTAL MIDI //// moved to synth // //interface Synth_CAPTURE_WAV : SynthModule; //interface Synth_COMPRESSOR : SynthModule; //// moved to effects // //interface Synth_STEREO_COMPRESSOR : StereoEffect; //interface StereoCompressorGuiFactory : GuiFactory; //// moved to synth // //interface Synth_NIL : SynthModule; //interface Synth_DEBUG : SynthModule; //interface Synth_DATA : SynthModule; //interface Synth_ATAN_SATURATE : SynthModule; //// moved to synth // //interface Synth_BRICKWALL_LIMITER : SynthModule; //interface Synth_AUTOPANNER : SynthModule; //interface Synth_DELAY : SynthModule; //interface Synth_CDELAY : SynthModule; //interface Synth_FM_SOURCE : SynthModule; //interface Synth_TREMOLO : SynthModule; //interface Synth_FX_CFLANGER : SynthModule; //interface Synth_NOISE : SynthModule; //interface Synth_WAVE_TRI : SynthModule; //interface Synth_WAVE_SQUARE : SynthModule; //interface Synth_WAVE_PULSE : SynthModule; //interface Synth_WAVE_SOFTSAW : SynthModule; //interface Synth_ENVELOPE_ADSR : SynthModule; //interface Synth_SHELVE_CUTOFF : SynthModule; //interface Synth_XFADE : SynthModule; //interface Synth_MIDI_TEST : SynthModule, MidiPort; //interface Synth_MIDI_DEBUG : SynthModule, MidiPort; //// moved to effects // //interface Synth_FREEVERB : StereoEffect; //interface FreeverbGuiFactory : GuiFactory; //// moved to synth // //interface Synth_STD_EQUALIZER : SynthModule; //interface Synth_RC : SynthModule; //interface Synth_MOOG_VCF : SynthModule; //interface Synth_PSCALE : SynthModule; //interface Synth_SEQUENCE : SynthModule; //interface Synth_PITCH_SHIFT : SynthModule; //interface Synth_PITCH_SHIFT_FFT : SynthModule; //// moved to effects // //interface Synth_STEREO_PITCH_SHIFT : StereoEffect; //interface Synth_STEREO_PITCH_SHIFT_FFT : StereoEffect; //interface Effect_WAVECAPTURE : StereoEffect; //// moved to effects // //interface Synth_STEREO_FIR_EQUALIZER : StereoEffect; //interface StereoFirEqualizerGuiFactory : GuiFactory; //interface Synth_PLAY_PAT : SynthModule; //// moved to synth // //enum SynthOscWaveForm; //interface Synth_OSC : SynthModule; //// moved to common // //interface EffectRackSlot; //interface EffectRackItemGui; //// moved to effects // //interface Synth_VOICE_REMOVAL : StereoEffect; //interface VoiceRemovalGuiFactory : GuiFactory; /*---------------------------------------------------------------------------- * everything below this line is obsolete, but provided to help with porting * old structures */ interface Interface_MIDI_NOTE : SynthModule { out audio stream frequency,velocity,pressed; }; interface Synth_STRUCT_KILL : SynthModule { in audio stream ready; }; };