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

CFunCallbackStream.hxx (1553B)


      1 #ifndef INCLUDED_PORTAUDIO_CFUNCALLBACKSTREAM_HXX
      2 #define INCLUDED_PORTAUDIO_CFUNCALLBACKSTREAM_HXX
      3 
      4 // ---------------------------------------------------------------------------------------
      5 
      6 #include "portaudio.h"
      7 
      8 #include "portaudiocpp/CallbackStream.hxx"
      9 
     10 // ---------------------------------------------------------------------------------------
     11 
     12 // Forward declaration(s)
     13 namespace portaudio
     14 {
     15 	class StreamParameters;
     16 }
     17 
     18 // ---------------------------------------------------------------------------------------
     19 
     20 // Declaration(s):
     21 namespace portaudio
     22 {
     23 	// -----------------------------------------------------------------------------------
     24 
     25 	//////
     26 	/// @brief Callback stream using a free function with C linkage. It's important that the function 
     27 	/// the passed function pointer points to is declared ``extern "C"''.
     28 	//////
     29 	class CFunCallbackStream : public CallbackStream
     30 	{
     31 	public:
     32 		CFunCallbackStream();
     33 		CFunCallbackStream(const StreamParameters &parameters, PaStreamCallback *funPtr, void *userData);
     34 		~CFunCallbackStream();
     35 		
     36 		void open(const StreamParameters &parameters, PaStreamCallback *funPtr, void *userData);
     37 
     38 	private:
     39 		CFunCallbackStream(const CFunCallbackStream &); // non-copyable
     40 		CFunCallbackStream &operator=(const CFunCallbackStream &); // non-copyable
     41 	};
     42 
     43 	// -----------------------------------------------------------------------------------
     44 } // portaudio
     45 
     46 // ---------------------------------------------------------------------------------------
     47 
     48 #endif // INCLUDED_PORTAUDIO_MEMFUNCALLBACKSTREAM_HXX
     49