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.

42 lines
930B

  1. /*
  2. ZynAddSubFX - a software synthesizer
  3. JackMultiEngine.h - Channeled Audio output JACK
  4. Copyright (C) 2012-2012 Mark McCurry
  5. Author: Mark McCurry
  6. This program is free software; you can redistribute it and/or
  7. modify it under the terms of the GNU General Public License
  8. as published by the Free Software Foundation; either version 2
  9. of the License, or (at your option) any later version.
  10. */
  11. #ifndef JACK_MULTI_ENGINE
  12. #define JACK_MULTI_ENGINE
  13. #include "AudioOut.h"
  14. namespace zyncarla {
  15. class JackMultiEngine:public AudioOut
  16. {
  17. public:
  18. JackMultiEngine(const SYNTH_T &synth);
  19. ~JackMultiEngine(void);
  20. void setAudioEn(bool nval);
  21. bool getAudioEn() const;
  22. bool Start(void);
  23. void Stop(void);
  24. private:
  25. static int _processCallback(unsigned nframes, void *arg);
  26. int processAudio(unsigned nframes);
  27. struct jack_multi *impl;
  28. };
  29. }
  30. #endif