1 /* descriptor.cpp 2 3 Computer Music Toolkit - a library of LADSPA plugins. Copyright (C) 4 2000 Richard W.E. Furse. The author may be contacted at 5 richard@muse.demon.co.uk. 6 7 This library is free software; you can redistribute it and/or 8 modify it under the terms of the GNU General Public Licence as 9 published by the Free Software Foundation; either version 2 of the 10 Licence, or (at your option) any later version. 11 12 This library is distributed in the hope that it will be useful, but 13 WITHOUT ANY WARRANTY; without even the implied warranty of 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 General Public License for more details. 16 17 You should have received a copy of the GNU General Public License 18 along with this library; if not, write to the Free Software 19 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 20 02111-1307, USA. */ 21 22 /*****************************************************************************/ 23 24 /* This module contains code providing and supporting the 25 CMT_Descriptor() function that provides hosts with initial access 26 to LADSPA plugins. ALL PLUGINS MUST BE REGISTERED IN THIS FILE (see 27 below). */ 28 29 /*****************************************************************************/ 30 31 /* Module Initialisation: 32 ---------------------- */ 33 34 void initialise_am(); 35 void initialise_ambisonic(); 36 void initialise_amp(); 37 void initialise_analogue(); 38 void initialise_canyondelay(); 39 void initialise_delay(); 40 void initialise_dynamic(); 41 void initialise_filter(); 42 void initialise_freeverb3(); 43 void initialise_grain(); 44 void initialise_lofi(); 45 void initialise_mixer(); 46 void initialise_noise(); 47 void initialise_null(); 48 void initialise_organ(); 49 void initialise_peak(); 50 void initialise_phasemod(); 51 void initialise_sine(); 52 void initialise_syndrum(); 53 void initialise_vcf303(); 54 void initialise_wshape_sine(); 55 namespace hardgate { void initialise(); } 56 namespace disintegrator { void initialise(); } 57 namespace pink { void initialise(); } 58 namespace pink_full { void initialise(); } 59 namespace pink_sh { void initialise(); } 60 namespace sledgehammer { void initialise(); } 61 namespace logistic { void initialise(); } 62 63 /** This function should initialise all modules in the library. This 64 will lead to all plugin descriptors being registered. If you write 65 a new plugin you should initialise it here. If the module has 66 structures it wishes to remove also then these should be included 67 in finalise_modules(). */ 68 void initialise_modules()69initialise_modules() { 70 initialise_am(); 71 initialise_ambisonic(); 72 initialise_amp(); 73 initialise_analogue(); 74 initialise_canyondelay(); 75 initialise_delay(); 76 initialise_dynamic(); 77 initialise_filter(); 78 initialise_freeverb3(); 79 initialise_grain(); 80 initialise_lofi(); 81 initialise_mixer(); 82 initialise_noise(); 83 initialise_null(); 84 initialise_organ(); 85 initialise_peak(); 86 initialise_phasemod(); 87 initialise_sine(); 88 initialise_syndrum(); 89 initialise_vcf303(); 90 initialise_wshape_sine(); 91 hardgate::initialise(); 92 disintegrator::initialise(); 93 pink::initialise(); 94 pink_full::initialise(); 95 pink_sh::initialise(); 96 sledgehammer::initialise(); 97 logistic::initialise(); 98 } 99 100 /*****************************************************************************/ 101 102 /* Module Finalisation: 103 -------------------- */ 104 105 void finalise_sine(); 106 107 /** Finalise any structures allocated by the modules. This does not 108 include descriptors passed to registerNewPluginDescriptor(). */ 109 void finalise_modules()110finalise_modules() { 111 finalise_sine(); 112 } 113 114 /*****************************************************************************/ 115 116 /* EOF */ 117