summaryrefslogtreecommitdiff
path: root/portaudio/bindings/cpp/include/portaudiocpp/Stream.hxx
diff options
context:
space:
mode:
authorsanine <sanine.not@pm.me>2022-08-27 23:52:56 -0500
committersanine <sanine.not@pm.me>2022-08-27 23:52:56 -0500
commita4dd0ad63c00f4dee3b86dfd3075d1d61b2b3180 (patch)
tree13bd5bfa15e6fea2a12f176bae79adf9c6fd0933 /portaudio/bindings/cpp/include/portaudiocpp/Stream.hxx
parentbde3e4f1bb7b8f8abca0884a7d994ee1c17a66b1 (diff)
add plibsys
Diffstat (limited to 'portaudio/bindings/cpp/include/portaudiocpp/Stream.hxx')
-rw-r--r--portaudio/bindings/cpp/include/portaudiocpp/Stream.hxx82
1 files changed, 0 insertions, 82 deletions
diff --git a/portaudio/bindings/cpp/include/portaudiocpp/Stream.hxx b/portaudio/bindings/cpp/include/portaudiocpp/Stream.hxx
deleted file mode 100644
index a731930..0000000
--- a/portaudio/bindings/cpp/include/portaudiocpp/Stream.hxx
+++ /dev/null
@@ -1,82 +0,0 @@
-#ifndef INCLUDED_PORTAUDIO_STREAM_HXX
-#define INCLUDED_PORTAUDIO_STREAM_HXX
-
-#include "portaudio.h"
-
-// ---------------------------------------------------------------------------------------
-
-// Forward declaration(s):
-namespace portaudio
-{
- class StreamParameters;
-}
-
-// ---------------------------------------------------------------------------------------
-
-// Declaration(s):
-namespace portaudio
-{
-
-
- //////
- /// @brief A Stream represents an active or inactive input and/or output data
- /// stream in the System.
- ///
- /// Concrete Stream classes should ensure themselves being in a closed state at
- /// destruction (i.e. by calling their own close() method in their deconstructor).
- /// Following good C++ programming practices, care must be taken to ensure no
- /// exceptions are thrown by the deconstructor of these classes. As a consequence,
- /// clients need to explicitly call close() to ensure the stream closed successfully.
- ///
- /// The Stream object can be used to manipulate the Stream's state. Also, time-constant
- /// and time-varying information about the Stream can be retrieved.
- //////
- class Stream
- {
- public:
- // Opening/closing:
- virtual ~Stream();
-
- virtual void close();
- bool isOpen() const;
-
- // Additional set up:
- void setStreamFinishedCallback(PaStreamFinishedCallback *callback);
-
- // State management:
- void start();
- void stop();
- void abort();
-
- bool isStopped() const;
- bool isActive() const;
-
- // Stream info (time-constant, but might become time-variant soon):
- PaTime inputLatency() const;
- PaTime outputLatency() const;
- double sampleRate() const;
-
- // Stream info (time-varying):
- PaTime time() const;
-
- // Accessors for PortAudio PaStream, useful for interfacing
- // with PortAudio add-ons (such as PortMixer) for instance:
- const PaStream *paStream() const;
- PaStream *paStream();
-
- protected:
- Stream(); // abstract class
-
- PaStream *stream_;
-
- private:
- Stream(const Stream &); // non-copyable
- Stream &operator=(const Stream &); // non-copyable
- };
-
-
-} // namespace portaudio
-
-
-#endif // INCLUDED_PORTAUDIO_STREAM_HXX
-