#ifndef INCLUDED_PORTAUDIO_BLOCKINGSTREAM_HXX #define INCLUDED_PORTAUDIO_BLOCKINGSTREAM_HXX // --------------------------------------------------------------------------------------- #include "portaudiocpp/Stream.hxx" // --------------------------------------------------------------------------------------- namespace portaudio { ////// /// @brief Stream class for blocking read/write-style input and output. ////// class BlockingStream : public Stream { public: BlockingStream(); BlockingStream(const StreamParameters ¶meters); ~BlockingStream(); void open(const StreamParameters ¶meters); void read(void *buffer, unsigned long numFrames); void write(const void *buffer, unsigned long numFrames); signed long availableReadSize() const; signed long availableWriteSize() const; private: BlockingStream(const BlockingStream &); // non-copyable BlockingStream &operator=(const BlockingStream &); // non-copyable }; } // portaudio // --------------------------------------------------------------------------------------- #endif // INCLUDED_PORTAUDIO_BLOCKINGSTREAM_HXX