/* * Copyright (C) 2011 Igalia S.L * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public License * along with this library; see the file COPYING.LIB. If not, write to * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301, USA. */ #ifndef GRefPtrGStreamer_h #define GRefPtrGStreamer_h #if USE(GSTREAMER) #include typedef struct _GstElement GstElement; typedef struct _GstPad GstPad; typedef struct _GstPadTemplate GstPadTemplate; typedef struct _GstCaps GstCaps; typedef struct _GstContext GstContext; typedef struct _GstTask GstTask; typedef struct _GstBus GstBus; typedef struct _GstElementFactory GstElementFactory; typedef struct _GstBuffer GstBuffer; typedef struct _GstBufferList GstBufferList; typedef struct _GstBufferPool GstBufferPool; typedef struct _GstSample GstSample; typedef struct _GstTagList GstTagList; typedef struct _GstEvent GstEvent; typedef struct _GstToc GstToc; typedef struct _GstMessage GstMessage; typedef struct _WebKitVideoSink WebKitVideoSink; typedef struct _WebKitWebSrc WebKitWebSrc; namespace WTF { template<> GRefPtr adoptGRef(GstElement* ptr); template<> GstElement* refGPtr(GstElement* ptr); template<> void derefGPtr(GstElement* ptr); template<> GRefPtr adoptGRef(GstPad* ptr); template<> GstPad* refGPtr(GstPad* ptr); template<> void derefGPtr(GstPad* ptr); template<> GRefPtr adoptGRef(GstPadTemplate* ptr); template<> GstPadTemplate* refGPtr(GstPadTemplate* ptr); template<> void derefGPtr(GstPadTemplate* ptr); template<> GRefPtr adoptGRef(GstCaps* ptr); template<> GstCaps* refGPtr(GstCaps* ptr); template<> void derefGPtr(GstCaps* ptr); template<> GRefPtr adoptGRef(GstContext* ptr); template<> GstContext* refGPtr(GstContext* ptr); template<> void derefGPtr(GstContext* ptr); template<> GRefPtr adoptGRef(GstTask* ptr); template<> GstTask* refGPtr(GstTask* ptr); template<> void derefGPtr(GstTask* ptr); template<> GRefPtr adoptGRef(GstBus* ptr); template<> GstBus* refGPtr(GstBus* ptr); template<> void derefGPtr(GstBus* ptr); template<> GRefPtr adoptGRef(GstElementFactory* ptr); template<> GstElementFactory* refGPtr(GstElementFactory* ptr); template<> void derefGPtr(GstElementFactory* ptr); template<> GRefPtr adoptGRef(GstBuffer* ptr); template<> GstBuffer* refGPtr(GstBuffer* ptr); template<> void derefGPtr(GstBuffer* ptr); template<> GRefPtr adoptGRef(GstBufferList*); template<> GstBufferList* refGPtr(GstBufferList*); template<> void derefGPtr(GstBufferList*); template<> GRefPtr adoptGRef(GstBufferPool*); template<> GstBufferPool* refGPtr(GstBufferPool*); template<> void derefGPtr(GstBufferPool*); template<> GRefPtr adoptGRef(GstSample* ptr); template<> GstSample* refGPtr(GstSample* ptr); template<> void derefGPtr(GstSample* ptr); template<> GRefPtr adoptGRef(GstTagList* ptr); template<> GstTagList* refGPtr(GstTagList* ptr); template<> void derefGPtr(GstTagList* ptr); template<> GRefPtr adoptGRef(GstEvent* ptr); template<> GstEvent* refGPtr(GstEvent* ptr); template<> void derefGPtr(GstEvent* ptr); template<> GRefPtr adoptGRef(GstToc* ptr); template<> GstToc* refGPtr(GstToc* ptr); template<> void derefGPtr(GstToc* ptr); template<> GRefPtr adoptGRef(GstMessage*); template<> GstMessage* refGPtr(GstMessage*); template<> void derefGPtr(GstMessage*); template<> GRefPtr adoptGRef(WebKitVideoSink* ptr); template<> WebKitVideoSink* refGPtr(WebKitVideoSink* ptr); template<> void derefGPtr(WebKitVideoSink* ptr); template<> GRefPtr adoptGRef(WebKitWebSrc* ptr); GRefPtr ensureGRef(WebKitWebSrc* ptr); template<> WebKitWebSrc* refGPtr(WebKitWebSrc* ptr); template<> void derefGPtr(WebKitWebSrc* ptr); } // namespace WTF #endif // USE(GSTREAMER) #endif // GRefPtrGStreamer_h