![]() |
Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
|
Sender pipeline loop. More...
#include <roc_pipeline/sender_loop.h>

Classes | |
| class | Task |
| Base task class. More... | |
| class | Tasks |
| Subclasses for specific tasks. More... | |
Public Types | |
| typedef struct SlotHandle * | SlotHandle |
| Opaque slot handle. | |
Public Member Functions | |
| SenderLoop (IPipelineTaskScheduler &scheduler, const SenderSinkConfig &sink_config, const rtp::EncodingMap &encoding_map, core::IPool &packet_pool, core::IPool &packet_buffer_pool, core::IPool &frame_buffer_pool, core::IArena &arena) | |
| Initialize. | |
| bool | is_valid () const |
| Check if the pipeline was successfully constructed. | |
| sndio::ISink & | sink () |
| Get sender sink. | |
Public Member Functions inherited from roc::pipeline::PipelineLoop | |
| void | schedule (PipelineTask &task, IPipelineTaskCompleter &completer) |
| Enqueue a task for asynchronous execution. | |
| bool | schedule_and_wait (PipelineTask &task) |
| Enqueue a task for asynchronous execution and wait until it finishes. | |
| void | process_tasks () |
| Process some of the enqueued tasks, if any. | |
Additional Inherited Members | |
Protected Member Functions inherited from roc::pipeline::PipelineLoop | |
| PipelineLoop (IPipelineTaskScheduler &scheduler, const PipelineLoopConfig &config, const audio::SampleSpec &sample_spec) | |
| Initialization. | |
| size_t | num_pending_tasks () const |
| How much pending tasks are there. | |
| size_t | num_pending_frames () const |
| How much pending frames are there. | |
| const Stats & | get_stats_ref () const |
| Get task processing statistics. Returned object can't be accessed concurrently with other methods. | |
| bool | process_subframes_and_tasks (audio::Frame &frame) |
| Split frame and process subframes and some of the enqueued tasks. | |
Sender pipeline loop.
This class acts as a task-based facade for the sender pipeline subsystem of roc_pipeline module (SenderSink, SenderSlot, SenderEndpoint, SenderSession).
It provides two interfaces:
Definition at line 44 of file sender_loop.h.
| typedef struct SlotHandle* roc::pipeline::SenderLoop::SlotHandle |
Opaque slot handle.
Definition at line 47 of file sender_loop.h.
| roc::pipeline::SenderLoop::SenderLoop | ( | IPipelineTaskScheduler & | scheduler, |
| const SenderSinkConfig & | sink_config, | ||
| const rtp::EncodingMap & | encoding_map, | ||
| core::IPool & | packet_pool, | ||
| core::IPool & | packet_buffer_pool, | ||
| core::IPool & | frame_buffer_pool, | ||
| core::IArena & | arena | ||
| ) |
Initialize.
| bool roc::pipeline::SenderLoop::is_valid | ( | ) | const |
Check if the pipeline was successfully constructed.
| sndio::ISink & roc::pipeline::SenderLoop::sink | ( | ) |
Get sender sink.