28 #ifndef ASYNC_AUDIO_SOURCE_INCLUDED
29 #define ASYNC_AUDIO_SOURCE_INCLUDED
121 : m_sink(0), m_sink_managed(false), m_handler(0), is_flushing(false)
190 assert(m_handler != 0);
207 assert(m_handler != 0);
264 bool m_auto_unreg_source;
267 bool registerSinkInternal(
AudioSink *
sink,
bool managed,
bool reg);
268 void unregisterSinkInternal(
bool is_being_destroyed);
AudioSink * sink(void) const
Get the registered audio sink.
void unregisterSink(void)
Unregister the previously registered audio sink.
virtual void allSamplesFlushed(void)
The registered sink has flushed all samples.
AudioSource * handler(void) const
void sinkFlushSamples(void)
bool isRegistered(void) const
Check if an audio sink has been registered.
bool sinkManaged(void) const
Check if the sink is managed or not.
bool registerSink(AudioSink *sink, bool managed=false)
Register an audio sink to provide samples to.
virtual ~AudioSource(void)
Destructor.
virtual void resumeOutput(void)
Resume audio output to the sink.
int sinkWriteSamples(const float *samples, int len)
AudioSource(void)
Default constuctor.
The base class for an audio sink.
void clearHandler(void)
Clear a handler that was previously setup with setHandler.
bool setHandler(AudioSource *handler)
Setup another source to handle the outgoing audio.
The base class for an audio source.
void handleAllSamplesFlushed(void)
The registered sink has flushed all samples.