cannam@89: #include "portaudiocpp/CallbackInterface.hxx" cannam@89: cannam@89: namespace portaudio cannam@89: { cannam@89: cannam@89: namespace impl cannam@89: { cannam@89: cannam@89: ////// cannam@89: /// Adapts any CallbackInterface object to a C-callable function (ie this function). A cannam@89: /// pointer to the object should be passed as ``userData'' when setting up the callback. cannam@89: ////// cannam@89: int callbackInterfaceToPaCallbackAdapter(const void *inputBuffer, void *outputBuffer, unsigned long numFrames, cannam@89: const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags, void *userData) cannam@89: { cannam@89: CallbackInterface *cb = static_cast(userData); cannam@89: return cb->paCallbackFun(inputBuffer, outputBuffer, numFrames, timeInfo, statusFlags); cannam@89: } cannam@89: cannam@89: cannam@89: } // namespace impl cannam@89: cannam@89: } // namespace portaudio cannam@89: cannam@89: