gearmulator

Emulation of classic VA synths of the late 90s/2000s that are based on Motorola 56300 family DSPs
Log | Files | Refs | Submodules | README | LICENSE

BlockingStream.hxx (1120B)


      1 #ifndef INCLUDED_PORTAUDIO_BLOCKINGSTREAM_HXX
      2 #define INCLUDED_PORTAUDIO_BLOCKINGSTREAM_HXX
      3 
      4 // ---------------------------------------------------------------------------------------
      5 
      6 #include "portaudiocpp/Stream.hxx"
      7 
      8 // ---------------------------------------------------------------------------------------
      9 
     10 namespace portaudio
     11 {
     12 
     13 
     14 
     15 	//////
     16 	/// @brief Stream class for blocking read/write-style input and output.
     17 	//////
     18 	class BlockingStream : public Stream
     19 	{
     20 	public:
     21 		BlockingStream();
     22 		BlockingStream(const StreamParameters &parameters);
     23 		~BlockingStream();
     24 
     25 		void open(const StreamParameters &parameters);
     26 
     27 		void read(void *buffer, unsigned long numFrames);
     28 		void write(const void *buffer, unsigned long numFrames);
     29 
     30 		signed long availableReadSize() const;
     31 		signed long availableWriteSize() const;
     32 
     33 	private:
     34 		BlockingStream(const BlockingStream &); // non-copyable
     35 		BlockingStream &operator=(const BlockingStream &); // non-copyable
     36 	};
     37 
     38 
     39 
     40 } // portaudio
     41 
     42 // ---------------------------------------------------------------------------------------
     43 
     44 #endif // INCLUDED_PORTAUDIO_BLOCKINGSTREAM_HXX
     45