DPF

DISTRHO Plugin Framework
Log | Files | Refs | Submodules | README | LICENSE

DistrhoPluginMain.cpp (2246B)


      1 /*
      2  * DISTRHO Plugin Framework (DPF)
      3  * Copyright (C) 2012-2024 Filipe Coelho <falktx@falktx.com>
      4  *
      5  * Permission to use, copy, modify, and/or distribute this software for any purpose with
      6  * or without fee is hereby granted, provided that the above copyright notice and this
      7  * permission notice appear in all copies.
      8  *
      9  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD
     10  * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN
     11  * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
     12  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER
     13  * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
     14  * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
     15  */
     16 
     17 #include "src/DistrhoPlugin.cpp"
     18 
     19 #if defined(DISTRHO_PLUGIN_TARGET_AU)
     20 # include "src/DistrhoPluginAU.cpp"
     21 #elif defined(DISTRHO_PLUGIN_TARGET_CARLA)
     22 # include "src/DistrhoPluginCarla.cpp"
     23 #elif defined(DISTRHO_PLUGIN_TARGET_CLAP)
     24 # include "src/DistrhoPluginCLAP.cpp"
     25 #elif defined(DISTRHO_PLUGIN_TARGET_JACK)
     26 # include "src/DistrhoPluginJACK.cpp"
     27 #elif (defined(DISTRHO_PLUGIN_TARGET_LADSPA) || defined(DISTRHO_PLUGIN_TARGET_DSSI))
     28 # include "src/DistrhoPluginLADSPA+DSSI.cpp"
     29 #elif defined(DISTRHO_PLUGIN_TARGET_LV2)
     30 # include "src/DistrhoPluginLV2.cpp"
     31 # include "src/DistrhoPluginLV2export.cpp"
     32 #elif defined(DISTRHO_PLUGIN_TARGET_VST2)
     33 # include "src/DistrhoPluginVST2.cpp"
     34 #elif defined(DISTRHO_PLUGIN_TARGET_VST3)
     35 # include "src/DistrhoPluginVST3.cpp"
     36 #elif defined(DISTRHO_PLUGIN_TARGET_EXPORT)
     37 # include "src/DistrhoPluginExport.cpp"
     38 #elif defined(DISTRHO_PLUGIN_TARGET_SHARED)
     39 DISTRHO_PLUGIN_EXPORT DISTRHO_NAMESPACE::Plugin* createSharedPlugin();
     40 DISTRHO_PLUGIN_EXPORT DISTRHO_NAMESPACE::Plugin* createSharedPlugin() { return DISTRHO_NAMESPACE::createPlugin(); }
     41 #elif defined(DISTRHO_PLUGIN_TARGET_STATIC)
     42 START_NAMESPACE_DISTRHO
     43 Plugin* createStaticPlugin() { return createPlugin(); }
     44 END_NAMESPACE_DISTRHO
     45 #else
     46 # error unsupported format
     47 #endif
     48 
     49 #if defined(DISTRHO_PLUGIN_TARGET_JACK)
     50 # define DISTRHO_IS_STANDALONE 1
     51 #else
     52 # define DISTRHO_IS_STANDALONE 0
     53 #endif
     54 #include "src/DistrhoUtils.cpp"