cannam@124: #ifndef INCLUDED_PORTAUDIO_CALLBACKSTREAM_HXX cannam@124: #define INCLUDED_PORTAUDIO_CALLBACKSTREAM_HXX cannam@124: cannam@124: // --------------------------------------------------------------------------------------- cannam@124: cannam@124: #include "portaudio.h" cannam@124: cannam@124: #include "portaudiocpp/Stream.hxx" cannam@124: cannam@124: // --------------------------------------------------------------------------------------- cannam@124: cannam@124: // Declaration(s): cannam@124: namespace portaudio cannam@124: { cannam@124: cannam@124: cannam@124: ////// cannam@124: /// @brief Base class for all Streams which use a callback-based mechanism. cannam@124: ////// cannam@124: class CallbackStream : public Stream cannam@124: { cannam@124: protected: cannam@124: CallbackStream(); cannam@124: virtual ~CallbackStream(); cannam@124: cannam@124: public: cannam@124: // stream info (time-varying) cannam@124: double cpuLoad() const; cannam@124: cannam@124: private: cannam@124: CallbackStream(const CallbackStream &); // non-copyable cannam@124: CallbackStream &operator=(const CallbackStream &); // non-copyable cannam@124: }; cannam@124: cannam@124: cannam@124: } // namespace portaudio cannam@124: cannam@124: // --------------------------------------------------------------------------------------- cannam@124: cannam@124: #endif // INCLUDED_PORTAUDIO_CALLBACKSTREAM_HXX