[farsight2/master] Generate doc for the transmitter plugins

Olivier Crête olivier.crete at collabora.co.uk
Tue Dec 23 15:25:19 PST 2008


---
 common/gtk-doc-plugins.mak                  |   34 +++++++++-
 docs/libs/Makefile.am                       |    2 +-
 docs/plugins/Makefile.am                    |   22 ++++++-
 docs/plugins/farsight2-plugins-docs.sgml    |    4 +
 docs/plugins/farsight2-plugins-sections.txt |   91 +++++++++++++++++++++++++-
 docs/plugins/gtkdoc-scangobj-transmitters   |   16 ++++-
 6 files changed, 154 insertions(+), 15 deletions(-)

diff --git a/common/gtk-doc-plugins.mak b/common/gtk-doc-plugins.mak
index f673a7f..ba73865 100644
--- a/common/gtk-doc-plugins.mak
+++ b/common/gtk-doc-plugins.mak
@@ -42,6 +42,7 @@ EXTRA_DIST = 				\
 
 MAINTAINER_DOC_STAMPS =			\
 	scanobj-build.stamp		\
+	scanobj-trans-build.stamp		\
 	inspect-build.stamp		\
 	inspect.stamp
 
@@ -127,7 +128,7 @@ scanobj-build.stamp: $(SCANOBJ_DEPS) $(basefiles)
 	fi
 	touch scanobj-build.stamp
 
-$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(SCANOBJ_FILES_O): scan-build.stamp
+$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(SCANOBJ_FILES_O): scan-build.stamp scanobj-trans-build.stamp
 	@true
 
 ### inspect GStreamer plug-ins; done by documentation maintainer ###
@@ -162,7 +163,7 @@ inspect-build.stamp:
         fi
 
 ### scan headers; done on every build ###
-scan-build.stamp: $(HFILE_GLOB) $(EXTRA_HFILES) $(basefiles) scanobj-build.stamp inspect-build.stamp
+scan-build.stamp: $(HFILE_GLOB) $(EXTRA_HFILES) $(basefiles) scanobj-build.stamp inspect-build.stamp scanobj-trans-build.stamp
 	if test "x$(top_srcdir)" != "x$(top_builddir)" &&		\
 	   test -d "$(top_builddir)/gst";				\
         then								\
@@ -295,7 +296,7 @@ install-data-local:
 	  $(INSTALL_DATA) $(srcdir)/html/$(DOC_MODULE).devhelp \
 	    $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)- at GST_MAJORMINOR@.devhelp; \
 	  if test -e $(srcdir)/html/$(DOC_MODULE).devhelp2; then \
-        	    $(INSTALL_DATA) $(srcdir)/html/$(DOC_MODULE).devhelp2 \
+	    $(INSTALL_DATA) $(srcdir)/html/$(DOC_MODULE).devhelp2 \
 	           $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)- at GST_MAJORMINOR@.devhelp2; \
 	  fi; \
 	  (which gtkdoc-rebase >/dev/null && \
@@ -360,6 +361,33 @@ check-inspected-versions:
 	done ; \
 	exit $$fail
 
+scanobj-trans-update:
+	-rm scanobj-trans-build.stamp
+	$(MAKE) scanobj-trans-build.stamp
+
+scanobj-trans-build.stamp: $(SCANOBJ_DEPS) $(basefiles)
+	@echo '*** Scanning GObjects ***'
+	if test x"$(srcdir)" != x. ; then				\
+	    for f in $(SCANOBJ_FILES);					\
+	    do								\
+	        cp $(srcdir)/$$f . ;					\
+	    done;							\
+	else								\
+	    GST_PLUGIN_PATH=$(top_builddir)/gst:$(top_builddir)/ext	\
+	    GST_REGISTRY=$(INSPECT_REGISTRY)				\
+	    FS_PLUGIN_PATH="$(FS_PLUGIN_PATH)"				\
+	    CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)"				\
+	    CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)"				\
+	    LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)"				\
+	    $(srcdir)/gtkdoc-scangobj-transmitters			\
+		 --type-init-func="gst_init(NULL,NULL)"			\
+		 --types=farsight2-transmitters.types			\
+	        --module=$(DOC_MODULE) &&				\
+		$(PYTHON)						\
+		$(top_srcdir)/common/scangobj-merge.py $(DOC_MODULE);	\
+	fi
+	touch scanobj-trans-build.stamp
+
 #
 # Require gtk-doc when making dist
 #
diff --git a/docs/libs/Makefile.am b/docs/libs/Makefile.am
index cad106f..7eed2e6 100644
--- a/docs/libs/Makefile.am
+++ b/docs/libs/Makefile.am
@@ -62,7 +62,7 @@ extra_files =
 GTKDOC_CFLAGS = $(FS2_INTERNAL_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) $(GST_BASE_CFLAGS)
 GTKDOC_LIBS = -static \
 	$(top_builddir)/gst-libs/gst/farsight/libgstfarsight-0.10.la \
-	$(SCANOBJ_DEPS) $(GST_BASE_LIBS) 
+	$(GST_BASE_LIBS) 
 
 GTKDOC_CC=$(LIBTOOL) --mode=compile $(CC)
 GTKDOC_LD=$(LIBTOOL) --mode=link $(CC)
diff --git a/docs/plugins/Makefile.am b/docs/plugins/Makefile.am
index d0e7adc..2179541 100644
--- a/docs/plugins/Makefile.am
+++ b/docs/plugins/Makefile.am
@@ -54,7 +54,12 @@ CFILE_GLOB=$(DOC_SOURCE_DIR)/*/*/*.c
 # thomasvs: another nice wingo addition would be an explanation on why
 # this is useful ;)
 
-SCANOBJ_DEPS =
+SCANOBJ_DEPS = \
+	$(top_builddir)/transmitters/multicast/libmulticast-transmitter.la \
+	$(top_builddir)/transmitters/rawudp/librawudp-transmitter.la \
+	$(top_builddir)/gst/fsrtpconference/libfsrtpconference.la \
+	$(top_builddir)/gst/funnel/libfsfunnel.la \
+	$(top_builddir)/gst/videoanyrate/libfsvideoanyrate.la
 
 # Header files to ignore when scanning.
 IGNORE_HFILES = 
@@ -71,7 +76,11 @@ IGNORE_CFILES =
 EXTRA_HFILES = \
 	$(top_srcdir)/gst/funnel/fs-funnel.h \
 	$(top_srcdir)/gst/videoanyrate/videoanyrate.h \
-	$(top_srcdir)/gst/fsrtpconference/fs-rtp-conference.h
+	$(top_srcdir)/gst/fsrtpconference/fs-rtp-conference.h \
+	$(top_srcdir)/transmitters/rawudp/fs-rawudp-transmitter.h \
+	$(top_srcdir)/transmitters/rawudp/fs-rawudp-stream-transmitter.h \
+	$(top_srcdir)/transmitters/multicast/fs-multicast-transmitter.h \
+	$(top_srcdir)/transmitters/multicast/fs-multicast-stream-transmitter.h
 
 # Images to copy into HTML directory.
 HTML_IMAGES =
@@ -85,7 +94,9 @@ extra_files =
 # CFLAGS and LDFLAGS for compiling scan program. Only needed if your app/lib
 # contains GtkObjects/GObjects and you want to document signals and properties.
 GTKDOC_CFLAGS = $(GST_BASE_CFLAGS) -I$(top_builddir) -I$(top_builddir)/gst-libs
-GTKDOC_LIBS = $(SCANOBJ_DEPS) $(GST_BASE_LIBS)
+GTKDOC_LIBS = \
+	$(top_builddir)/gst-libs/gst/farsight/libgstfarsight-0.10.la \
+	$(GST_BASE_LIBS) 
 
 GTKDOC_CC=$(LIBTOOL) --mode=compile $(CC)
 GTKDOC_LD=$(LIBTOOL) --mode=link $(CC)
@@ -95,4 +106,9 @@ GTKDOC_LD=$(LIBTOOL) --mode=link $(CC)
 #DOC_OVERRIDES = $(DOC_MODULE)-overrides.txt
 DOC_OVERRIDES =
 
+FS_PLUGIN_PATH=$(top_builddir)/transmitters/rawudp/.libs:$(top_builddir)/transmitters/multicast/.libs
+
+update-all: scanobj-trans-build.stamp update
+
+
 include $(top_srcdir)/common/gtk-doc-plugins.mak
diff --git a/docs/plugins/farsight2-plugins-docs.sgml b/docs/plugins/farsight2-plugins-docs.sgml
index 588a406..819d54b 100644
--- a/docs/plugins/farsight2-plugins-docs.sgml
+++ b/docs/plugins/farsight2-plugins-docs.sgml
@@ -16,5 +16,9 @@
     <xi:include href="xml/fs-funnel.xml"/>
     <xi:include href="xml/videoanyrate.xml"/>
     <xi:include href="xml/fs-rtp-conference.xml"/>
+    <xi:include href="xml/fs-rawudp-transmitter.xml"/>
+    <xi:include href="xml/fs-rawudp-stream-transmitter.xml"/>
+    <xi:include href="xml/fs-multicast-transmitter.xml"/>
+    <xi:include href="xml/fs-multicast-stream-transmitter.xml"/>
   </chapter>
 </book>
diff --git a/docs/plugins/farsight2-plugins-sections.txt b/docs/plugins/farsight2-plugins-sections.txt
index e199859..7869767 100644
--- a/docs/plugins/farsight2-plugins-sections.txt
+++ b/docs/plugins/farsight2-plugins-sections.txt
@@ -2,7 +2,6 @@
 <FILE>fs-funnel</FILE>
 <TITLE>FsFunnel</TITLE>
 FsFunnel
-FsFunnelClass
 <SUBSECTION Standard>
 FS_FUNNEL
 FS_IS_FUNNEL
@@ -15,7 +14,6 @@ FS_IS_FUNNEL_CLASS
 <SECTION>
 <FILE>videoanyrate</FILE>
 GstVideoanyratePrivate
-FsRtpConferenceClass
 <TITLE>GstVideoanyrate</TITLE>
 GstVideoanyrate
 <SUBSECTION Standard>
@@ -31,11 +29,10 @@ GST_IS_VIDEOANYRATE_CLASS
 <FILE>fs-rtp-conference</FILE>
 FS_RTP_CONFERENCE_CAST
 FsRtpConferencePrivate
-GstVideoanyrateClass
 <TITLE>FsRtpConference</TITLE>
 FsRtpConference
-<SUBSECTION Standard>
 fs_codec_to_gst_caps
+<SUBSECTION Standard>
 FS_RTP_CONFERENCE
 FS_IS_RTP_CONFERENCE
 FS_TYPE_RTP_CONFERENCE
@@ -45,3 +42,89 @@ FS_IS_RTP_CONFERENCE_CLASS
 FS_RTP_CONFERENCE_GET_CLASS
 </SECTION>
 
+<SECTION>
+<FILE>fs-rawudp-transmitter</FILE>
+FS_RAWUDP_TRANSMITTER_CAST
+FsRawUdpTransmitterPrivate
+<TITLE>FsRawUdpTransmitter</TITLE>
+FsRawUdpTransmitter
+UdpPort
+FsRawUdpAddressUniqueCallbackFunc
+fs_rawudp_transmitter_get_udpport
+fs_rawudp_transmitter_put_udpport
+fs_rawudp_transmitter_udpport_add_dest
+fs_rawudp_transmitter_udpport_remove_dest
+fs_rawudp_transmitter_udpport_sendto
+fs_rawudp_transmitter_udpport_connect_recv
+fs_rawudp_transmitter_udpport_disconnect_recv
+fs_rawudp_transmitter_udpport_is_pad
+fs_rawudp_transmitter_udpport_get_port
+fs_rawudp_transmitter_udpport_add_known_address
+fs_rawudp_transmitter_udpport_remove_known_address
+<SUBSECTION Standard>
+FS_RAWUDP_TRANSMITTER
+FS_IS_RAWUDP_TRANSMITTER
+FS_TYPE_RAWUDP_TRANSMITTER
+fs_rawudp_transmitter_get_type
+FS_RAWUDP_TRANSMITTER_CLASS
+FS_IS_RAWUDP_TRANSMITTER_CLASS
+FS_RAWUDP_TRANSMITTER_GET_CLASS
+</SECTION>
+
+<SECTION>
+<FILE>fs-rawudp-stream-transmitter</FILE>
+FS_RAWUDP_STREAM_TRANSMITTER_CAST
+FsRawUdpStreamTransmitterPrivate
+<TITLE>FsRawUdpStreamTransmitter</TITLE>
+FsRawUdpStreamTransmitter
+fs_rawudp_stream_transmitter_register_type
+fs_rawudp_stream_transmitter_newv
+<SUBSECTION Standard>
+FS_RAWUDP_STREAM_TRANSMITTER
+FS_IS_RAWUDP_STREAM_TRANSMITTER
+FS_TYPE_RAWUDP_STREAM_TRANSMITTER
+fs_rawudp_stream_transmitter_get_type
+FS_RAWUDP_STREAM_TRANSMITTER_CLASS
+FS_IS_RAWUDP_STREAM_TRANSMITTER_CLASS
+FS_RAWUDP_STREAM_TRANSMITTER_GET_CLASS
+</SECTION>
+
+<SECTION>
+<FILE>fs-multicast-transmitter</FILE>
+FS_MULTICAST_TRANSMITTER_CAST
+FsMulticastTransmitterPrivate
+<TITLE>FsMulticastTransmitter</TITLE>
+FsMulticastTransmitter
+UdpSock
+fs_multicast_transmitter_get_udpsock
+fs_multicast_transmitter_put_udpsock
+fs_multicast_transmitter_udpsock_inc_sending
+fs_multicast_transmitter_udpsock_dec_sending
+<SUBSECTION Standard>
+FS_MULTICAST_TRANSMITTER
+FS_IS_MULTICAST_TRANSMITTER
+FS_TYPE_MULTICAST_TRANSMITTER
+fs_multicast_transmitter_get_type
+FS_MULTICAST_TRANSMITTER_CLASS
+FS_IS_MULTICAST_TRANSMITTER_CLASS
+FS_MULTICAST_TRANSMITTER_GET_CLASS
+</SECTION>
+
+<SECTION>
+<FILE>fs-multicast-stream-transmitter</FILE>
+FS_MULTICAST_STREAM_TRANSMITTER_CAST
+FsMulticastStreamTransmitterPrivate
+<TITLE>FsMulticastStreamTransmitter</TITLE>
+FsMulticastStreamTransmitter
+fs_multicast_stream_transmitter_register_type
+fs_multicast_stream_transmitter_newv
+<SUBSECTION Standard>
+FS_MULTICAST_STREAM_TRANSMITTER
+FS_IS_MULTICAST_STREAM_TRANSMITTER
+FS_TYPE_MULTICAST_STREAM_TRANSMITTER
+fs_multicast_stream_transmitter_get_type
+FS_MULTICAST_STREAM_TRANSMITTER_CLASS
+FS_IS_MULTICAST_STREAM_TRANSMITTER_CLASS
+FS_MULTICAST_STREAM_TRANSMITTER_GET_CLASS
+</SECTION>
+
diff --git a/docs/plugins/gtkdoc-scangobj-transmitters b/docs/plugins/gtkdoc-scangobj-transmitters
index 8687eeb..266ac70 100755
--- a/docs/plugins/gtkdoc-scangobj-transmitters
+++ b/docs/plugins/gtkdoc-scangobj-transmitters
@@ -156,10 +156,18 @@ static GType *
 get_object_types (void)
 {
     gint i = 0;
+    FsTransmitter *trans;
 EOT
 
 for (@types) {
-    print OUTPUT "    object_types[i++] = $_ ();\n";
+
+    print OUTPUT "     trans = fs_transmitter_new(\"$_\",1, NULL);";
+print OUTPUT <<EOT;
+    g_assert(trans);
+    object_types[i++] = G_OBJECT_TYPE(trans);
+    object_types[i++] = fs_transmitter_get_stream_transmitter_type (trans);
+    g_object_unref(trans);
+EOT
 }
 
 print OUTPUT <<EOT;
@@ -1546,14 +1554,14 @@ $command = "$LD -o $MODULE-scan $o_file $LDFLAGS";
 system($command) == 0 or die "Linking of scanner failed: $!\n";
 
 print "gtk-doc: Running scanner $MODULE-scan\n";
-system("sh -c ./$MODULE-scan") == 0 or die "Scan failed: $!\n";
+($a = system("sh -c ./$MODULE-scan")) == 0 or die "Scan failed: $a $!\n";
 
 unlink "./$MODULE-scan.c", "./$MODULE-scan.o", "./$MODULE-scan.lo", "./$MODULE-scan";
 
-&UpdateFileIfChanged ($old_signals_filename, $new_signals_filename, 0);
+#&UpdateFileIfChanged ($old_signals_filename, $new_signals_filename, 0);
 &UpdateFileIfChanged ($old_hierarchy_filename, $new_hierarchy_filename, 0);
 &UpdateFileIfChanged ($old_interfaces_filename, $new_interfaces_filename, 0);
 &UpdateFileIfChanged ($old_prerequisites_filename, $new_prerequisites_filename, 0);
-&UpdateFileIfChanged ($old_args_filename, $new_args_filename, 0);
+#&UpdateFileIfChanged ($old_args_filename, $new_args_filename, 0);
 
 
-- 
1.5.6.5




More information about the farsight-commits mailing list