Mercurial > hg > sv-dependency-builds
annotate src/portaudio_20140130/bindings/cpp/include/portaudiocpp/CallbackInterface.hxx @ 83:ae30d91d2ffe
Replace these with versions built using an older toolset (so as to avoid ABI compatibilities when linking on Ubuntu 14.04 for packaging purposes)
author | Chris Cannam |
---|---|
date | Fri, 07 Feb 2020 11:51:13 +0000 |
parents | 7ddb4fc30dac |
children |
rev | line source |
---|---|
Chris@39 | 1 #ifndef INCLUDED_PORTAUDIO_CALLBACKINTERFACE_HXX |
Chris@39 | 2 #define INCLUDED_PORTAUDIO_CALLBACKINTERFACE_HXX |
Chris@39 | 3 |
Chris@39 | 4 // --------------------------------------------------------------------------------------- |
Chris@39 | 5 |
Chris@39 | 6 #include "portaudio.h" |
Chris@39 | 7 |
Chris@39 | 8 // --------------------------------------------------------------------------------------- |
Chris@39 | 9 |
Chris@39 | 10 namespace portaudio |
Chris@39 | 11 { |
Chris@39 | 12 // ----------------------------------------------------------------------------------- |
Chris@39 | 13 |
Chris@39 | 14 ////// |
Chris@39 | 15 /// @brief Interface for an object that's callable as a PortAudioCpp callback object (ie that implements the |
Chris@39 | 16 /// paCallbackFun method). |
Chris@39 | 17 ////// |
Chris@39 | 18 class CallbackInterface |
Chris@39 | 19 { |
Chris@39 | 20 public: |
Chris@39 | 21 virtual ~CallbackInterface() {} |
Chris@39 | 22 |
Chris@39 | 23 virtual int paCallbackFun(const void *inputBuffer, void *outputBuffer, unsigned long numFrames, |
Chris@39 | 24 const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags) = 0; |
Chris@39 | 25 }; |
Chris@39 | 26 |
Chris@39 | 27 // ----------------------------------------------------------------------------------- |
Chris@39 | 28 |
Chris@39 | 29 namespace impl |
Chris@39 | 30 { |
Chris@39 | 31 extern "C" |
Chris@39 | 32 { |
Chris@39 | 33 int callbackInterfaceToPaCallbackAdapter(const void *inputBuffer, void *outputBuffer, unsigned long numFrames, |
Chris@39 | 34 const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags, |
Chris@39 | 35 void *userData); |
Chris@39 | 36 } // extern "C" |
Chris@39 | 37 } |
Chris@39 | 38 |
Chris@39 | 39 // ----------------------------------------------------------------------------------- |
Chris@39 | 40 |
Chris@39 | 41 } // namespace portaudio |
Chris@39 | 42 |
Chris@39 | 43 // --------------------------------------------------------------------------------------- |
Chris@39 | 44 |
Chris@39 | 45 #endif // INCLUDED_PORTAUDIO_CALLBACKINTERFACE_HXX |