cogl-gst: Add some documentation

Adds documentation comments to CoglGstVideoSink and makes it generate
a separate manual to contain it.

One thing that I wasn't able to figure out with this was how to get
the documentation to have correct references to the main Cogl docs.
You can pass arguments to gtkdoc-fixxref to point to other manuals,
but presumably this needs the installed locations and when the
Cogl-Gst documentation is generated the Cogl docs may not have been
installed yet.

Reviewed-by: Robert Bragg <robert@linux.intel.com>

(cherry picked from commit 5acdf8db47311893a9cf9ea04a66a287b657b8b0)
This commit is contained in:
Neil Roberts
2013-04-24 19:43:00 +01:00
committed by Lionel Landwerlin
parent c50b302fc4
commit 5f86563c86
8 changed files with 485 additions and 0 deletions

View File

@ -1 +1,5 @@
SUBDIRS = cogl cogl-2.0-experimental
if BUILD_COGL_GST
SUBDIRS += cogl-gst
endif

View File

@ -0,0 +1,106 @@
## Process this file with automake to produce Makefile.in
# We require automake 1.6 at least.
AUTOMAKE_OPTIONS = 1.6
# This is a blank Makefile.am for using gtk-doc.
# Copy this to your project's API docs directory and modify the variables to
# suit your project. See the GTK+ Makefiles in gtk+/docs/reference for examples
# of using the various options.
# The name of the module, e.g. 'glib'.
DOC_MODULE=cogl-gst
# The top-level SGML file. You can change this if you want to.
DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.xml
# The directory containing the source code. Relative to $(srcdir).
# gtk-doc will search all .c & .h files beneath here for inline comments
# documenting the functions and macros.
# e.g. DOC_SOURCE_DIR=../../../gtk
DOC_SOURCE_DIR=../../../cogl-gst
# Extra options to pass to gtkdoc-scangobj. Not normally needed.
SCANGOBJ_OPTIONS=--type-init-func="gst_init(NULL, NULL)"
# Extra options to supply to gtkdoc-scan.
# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
SCAN_OPTIONS=--deprecated-guards="COGL_DISABLE_DEPRECATED"
# Extra options to supply to gtkdoc-mkdb.
# e.g. MKDB_OPTIONS=--sgml-mode --output-format=xml
MKDB_OPTIONS=--sgml-mode --output-format=xml --name-space=cogl_gst
# Extra options to supply to gtkdoc-mktmpl
# e.g. MKTMPL_OPTIONS=--only-section-tmpl
MKTMPL_OPTIONS=
# Extra options to supply to gtkdoc-fixref. Not normally needed.
# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
FIXXREF_OPTIONS=\
--extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/glib \
--extra-dir=$(GDKPIXBUF_PREFIX)/share/gtk-doc/html/gdk-pixbuf \
--extra-dir=$(GSTREAMER_PREFIX)/share/gtk-doc/html/gstreamer-1.0 \
--extra-dir=$(GSTREAMER_PREFIX)/share/gtk-doc/html/gstreamer-libs-1.0
# Used for dependencies. The docs will be rebuilt if any of these change.
# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h
# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c
HFILE_GLOB=\
$(top_srcdir)/cogl/*.h \
$(top_builddir)/cogl/*.h \
$(top_srcdir)/cogl/winsys/*.h \
$(top_srcdir)/cogl-gst/*.h
CFILE_GLOB=$(top_srcdir)/cogl-gst/*.c
IGNORE_HFILES=\
$(NULL)
EXTRA_HFILES=
# Images to copy into HTML directory.
# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png
HTML_IMAGES=\
$(NULL)
# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
# e.g. content_files=running.sgml building.sgml changes-2.0.sgml
content_files=\
$(NULL)
# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded
# These files must be listed here *and* in content_files
# e.g. expand_content_files=running.sgml
expand_content_files=\
$(NULL)
# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
# Only needed if you are using gtkdoc-scangobj to dynamically query widget
# signals and properties.
# e.g. AM_CPPFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
AM_CPPFLAGS=\
-I$(top_srcdir) \
-I$(top_builddir)/cogl \
-DCOGL_ENABLE_EXPERIMENTAL_API \
$(COGL_DEP_CFLAGS) \
$(COGL_GST_DEP_CFLAGS)
GTKDOC_LIBS=\
$(top_builddir)/cogl/libcogl2.la \
$(top_builddir)/cogl-gst/libcogl-gst.la \
$(COGL_DEP_LIBS) \
$(COGL_GST_DEP_LIBS)
# This includes the standard gtk-doc make rules, copied by gtkdocize.
if BUILD_GTK_DOC
include $(top_srcdir)/gtk-doc.make
else
EXTRA_DIST =
endif
# Other files to distribute
# e.g. EXTRA_DIST += version.xml.in
EXTRA_DIST += $(HTML_IMAGES) $(content_files)

View File

@ -0,0 +1,105 @@
<?xml version="1.0"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
<!ENTITY version "@VERSION@">
]>
<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
<bookinfo>
<title>Cogl GST 2.0 Reference Manual</title>
<releaseinfo>for Cogl &version;</releaseinfo>
<copyright>
<year>2013</year>
<holder>Intel Corporation</holder>
</copyright>
<legalnotice>
<para>
Permission is granted to copy, distribute and/or modify this
document under the terms of the <citetitle>GNU Free
Documentation License</citetitle>, Version 1.1 or any later
version published by the Free Software Foundation with no
Invariant Sections, no Front-Cover Texts, and no Back-Cover
Texts. You may obtain a copy of the <citetitle>GNU Free
Documentation License</citetitle> from the Free Software
Foundation by visiting <ulink type="http"
url="http://www.fsf.org">their Web site</ulink> or by writing
to:
<address>
The Free Software Foundation, Inc.,
<street>59 Temple Place</street> - Suite 330,
<city>Boston</city>, <state>MA</state> <postcode>02111-1307</postcode>,
<country>USA</country>
</address>
</para>
</legalnotice>
</bookinfo>
<chapter>
<title>Cogl GST - a library for integrating GStreamer with Cogl</title>
<section id="cogl-gst-intro">
<title>About Cogl GST</title>
<para>Cogl GST is a small library which provides a GStreamer
sink which can manage a CoglPipeline to render a video within a
Cogl scene.</para>
</section>
<section id="cogl-gst-general-apis">
<title>General APIs</title>
<xi:include href="xml/cogl-gst-video-sink.xml"/>
</section>
</chapter>
<chapter id="coglglossary">
<title>Glossaries</title>
<xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
</chapter>
<index>
<title>Index of all symbols</title>
<xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
</index>
<appendix id="license">
<title>License</title>
<para>
This library is free software; you can redistribute it and/or
modify it under the terms of the <citetitle>GNU Library General
Public License</citetitle> as published by the Free Software
Foundation; either version 2 of the License, or (at your option)
any later version.
</para>
<para>
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
<citetitle>GNU Library General Public License</citetitle> for
more details.
</para>
<para>
You may obtain a copy of the <citetitle>GNU Library General
Public License</citetitle> from the Free Software Foundation by
visiting <ulink type="http" url="http://www.fsf.org">their Web
site</ulink> or by writing to:
<address>
Free Software Foundation, Inc.
<street>59 Temple Place</street> - Suite 330
<city>Boston</city>, <state>MA</state> <postcode>02111-1307</postcode>
<country>USA</country>
</address>
</para>
</appendix>
</book>

View File

@ -0,0 +1,28 @@
<SECTION>
<FILE>cogl-gst-video-sink</FILE>
<TITLE>CoglGstVideoSink</TITLE>
<SUBSECTION>
CoglGstVideoSink
CoglGstVideoSinkClass
cogl_gst_video_sink_new
cogl_gst_video_sink_set_context
cogl_gst_video_sink_get_pipeline
cogl_gst_video_sink_attach_frame
cogl_gst_video_sink_setup_pipeline
cogl_gst_video_sink_get_free_layer
cogl_gst_video_sink_set_first_layer
cogl_gst_video_sink_set_default_sample
<SUBSECTION Standard>
COGL_GST_IS_VIDEO_SINK
COGL_GST_IS_VIDEO_SINK_CLASS
COGL_GST_VIDEO_SINK
COGL_GST_VIDEO_SINK_CLASS
COGL_GST_TYPE_VIDEO_SINK
COGL_GST_VIDEO_SINK_GET_CLASS
<SUBSECTION Private>
CoglGstVideoSinkPrivate
cogl_gst_video_sink_get_type
</SECTION>

View File

@ -0,0 +1,2 @@
#include <cogl-gst/cogl-gst.h>
cogl_gst_video_sink_get_type