cannam@89
|
1 #include "portaudiocpp/CallbackInterface.hxx"
|
cannam@89
|
2
|
cannam@89
|
3 namespace portaudio
|
cannam@89
|
4 {
|
cannam@89
|
5
|
cannam@89
|
6 namespace impl
|
cannam@89
|
7 {
|
cannam@89
|
8
|
cannam@89
|
9 //////
|
cannam@89
|
10 /// Adapts any CallbackInterface object to a C-callable function (ie this function). A
|
cannam@89
|
11 /// pointer to the object should be passed as ``userData'' when setting up the callback.
|
cannam@89
|
12 //////
|
cannam@89
|
13 int callbackInterfaceToPaCallbackAdapter(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
|
cannam@89
|
14 const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags, void *userData)
|
cannam@89
|
15 {
|
cannam@89
|
16 CallbackInterface *cb = static_cast<CallbackInterface *>(userData);
|
cannam@89
|
17 return cb->paCallbackFun(inputBuffer, outputBuffer, numFrames, timeInfo, statusFlags);
|
cannam@89
|
18 }
|
cannam@89
|
19
|
cannam@89
|
20
|
cannam@89
|
21 } // namespace impl
|
cannam@89
|
22
|
cannam@89
|
23 } // namespace portaudio
|
cannam@89
|
24
|
cannam@89
|
25
|