28 #ifndef ASYNC_AUDIO_SPLITTER_INCLUDED 29 #define ASYNC_AUDIO_SPLITTER_INCLUDED 39 #include <sigc++/sigc++.h> 118 public sigc::trackable
187 std::list<Branch *> branches;
193 int flushed_branches;
196 void writeFromBuffer(
void);
197 void flushAllBranches(
void);
200 void branchResumeOutput(
void);
201 void branchAllSamplesFlushed(
void);
202 void cleanupBranches(
void);
void enableSink(AudioSink *sink, bool enable)
Enable or disable audio output to the given audio sink.
void removeAllSinks(void)
Remove all audio sinks from this splitter.
This file contains the base class for an audio source.
Contains a single shot or periodic timer that emits a signal on timeout.
This file contains the base class for an audio sink.
int writeSamples(const float *samples, int len)
Write samples into this audio sink.
void removeSink(AudioSink *sink)
Remove an audio sink from the splitter.
The base class for an audio sink.
void flushSamples(void)
Tell the sink to flush the previously written samples.
AudioSink * sink(void) const
Get the registered audio sink.
Namespace for the asynchronous programming classes.
AudioSplitter(void)
Default constuctor.
~AudioSplitter(void)
Destructor.
The base class for an audio source.
A class that splits an audio stream into multiple streams.
void addSink(AudioSink *sink, bool managed=false)
Add an audio sink to the splitter.