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