Mercurial > hg > sv-dependency-builds
annotate src/portaudio_20161030/bindings/cpp/include/portaudiocpp/CFunCallbackStream.hxx @ 140:59a8758c56b1
Add source for PortAudio stable v190600_20161030
author | Chris Cannam <cannam@all-day-breakfast.com> |
---|---|
date | Tue, 03 Jan 2017 13:44:07 +0000 |
parents | |
children |
rev | line source |
---|---|
cannam@140 | 1 #ifndef INCLUDED_PORTAUDIO_CFUNCALLBACKSTREAM_HXX |
cannam@140 | 2 #define INCLUDED_PORTAUDIO_CFUNCALLBACKSTREAM_HXX |
cannam@140 | 3 |
cannam@140 | 4 // --------------------------------------------------------------------------------------- |
cannam@140 | 5 |
cannam@140 | 6 #include "portaudio.h" |
cannam@140 | 7 |
cannam@140 | 8 #include "portaudiocpp/CallbackStream.hxx" |
cannam@140 | 9 |
cannam@140 | 10 // --------------------------------------------------------------------------------------- |
cannam@140 | 11 |
cannam@140 | 12 // Forward declaration(s) |
cannam@140 | 13 namespace portaudio |
cannam@140 | 14 { |
cannam@140 | 15 class StreamParameters; |
cannam@140 | 16 } |
cannam@140 | 17 |
cannam@140 | 18 // --------------------------------------------------------------------------------------- |
cannam@140 | 19 |
cannam@140 | 20 // Declaration(s): |
cannam@140 | 21 namespace portaudio |
cannam@140 | 22 { |
cannam@140 | 23 // ----------------------------------------------------------------------------------- |
cannam@140 | 24 |
cannam@140 | 25 ////// |
cannam@140 | 26 /// @brief Callback stream using a free function with C linkage. It's important that the function |
cannam@140 | 27 /// the passed function pointer points to is declared ``extern "C"''. |
cannam@140 | 28 ////// |
cannam@140 | 29 class CFunCallbackStream : public CallbackStream |
cannam@140 | 30 { |
cannam@140 | 31 public: |
cannam@140 | 32 CFunCallbackStream(); |
cannam@140 | 33 CFunCallbackStream(const StreamParameters ¶meters, PaStreamCallback *funPtr, void *userData); |
cannam@140 | 34 ~CFunCallbackStream(); |
cannam@140 | 35 |
cannam@140 | 36 void open(const StreamParameters ¶meters, PaStreamCallback *funPtr, void *userData); |
cannam@140 | 37 |
cannam@140 | 38 private: |
cannam@140 | 39 CFunCallbackStream(const CFunCallbackStream &); // non-copyable |
cannam@140 | 40 CFunCallbackStream &operator=(const CFunCallbackStream &); // non-copyable |
cannam@140 | 41 }; |
cannam@140 | 42 |
cannam@140 | 43 // ----------------------------------------------------------------------------------- |
cannam@140 | 44 } // portaudio |
cannam@140 | 45 |
cannam@140 | 46 // --------------------------------------------------------------------------------------- |
cannam@140 | 47 |
cannam@140 | 48 #endif // INCLUDED_PORTAUDIO_MEMFUNCALLBACKSTREAM_HXX |
cannam@140 | 49 |