50 lines
1.3 KiB
C++
50 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 ¶meters, CallbackInterface &instance);
|
|
~InterfaceCallbackStream();
|
|
|
|
void open(const StreamParameters ¶meters, CallbackInterface &instance);
|
|
|
|
private:
|
|
InterfaceCallbackStream(const InterfaceCallbackStream &); // non-copyable
|
|
InterfaceCallbackStream &operator=(const InterfaceCallbackStream &); // non-copyable
|
|
};
|
|
|
|
|
|
} // portaudio
|
|
|
|
// ---------------------------------------------------------------------------------------
|
|
|
|
#endif // INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX
|