home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / SLAX 6.0.8 / slax-6.0.8.iso / slax / base / 006-devel.lzm / usr / include / arts / artsmodules.idl < prev    next >
Encoding:
Text File  |  2005-09-10  |  5.3 KB  |  187 lines

  1.     /*
  2.  
  3.     Copyright (C) 2000-2001 Stefan Westerfeld
  4.                             stefan@space.twc.de
  5.                   2001-2003 Matthias Kretz
  6.                             kretz@kde.org
  7.                        2002 Arnold Krille
  8.                             arnold@arnoldarts.de
  9.  
  10.     This library is free software; you can redistribute it and/or
  11.     modify it under the terms of the GNU Library General Public
  12.     License as published by the Free Software Foundation; either
  13.     version 2 of the License, or (at your option) any later version.
  14.   
  15.     This library is distributed in the hope that it will be useful,
  16.     but WITHOUT ANY WARRANTY; without even the implied warranty of
  17.     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  18.     Library General Public License for more details.
  19.  
  20.     You should have received a copy of the GNU Library General Public License
  21.     along with this library; see the file COPYING.LIB.  If not, write to
  22.     the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  23.     Boston, MA 02111-1307, USA.
  24.  
  25.     */
  26.  
  27. /*
  28.  * DISCLAIMER: The interfaces in artsmodules.idl (and the derived .cc/.h files)
  29.  *             DO NOT GUARANTEE BINARY COMPATIBILITY YET.
  30.  *
  31.  * They are intended for developers. You shouldn't expect that applications in
  32.  * binary form will be fully compatibile with further releases of these
  33.  * interfaces.
  34.  */
  35.  
  36. #include <artsflow.idl>
  37. #include <artsmidi.idl>
  38. #include <artsgui.idl>
  39.  
  40. #include <artsmodulescommon.idl>
  41. #include <artsmodulessynth.idl>
  42. #include <artsmoduleseffects.idl>
  43. #include <artsmodulesmixers.idl>
  44.  
  45. module Arts {
  46.  
  47. // EXPERIMENTAL ENVIRONMENT CODE:
  48. //
  49. //// moved to common
  50. //
  51. //module Environment {
  52. //    interface Context;
  53. //    interface Item;
  54. //    interface Container;
  55. //    interface InstrumentItem : Item;
  56. //    interface InstrumentItemGuiFactory : Arts::GuiFactory;
  57. //    interface StereoEffectItem : Item;
  58. //    interface MixerChannel : Arts::StereoEffect;
  59. //    interface MixerItem : Item;
  60. //    interface EffectRackItem : Item;
  61. //};
  62.  
  63. //// moved to mixers
  64. //
  65. //interface SimpleMixerChannel : Environment::MixerChannel;
  66. //interface MonoSimpleMixerChannel : Environment::MixerChannel;
  67. //interface Synth_AUX_BUS : SynthModule; {
  68.  
  69. //// moved to common
  70. //
  71. //// creates: Environment::MixerItem, SimpleMixerChannel
  72. //interface MixerGuiFactory : GuiFactory;
  73. //// creates: Environment::EffectRackItem
  74. //interface EffectRackGuiFactory : GuiFactory;
  75.  
  76. //// moved to mixers
  77. //
  78. //// creates: MonoSimpleMixerChannel
  79. //interface MonoSimpleMixerChannelGuiFactory : GuiFactory;
  80. //// creates: SimpleMixerChannel
  81. //interface SimpleMixerChannelGuiFactory : GuiFactory;
  82.  
  83. //// moved to common
  84. //
  85. //interface MixerItemGui;
  86.  
  87. //// moved to synth
  88. //
  89. //// EXPERIMENTAL MIDI
  90. //interface ObjectCache;
  91. //interface MidiReleaseHelper : SynthModule;
  92. //// END EXPERIMENTAL MIDI
  93.  
  94. //// moved to synth
  95. //
  96. //interface Synth_CAPTURE_WAV : SynthModule;
  97. //interface Synth_COMPRESSOR : SynthModule;
  98.  
  99. //// moved to effects
  100. //
  101. //interface Synth_STEREO_COMPRESSOR : StereoEffect;
  102. //interface StereoCompressorGuiFactory : GuiFactory;
  103.  
  104. //// moved to synth
  105. //
  106. //interface Synth_NIL : SynthModule;
  107. //interface Synth_DEBUG : SynthModule;
  108. //interface Synth_DATA : SynthModule;
  109. //interface Synth_ATAN_SATURATE : SynthModule;
  110.  
  111. //// moved to synth
  112. //
  113. //interface Synth_BRICKWALL_LIMITER : SynthModule;
  114. //interface Synth_AUTOPANNER : SynthModule;
  115. //interface Synth_DELAY : SynthModule;
  116. //interface Synth_CDELAY : SynthModule;
  117. //interface Synth_FM_SOURCE : SynthModule;
  118. //interface Synth_TREMOLO : SynthModule;
  119. //interface Synth_FX_CFLANGER : SynthModule;
  120. //interface Synth_NOISE : SynthModule;
  121. //interface Synth_WAVE_TRI : SynthModule;
  122. //interface Synth_WAVE_SQUARE : SynthModule;
  123. //interface Synth_WAVE_PULSE : SynthModule;
  124. //interface Synth_WAVE_SOFTSAW : SynthModule;
  125. //interface Synth_ENVELOPE_ADSR : SynthModule;
  126. //interface Synth_SHELVE_CUTOFF : SynthModule;
  127. //interface Synth_XFADE : SynthModule;
  128. //interface Synth_MIDI_TEST : SynthModule, MidiPort;
  129. //interface Synth_MIDI_DEBUG : SynthModule, MidiPort;
  130.  
  131. //// moved to effects
  132. //
  133. //interface Synth_FREEVERB : StereoEffect;
  134. //interface FreeverbGuiFactory : GuiFactory;
  135.  
  136. //// moved to synth
  137. //
  138. //interface Synth_STD_EQUALIZER : SynthModule;
  139. //interface Synth_RC : SynthModule;
  140. //interface Synth_MOOG_VCF : SynthModule;
  141. //interface Synth_PSCALE : SynthModule;
  142. //interface Synth_SEQUENCE : SynthModule;
  143. //interface Synth_PITCH_SHIFT : SynthModule;
  144. //interface Synth_PITCH_SHIFT_FFT : SynthModule;
  145.  
  146. //// moved to effects
  147. //
  148. //interface Synth_STEREO_PITCH_SHIFT : StereoEffect;
  149. //interface Synth_STEREO_PITCH_SHIFT_FFT : StereoEffect;
  150. //interface Effect_WAVECAPTURE : StereoEffect;
  151.  
  152. //// moved to effects
  153. //
  154. //interface Synth_STEREO_FIR_EQUALIZER : StereoEffect;
  155. //interface StereoFirEqualizerGuiFactory : GuiFactory;
  156.  
  157. //interface Synth_PLAY_PAT : SynthModule;
  158.  
  159. //// moved to synth
  160. //
  161. //enum SynthOscWaveForm;
  162. //interface Synth_OSC : SynthModule;
  163.  
  164. //// moved to common
  165. //
  166. //interface EffectRackSlot;
  167. //interface EffectRackItemGui;
  168.  
  169. //// moved to effects
  170. //
  171. //interface Synth_VOICE_REMOVAL : StereoEffect;
  172. //interface VoiceRemovalGuiFactory : GuiFactory;
  173.  
  174. /*----------------------------------------------------------------------------
  175.  * everything below this line is obsolete, but provided to help with porting
  176.  * old structures
  177.  */
  178. interface Interface_MIDI_NOTE : SynthModule {
  179.     out audio stream frequency,velocity,pressed;
  180. };
  181.  
  182. interface Synth_STRUCT_KILL : SynthModule {
  183.     in audio stream ready;
  184. };
  185.  
  186. };
  187.