49 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
		
		
			
		
	
	
			49 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
|   | #ifndef INCLUDED_PORTAUDIO_CFUNCALLBACKSTREAM_HXX
 | ||
|  | #define INCLUDED_PORTAUDIO_CFUNCALLBACKSTREAM_HXX
 | ||
|  | 
 | ||
|  | // ---------------------------------------------------------------------------------------
 | ||
|  | 
 | ||
|  | #include "portaudio.h"
 | ||
|  | 
 | ||
|  | #include "portaudiocpp/CallbackStream.hxx"
 | ||
|  | 
 | ||
|  | // ---------------------------------------------------------------------------------------
 | ||
|  | 
 | ||
|  | // Forward declaration(s)
 | ||
|  | namespace portaudio | ||
|  | { | ||
|  |     class StreamParameters; | ||
|  | } | ||
|  | 
 | ||
|  | // ---------------------------------------------------------------------------------------
 | ||
|  | 
 | ||
|  | // Declaration(s):
 | ||
|  | namespace portaudio | ||
|  | { | ||
|  |     // -----------------------------------------------------------------------------------
 | ||
|  | 
 | ||
|  |     //////
 | ||
|  |     /// @brief Callback stream using a free function with C linkage. It's important that the function
 | ||
|  |     /// the passed function pointer points to is declared ``extern "C"''.
 | ||
|  |     //////
 | ||
|  |     class CFunCallbackStream : public CallbackStream | ||
|  |     { | ||
|  |     public: | ||
|  |         CFunCallbackStream(); | ||
|  |         CFunCallbackStream(const StreamParameters ¶meters, PaStreamCallback *funPtr, void *userData); | ||
|  |         ~CFunCallbackStream(); | ||
|  | 
 | ||
|  |         void open(const StreamParameters ¶meters, PaStreamCallback *funPtr, void *userData); | ||
|  | 
 | ||
|  |     private: | ||
|  |         CFunCallbackStream(const CFunCallbackStream &); // non-copyable
 | ||
|  |         CFunCallbackStream &operator=(const CFunCallbackStream &); // non-copyable
 | ||
|  |     }; | ||
|  | 
 | ||
|  |     // -----------------------------------------------------------------------------------
 | ||
|  | } // portaudio
 | ||
|  | 
 | ||
|  | // ---------------------------------------------------------------------------------------
 | ||
|  | 
 | ||
|  | #endif // INCLUDED_PORTAUDIO_MEMFUNCALLBACKSTREAM_HXX
 |