External plugins for Carla
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

86 lines
2.6KB

  1. /*
  2. * Carla Native Plugins
  3. * Copyright (C) 2012-2017 Filipe Coelho <falktx@falktx.com>
  4. *
  5. * This program is free software; you can redistribute it and/or
  6. * modify it under the terms of the GNU General Public License as
  7. * published by the Free Software Foundation; either version 2 of
  8. * the License, or any later version.
  9. *
  10. * This program is distributed in the hope that it will be useful,
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. * GNU General Public License for more details.
  14. *
  15. * For a full copy of the GNU General Public License see the doc/GPL.txt file.
  16. */
  17. // config fix
  18. #include "distrho-3bandeq/DistrhoPluginInfo.h"
  19. #if DISTRHO_PLUGIN_HAS_UI && ! defined(HAVE_DGL)
  20. # undef DISTRHO_PLUGIN_HAS_UI
  21. # define DISTRHO_PLUGIN_HAS_UI 0
  22. #endif
  23. #include "CarlaMathUtils.hpp"
  24. #include "CarlaJuceUtils.hpp"
  25. // Plugin Code
  26. #include "distrho-3bandeq/DistrhoArtwork3BandEQ.cpp"
  27. #include "distrho-3bandeq/DistrhoPlugin3BandEQ.cpp"
  28. #ifdef HAVE_DGL
  29. #include "distrho-3bandeq/DistrhoUI3BandEQ.cpp"
  30. #endif
  31. // DISTRHO Code
  32. #define DISTRHO_PLUGIN_TARGET_CARLA
  33. #include "DistrhoPluginMain.cpp"
  34. #ifdef HAVE_DGL
  35. #include "DistrhoUIMain.cpp"
  36. #endif
  37. START_NAMESPACE_DISTRHO
  38. // -----------------------------------------------------------------------
  39. static const NativePluginDescriptor _3bandeqDesc = {
  40. /* category */ NATIVE_PLUGIN_CATEGORY_EQ,
  41. #ifdef HAVE_DGL
  42. /* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_IS_RTSAFE
  43. |NATIVE_PLUGIN_HAS_UI
  44. |NATIVE_PLUGIN_NEEDS_UI_MAIN_THREAD
  45. |NATIVE_PLUGIN_USES_PARENT_ID),
  46. #else
  47. /* hints */ static_cast<NativePluginHints>(NATIVE_PLUGIN_IS_RTSAFE),
  48. #endif
  49. /* supports */ NATIVE_PLUGIN_SUPPORTS_NOTHING,
  50. /* audioIns */ DISTRHO_PLUGIN_NUM_INPUTS,
  51. /* audioOuts */ DISTRHO_PLUGIN_NUM_OUTPUTS,
  52. /* midiIns */ 0,
  53. /* midiOuts */ 0,
  54. /* paramIns */ DistrhoPlugin3BandEQ::paramCount,
  55. /* paramOuts */ 0,
  56. /* name */ DISTRHO_PLUGIN_NAME,
  57. /* label */ "3bandeq",
  58. /* maker */ "falkTX, Michael Gruhn",
  59. /* copyright */ "LGPL",
  60. PluginDescriptorFILL(PluginCarla)
  61. };
  62. END_NAMESPACE_DISTRHO
  63. // -----------------------------------------------------------------------
  64. CARLA_EXPORT
  65. void carla_register_native_plugin_distrho_3bandeq();
  66. CARLA_EXPORT
  67. void carla_register_native_plugin_distrho_3bandeq()
  68. {
  69. USE_NAMESPACE_DISTRHO
  70. carla_register_native_plugin(&_3bandeqDesc);
  71. }
  72. // -----------------------------------------------------------------------