annotate src/portaudio_20140130/bindings/cpp/include/portaudiocpp/CallbackInterface.hxx @ 39:7ddb4fc30dac

Current stable PortAudio source
author Chris Cannam
date Tue, 18 Oct 2016 13:11:05 +0100
parents
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