From 44dab50b7acbdaf76e4d1c3cd3c7b1ca0d4ddbe6 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Mon, 10 Sep 2012 12:12:26 +0200 Subject: [PATCH] ringbuffer: add method to check the flushing state --- gst-libs/gst/audio/gstaudioringbuffer.c | 24 ++++++++++++++++++++++++ gst-libs/gst/audio/gstaudioringbuffer.h | 1 + 2 files changed, 25 insertions(+) diff --git a/gst-libs/gst/audio/gstaudioringbuffer.c b/gst-libs/gst/audio/gstaudioringbuffer.c index df60172e52..978caec793 100644 --- a/gst-libs/gst/audio/gstaudioringbuffer.c +++ b/gst-libs/gst/audio/gstaudioringbuffer.c @@ -833,6 +833,30 @@ gst_audio_ring_buffer_set_flushing (GstAudioRingBuffer * buf, gboolean flushing) GST_OBJECT_UNLOCK (buf); } +/** + * gst_audio_ring_buffer_is_flushing: + * @buf: the #GstAudioRingBuffer + * + * Check if @buf is flushing. + * + * MT safe. + * + * Returns: TRUE if the device is flushing. + */ +gboolean +gst_audio_ring_buffer_is_flushing (GstAudioRingBuffer * buf) +{ + gboolean res; + + g_return_val_if_fail (GST_IS_AUDIO_RING_BUFFER (buf), TRUE); + + GST_OBJECT_LOCK (buf); + res = buf->flushing; + GST_OBJECT_UNLOCK (buf); + + return res; +} + /** * gst_audio_ring_buffer_start: * @buf: the #GstAudioRingBuffer to start diff --git a/gst-libs/gst/audio/gstaudioringbuffer.h b/gst-libs/gst/audio/gstaudioringbuffer.h index 444196390e..e578aea8ce 100644 --- a/gst-libs/gst/audio/gstaudioringbuffer.h +++ b/gst-libs/gst/audio/gstaudioringbuffer.h @@ -288,6 +288,7 @@ gboolean gst_audio_ring_buffer_is_active (GstAudioRingBuffer *buf); /* flushing */ void gst_audio_ring_buffer_set_flushing (GstAudioRingBuffer *buf, gboolean flushing); +gboolean gst_audio_ring_buffer_is_flushing (GstAudioRingBuffer *buf); /* playback/pause */ gboolean gst_audio_ring_buffer_start (GstAudioRingBuffer *buf);