Chris@4
|
1 #ifndef INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX
|
Chris@4
|
2 #define INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX
|
Chris@4
|
3
|
Chris@4
|
4 // ---------------------------------------------------------------------------------------
|
Chris@4
|
5
|
Chris@4
|
6 #include "portaudio.h"
|
Chris@4
|
7
|
Chris@4
|
8 #include "portaudiocpp/CallbackStream.hxx"
|
Chris@4
|
9
|
Chris@4
|
10 // ---------------------------------------------------------------------------------------
|
Chris@4
|
11
|
Chris@4
|
12 // Forward declaration(s)
|
Chris@4
|
13 namespace portaudio
|
Chris@4
|
14 {
|
Chris@4
|
15 class StreamParameters;
|
Chris@4
|
16 class CallbackInterface;
|
Chris@4
|
17 }
|
Chris@4
|
18
|
Chris@4
|
19 // ---------------------------------------------------------------------------------------
|
Chris@4
|
20
|
Chris@4
|
21 // Declaration(s):
|
Chris@4
|
22 namespace portaudio
|
Chris@4
|
23 {
|
Chris@4
|
24
|
Chris@4
|
25
|
Chris@4
|
26 //////
|
Chris@4
|
27 /// @brief Callback stream using an instance of an object that's derived from the CallbackInterface
|
Chris@4
|
28 /// interface.
|
Chris@4
|
29 //////
|
Chris@4
|
30 class InterfaceCallbackStream : public CallbackStream
|
Chris@4
|
31 {
|
Chris@4
|
32 public:
|
Chris@4
|
33 InterfaceCallbackStream();
|
Chris@4
|
34 InterfaceCallbackStream(const StreamParameters ¶meters, CallbackInterface &instance);
|
Chris@4
|
35 ~InterfaceCallbackStream();
|
Chris@4
|
36
|
Chris@4
|
37 void open(const StreamParameters ¶meters, CallbackInterface &instance);
|
Chris@4
|
38
|
Chris@4
|
39 private:
|
Chris@4
|
40 InterfaceCallbackStream(const InterfaceCallbackStream &); // non-copyable
|
Chris@4
|
41 InterfaceCallbackStream &operator=(const InterfaceCallbackStream &); // non-copyable
|
Chris@4
|
42 };
|
Chris@4
|
43
|
Chris@4
|
44
|
Chris@4
|
45 } // portaudio
|
Chris@4
|
46
|
Chris@4
|
47 // ---------------------------------------------------------------------------------------
|
Chris@4
|
48
|
Chris@4
|
49 #endif // INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX
|