Mercurial > hg > sv-dependency-builds
view src/portaudio/bindings/cpp/source/portaudiocpp/InterfaceCallbackStream.cxx @ 118:a8541380d3e0
Ah, we've already done this. Merge, taking everything from the branch with the older commits.
author | Chris Cannam <cannam@all-day-breakfast.com> |
---|---|
date | Fri, 04 Jul 2014 10:37:37 +0100 |
parents | 8a15ff55d9af |
children |
line wrap: on
line source
#include "portaudiocpp/InterfaceCallbackStream.hxx" #include "portaudiocpp/StreamParameters.hxx" #include "portaudiocpp/Exception.hxx" #include "portaudiocpp/CallbackInterface.hxx" namespace portaudio { // ---------------------------------------------------------------------------------== InterfaceCallbackStream::InterfaceCallbackStream() { } InterfaceCallbackStream::InterfaceCallbackStream(const StreamParameters ¶meters, CallbackInterface &instance) { open(parameters, instance); } InterfaceCallbackStream::~InterfaceCallbackStream() { try { close(); } catch (...) { // ignore all errors } } // ---------------------------------------------------------------------------------== void InterfaceCallbackStream::open(const StreamParameters ¶meters, CallbackInterface &instance) { PaError err = Pa_OpenStream(&stream_, parameters.inputParameters().paStreamParameters(), parameters.outputParameters().paStreamParameters(), parameters.sampleRate(), parameters.framesPerBuffer(), parameters.flags(), &impl::callbackInterfaceToPaCallbackAdapter, static_cast<void *>(&instance)); if (err != paNoError) { throw PaException(err); } } }