X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gst%2Fgstatomicqueue.h;h=8a131ab21757d191fc4d687fdaad54f251bcc23a;hb=b89b1802df44829a0c034db5807bc893ad3c7774;hp=6d71010c6b4d283107509c2979ee9ed80f9d4fea;hpb=a482babf5590e72a3277fcd05a8e122e9717e3b0;p=platform%2Fupstream%2Fgstreamer.git diff --git a/gst/gstatomicqueue.h b/gst/gstatomicqueue.h index 6d71010..8a131ab 100644 --- a/gst/gstatomicqueue.h +++ b/gst/gstatomicqueue.h @@ -16,40 +16,59 @@ * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301, USA. */ #include +#include +#include #ifndef __GST_ATOMIC_QUEUE_H__ #define __GST_ATOMIC_QUEUE_H__ G_BEGIN_DECLS +#define GST_TYPE_ATOMIC_QUEUE (gst_atomic_queue_get_type()) + /** * GstAtomicQueue: * * Opaque atomic data queue. * - * Use the acessor functions to get the stored values. - * - * Since: 0.10.33 + * Use the accessor functions to get the stored values. */ typedef struct _GstAtomicQueue GstAtomicQueue; -GstAtomicQueue * gst_atomic_queue_new (guint initial_size); +GST_API +GType gst_atomic_queue_get_type (void); +GST_API +GstAtomicQueue * gst_atomic_queue_new (guint initial_size) G_GNUC_MALLOC; + +GST_API void gst_atomic_queue_ref (GstAtomicQueue * queue); + +GST_API void gst_atomic_queue_unref (GstAtomicQueue * queue); +GST_API void gst_atomic_queue_push (GstAtomicQueue* queue, gpointer data); + +GST_API gpointer gst_atomic_queue_pop (GstAtomicQueue* queue); + +GST_API gpointer gst_atomic_queue_peek (GstAtomicQueue* queue); +GST_API guint gst_atomic_queue_length (GstAtomicQueue * queue); +#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC +G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstAtomicQueue, gst_atomic_queue_unref) +#endif + G_END_DECLS #endif /* __GST_ATOMIC_QUEUE_H__ */