DISTRHO Plugin Framework
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.

90 lines
2.0KB

  1. /*
  2. * DISTRHO Plugin Framework (DPF)
  3. * Copyright (C) 2012-2019 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. #include "DistrhoPlugin.hpp"
  17. #include <string.h>
  18. START_NAMESPACE_DISTRHO
  19. class CairoExamplePlugin : public Plugin
  20. {
  21. public:
  22. CairoExamplePlugin()
  23. : Plugin(0, 0, 0)
  24. {
  25. }
  26. const char* getLabel() const
  27. {
  28. return "Cairo DPF Example";
  29. }
  30. const char* getMaker() const
  31. {
  32. return "Jean Pierre Cimalando";
  33. }
  34. const char* getLicense() const
  35. {
  36. return "ISC";
  37. }
  38. uint32_t getVersion() const
  39. {
  40. return 0;
  41. }
  42. int64_t getUniqueId() const
  43. {
  44. return 0;
  45. }
  46. void initParameter(uint32_t index, Parameter& parameter)
  47. {
  48. // unused
  49. (void)index;
  50. (void)parameter;
  51. }
  52. float getParameterValue(uint32_t index) const
  53. {
  54. return 0;
  55. // unused
  56. (void)index;
  57. }
  58. void setParameterValue(uint32_t index, float value)
  59. {
  60. // unused
  61. (void)index;
  62. (void)value;
  63. }
  64. void run(const float** inputs, float** outputs, uint32_t frames)
  65. {
  66. memcpy(outputs[0], inputs[0], frames * sizeof(float));
  67. }
  68. };
  69. Plugin* createPlugin()
  70. {
  71. return new CairoExamplePlugin;
  72. }
  73. END_NAMESPACE_DISTRHO