Archived
1
Fork 0
This repository has been archived on 2025-04-12. You can view files and clone it, but cannot push or open issues or pull requests.
prism/extern/portaudio/bindings/cpp/include/portaudiocpp/InterfaceCallbackStream.hxx
2020-08-11 12:07:21 -04:00

49 lines
1.3 KiB
C++

#ifndef INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX
#define INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/CallbackStream.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s)
namespace portaudio
{
class StreamParameters;
class CallbackInterface;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief Callback stream using an instance of an object that's derived from the CallbackInterface
/// interface.
//////
class InterfaceCallbackStream : public CallbackStream
{
public:
InterfaceCallbackStream();
InterfaceCallbackStream(const StreamParameters &parameters, CallbackInterface &instance);
~InterfaceCallbackStream();
void open(const StreamParameters &parameters, CallbackInterface &instance);
private:
InterfaceCallbackStream(const InterfaceCallbackStream &); // non-copyable
InterfaceCallbackStream &operator=(const InterfaceCallbackStream &); // non-copyable
};
} // portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX