Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
Loading...
Searching...
No Matches
roc::sndio::IDevice Class Referenceabstract

Base interface for sinks and sources. More...

#include <idevice.h>

Inheritance diagram for roc::sndio::IDevice:
roc::sndio::ISink roc::sndio::ISource roc::pipeline::SenderLoop roc::pipeline::SenderSink roc::pipeline::TranscoderSink roc::sndio::PulseaudioSink roc::sndio::SoxSink roc::pipeline::ReceiverLoop roc::pipeline::ReceiverSource roc::pipeline::TranscoderSource roc::sndio::PulseaudioSource roc::sndio::SoxSource

Public Member Functions

virtual DeviceType type () const =0
 Get device type.
 
virtual DeviceState state () const =0
 Get device state.
 
virtual void pause ()=0
 Pause device.
 
virtual bool resume ()=0
 Resume device after pause.
 
virtual bool restart ()=0
 Restart device.
 
virtual audio::SampleSpec sample_spec () const =0
 Get sample specification of the device.
 
virtual core::nanoseconds_t latency () const =0
 Get latency of the device.
 
virtual bool has_latency () const =0
 Check if the device supports latency reports.
 
virtual bool has_clock () const =0
 Check if the device has own clock.
 

Detailed Description

Base interface for sinks and sources.

Definition at line 25 of file idevice.h.

Member Function Documentation

◆ has_clock()

◆ has_latency()

virtual bool roc::sndio::IDevice::has_latency ( ) const
pure virtual

◆ latency()

◆ pause()

◆ restart()

virtual bool roc::sndio::IDevice::restart ( )
pure virtual

Restart device.

Remarks
If device was paused, it's automatically resumed.
Returns
false if an error occured.

Implemented in roc::pipeline::ReceiverSource, roc::pipeline::SenderSink, roc::pipeline::TranscoderSink, roc::pipeline::TranscoderSource, roc::sndio::PulseaudioSink, roc::sndio::PulseaudioSource, roc::sndio::SoxSink, and roc::sndio::SoxSource.

◆ resume()

virtual bool roc::sndio::IDevice::resume ( )
pure virtual

◆ sample_spec()

◆ state()

◆ type()


The documentation for this class was generated from the following file: