Doxygen documentation.

parent 27375b1a
## Process this file with automake to produce Makefile.in
SUBDIRS = src examples misc
SUBDIRS = src examples misc doc
doc-dummy:
doc: doc-dummy
$(MAKE) -C doc doc
......@@ -74,7 +74,7 @@ RANLIB = @RANLIB@
STRIP = @STRIP@
VERSION = @VERSION@
SUBDIRS = src examples misc
SUBDIRS = src examples misc doc
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ./src/config.h
......@@ -329,6 +329,11 @@ installdirs mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean
doc-dummy:
doc: doc-dummy
$(MAKE) -C doc doc
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
......@@ -1930,7 +1930,7 @@ else
if { (eval echo configure:1931: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
for file in conftest.*; do
case $file in
*.c | *.o | *.obj) ;;
*.$ac_ext | *.c | *.o | *.obj) ;;
*) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;;
esac
done
......@@ -5507,7 +5507,7 @@ done
ac_given_srcdir=$srcdir
ac_given_INSTALL="$INSTALL"
trap 'rm -fr `echo "Makefile src/Makefile src/tables/Makefile examples/Makefile misc/Makefile src/config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
trap 'rm -fr `echo "Makefile src/Makefile src/tables/Makefile examples/Makefile misc/Makefile doc/Makefile src/config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
EOF
cat >> $CONFIG_STATUS <<EOF
......@@ -5610,7 +5610,7 @@ EOF
cat >> $CONFIG_STATUS <<EOF
CONFIG_FILES=\${CONFIG_FILES-"Makefile src/Makefile src/tables/Makefile examples/Makefile misc/Makefile"}
CONFIG_FILES=\${CONFIG_FILES-"Makefile src/Makefile src/tables/Makefile examples/Makefile misc/Makefile doc/Makefile"}
EOF
cat >> $CONFIG_STATUS <<\EOF
for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
......
......@@ -42,7 +42,7 @@ else
fi
AC_OUTPUT([Makefile src/Makefile src/tables/Makefile examples/Makefile misc/Makefile])
AC_OUTPUT([Makefile src/Makefile src/tables/Makefile examples/Makefile misc/Makefile doc/Makefile])
echo "
libdvbpsi configuration
......
## Process this file with automake to produce Makefile.in
EXTRA_DIST=doxygen.cfg
doc:
doxygen doxygen.cfg
# Makefile.in generated automatically by automake 1.4-p4 from Makefile.am
# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
SHELL = @SHELL@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
DESTDIR =
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
transform = @program_transform_name@
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
host_alias = @host_alias@
host_triplet = @host@
AS = @AS@
CC = @CC@
DLLTOOL = @DLLTOOL@
ECHO = @ECHO@
EXEEXT = @EXEEXT@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
STRIP = @STRIP@
VERSION = @VERSION@
EXTRA_DIST = doxygen.cfg
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../src/config.h
CONFIG_CLEAN_FILES =
DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar
GZIP_ENV = --best
all: all-redirect
.SUFFIXES:
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
tags: TAGS
TAGS:
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
subdir = doc
distdir: $(DISTFILES)
here=`cd $(top_builddir) && pwd`; \
top_distdir=`cd $(top_distdir) && pwd`; \
distdir=`cd $(distdir) && pwd`; \
cd $(top_srcdir) \
&& $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu doc/Makefile
@for file in $(DISTFILES); do \
d=$(srcdir); \
if test -d $$d/$$file; then \
cp -pr $$d/$$file $(distdir)/$$file; \
else \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file || :; \
fi; \
done
info-am:
info: info-am
dvi-am:
dvi: dvi-am
check-am: all-am
check: check-am
installcheck-am:
installcheck: installcheck-am
install-exec-am:
install-exec: install-exec-am
install-data-am:
install-data: install-data-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
install: install-am
uninstall-am:
uninstall: uninstall-am
all-am: Makefile
all-redirect: all-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
installdirs:
mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f Makefile $(CONFIG_CLEAN_FILES)
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
maintainer-clean-generic:
mostlyclean-am: mostlyclean-generic
mostlyclean: mostlyclean-am
clean-am: clean-generic mostlyclean-am
clean: clean-am
distclean-am: distclean-generic clean-am
-rm -f libtool
distclean: distclean-am
maintainer-clean-am: maintainer-clean-generic distclean-am
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
maintainer-clean: maintainer-clean-am
.PHONY: tags distdir info-am info dvi-am dvi check check-am \
installcheck-am installcheck install-exec-am install-exec \
install-data-am install-data install-am install uninstall-am uninstall \
all-redirect all-am all installdirs mostlyclean-generic \
distclean-generic clean-generic maintainer-clean-generic clean \
mostlyclean distclean maintainer-clean
doc:
doxygen doxygen.cfg
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
This diff is collapsed.
......@@ -2,7 +2,7 @@
* descriptor.h: common descriptor structures
*----------------------------------------------------------------------------
* (c)2001-2002 VideoLAN
* $Id: descriptor.h,v 1.2 2002/03/15 12:16:01 bozo Exp $
* $Id: descriptor.h,v 1.3 2002/03/25 21:00:50 bozo Exp $
*
* Authors: Arnaud de Bossoreille de Ribou <bozo@via.ecp.fr>
*
......@@ -34,26 +34,31 @@ extern "C" {
/*****************************************************************************
* dvbpsi_descriptor_t
*****************************************************************************
* This structure is used to store a descriptor.
*****************************************************************************/
/*!This structure is used to store a descriptor.
* (ISO/IEC 13818-1 section 2.6).
*****************************************************************************/
typedef struct dvbpsi_descriptor_s
{
uint8_t i_tag; /* descriptor_tag */
uint8_t i_length; /* descriptor_length */
uint8_t i_tag; /*!< descriptor_tag */
uint8_t i_length; /*!< descriptor_length */
uint8_t * p_data; /* content */
uint8_t * p_data; /*!< content */
struct dvbpsi_descriptor_s * p_next;
struct dvbpsi_descriptor_s * p_next; /*!< next element of
the list */
} dvbpsi_descriptor_t;
/*****************************************************************************
* dvbpsi_NewDescriptor
*****************************************************************************
* Creation of a new dvbpsi_descriptor_t structure.
*****************************************************************************/
/*!Creation of a new dvbpsi_descriptor_t structure.
* \param i_tag descriptor's tag
* \param i_length descriptor's length
* \param p_data descriptor's data
* \return a pointer to the descriptor.
*****************************************************************************/
dvbpsi_descriptor_t* dvbpsi_NewDescriptor(uint8_t i_tag, uint8_t i_length,
uint8_t* p_data);
......@@ -61,8 +66,10 @@ dvbpsi_descriptor_t* dvbpsi_NewDescriptor(uint8_t i_tag, uint8_t i_length,
/*****************************************************************************
* dvbpsi_DeleteDescriptor
*****************************************************************************
* Destruction of a dvbpsi_descriptor_t structure.
*****************************************************************************/
/*!Destruction of a dvbpsi_descriptor_t structure.
* \param p_descriptor pointer to the descriptor
* \return nothing.
*****************************************************************************/
void dvbpsi_DeleteDescriptor(dvbpsi_descriptor_t* p_descriptor);
......
......@@ -2,7 +2,7 @@
* dvbpsi.h: main header
*----------------------------------------------------------------------------
* (c)2001-2002 VideoLAN
* $Id: dvbpsi.h,v 1.3 2002/03/15 12:16:01 bozo Exp $
* $Id: dvbpsi.h,v 1.4 2002/03/25 21:00:50 bozo Exp $
*
* Authors: Arnaud de Bossoreille de Ribou <bozo@via.ecp.fr>
*
......@@ -37,16 +37,19 @@ extern "C" {
/*****************************************************************************
* dvbpsi_handle
*****************************************************************************
* Decoder abstration.
*****************************************************************************/
/*!Decoder abstration.
*****************************************************************************/
typedef struct dvbpsi_decoder_s * dvbpsi_handle;
/*****************************************************************************
* dvbpsi_PushPacket
*****************************************************************************
* Injection of a TS packet into a PSI decoder.
*****************************************************************************/
/*!Injection of a TS packet into a PSI decoder.
* \param h_dvbpsi handle to the decoder
* \param p_data pointer to a 188 bytes playload of a TS packet
* \return nothing.
*****************************************************************************/
void dvbpsi_PushPacket(dvbpsi_handle h_dvbpsi, uint8_t* p_data);
......@@ -60,8 +63,8 @@ typedef struct dvbpsi_psi_section_s dvbpsi_psi_section_t;
/*****************************************************************************
* dvbpsi_callback
*****************************************************************************
* Callback type definition.
*****************************************************************************/
/*!Callback type definition.
*****************************************************************************/
typedef void (* dvbpsi_callback)(dvbpsi_handle p_decoder,
dvbpsi_psi_section_t* p_section);
......@@ -69,8 +72,8 @@ typedef void (* dvbpsi_callback)(dvbpsi_handle p_decoder,
/*****************************************************************************
* dvbpsi_decoder_t
*****************************************************************************
* PSI decoder.
*****************************************************************************/
/*!PSI decoder.
*****************************************************************************/
typedef struct dvbpsi_decoder_s
{
......
......@@ -2,7 +2,7 @@
* psi.h: common PSI structures
*----------------------------------------------------------------------------
* (c)2001-2002 VideoLAN
* $Id: psi.h,v 1.3 2002/03/15 12:16:01 bozo Exp $
* $Id: psi.h,v 1.4 2002/03/25 21:00:50 bozo Exp $
*
* Authors: Arnaud de Bossoreille de Ribou <bozo@via.ecp.fr>
*
......@@ -34,70 +34,79 @@ extern "C" {
/*****************************************************************************
* dvbpsi_psi_section_t
*****************************************************************************
* This structure is used to store a PSI section. The common information are
*****************************************************************************/
/*!This structure is used to store a PSI section. The common information are
* decoded (ISO/IEC 13818-1 section 2.4.4.10).
*****************************************************************************/
struct dvbpsi_psi_section_s
{
/* non-specific section data */
uint8_t i_table_id; /* table_id */
int b_syntax_indicator; /* section_syntax_indicator */
int b_private_indicator; /* private_indicator */
uint16_t i_length; /* section_length */
uint8_t i_table_id; /*!< table_id */
int b_syntax_indicator; /*!< section_syntax_indicator */
int b_private_indicator; /*!< private_indicator */
uint16_t i_length; /*!< section_length */
/* used if b_syntax_indicator is true */
uint16_t i_extension; /* table_id_extension */
/* transport_stream_id for a
uint16_t i_extension; /*!< table_id_extension */
/*!< transport_stream_id for a
PAT section */
uint8_t i_version; /* version_number */
int b_current_next; /* current_next_indicator */
uint8_t i_number; /* section_number */
uint8_t i_last_number; /* last_section_number */
uint8_t i_version; /*!< version_number */
int b_current_next; /*!< current_next_indicator */
uint8_t i_number; /*!< section_number */
uint8_t i_last_number; /*!< last_section_number */
/* non-specific section data */
/* the content is table-specific */
uint8_t * p_data; /* complete section */
uint8_t * p_payload_start; /* payload start */
uint8_t * p_payload_end; /* payload end */
uint8_t * p_data; /*!< complete section */
uint8_t * p_payload_start; /*!< payload start */
uint8_t * p_payload_end; /*!< payload end */
/* used if b_syntax_indicator is true */
uint32_t i_crc; /* CRC_32 */
uint32_t i_crc; /*!< CRC_32 */
/* list handling */
struct dvbpsi_psi_section_s * p_next;
struct dvbpsi_psi_section_s * p_next; /*!< next element of
the list */
};
/*****************************************************************************
* dvbpsi_NewPSISection
*****************************************************************************
* Creation of a new dvbpsi_psi_section_t structure.
*****************************************************************************/
/*!Creation of a new dvbpsi_psi_section_t structure.
* \param i_max_size max size in bytes of the section
* \return a pointer to the new PSI section structure.
*****************************************************************************/
dvbpsi_psi_section_t * dvbpsi_NewPSISection(int i_max_size);
/*****************************************************************************
* dvbpsi_DeletePSISections
*****************************************************************************
* Destruction of a dvbpsi_psi_section_t structure.
*****************************************************************************/
/*!Destruction of a dvbpsi_psi_section_t structure.
* \param p_section pointer to the first PSI section structure
* \return nothing.
*****************************************************************************/
void dvbpsi_DeletePSISections(dvbpsi_psi_section_t * p_section);
/*****************************************************************************
* dvbpsi_ValidPSISection
*****************************************************************************
* Check the CRC_32 if the section has b_syntax_indicator set.
*****************************************************************************/
/*!Check the CRC_32 if the section has b_syntax_indicator set.
* \param p_section pointer to the PSI section structure
* \return boolean value (0 if the section is not valid).
*****************************************************************************/
int dvbpsi_ValidPSISection(dvbpsi_psi_section_t* p_section);
/*****************************************************************************
* dvbpsi_BuildPSISection
*****************************************************************************
* Build the section based on the information in the structure.
*****************************************************************************/
/*!Build the section based on the information in the structure.
* \param p_section pointer to the PSI section structure
* \return nothing.
*****************************************************************************/
void dvbpsi_BuildPSISection(dvbpsi_psi_section_t* p_section);
......
......@@ -2,7 +2,7 @@
* pat.h: PAT structures
*----------------------------------------------------------------------------
* (c)2001-2002 VideoLAN
* $Id: pat.h,v 1.2 2002/03/15 12:16:01 bozo Exp $
* $Id: pat.h,v 1.3 2002/03/25 21:00:50 bozo Exp $
*
* Authors: Arnaud de Bossoreille de Ribou <bozo@via.ecp.fr>
*
......@@ -34,49 +34,53 @@ extern "C" {
/*****************************************************************************
* dvbpsi_pat_program_t
*****************************************************************************
* This structure is used to store a decoded PAT program.
*****************************************************************************/
/*!This structure is used to store a decoded PAT program.
* (ISO/IEC 13818-1 section 2.4.4.3).
*****************************************************************************/
typedef struct dvbpsi_pat_program_s
{
uint16_t i_number; /* program_number */
uint16_t i_pid; /* PID of NIT/PMT */
uint16_t i_number; /*!< program_number */
uint16_t i_pid; /*!< PID of NIT/PMT */
struct dvbpsi_pat_program_s * p_next;
struct dvbpsi_pat_program_s * p_next; /*!< next element of
the list */
} dvbpsi_pat_program_t;
/*****************************************************************************
* dvbpsi_pat_t
*****************************************************************************
* This structure is used to store a decoded PAT.
*****************************************************************************/
/*!This structure is used to store a decoded PAT.
* (ISO/IEC 13818-1 section 2.4.4.3).
*****************************************************************************/
typedef struct dvbpsi_pat_s
{
uint16_t i_ts_id; /* transport_stream_id */
uint8_t i_version; /* version_number */
int b_current_next; /* current_next_indicator */
uint16_t i_ts_id; /*!< transport_stream_id */
uint8_t i_version; /*!< version_number */
int b_current_next; /*!< current_next_indicator */
dvbpsi_pat_program_t * p_first_program; /* program list */
dvbpsi_pat_program_t * p_first_program; /*!< program list */
} dvbpsi_pat_t;
/*****************************************************************************
* dvbpsi_pat_callback
*****************************************************************************
* Callback type definition.
*****************************************************************************/
/*!Callback type definition.
*****************************************************************************/
typedef void (* dvbpsi_pat_callback)(void* p_cb_data, dvbpsi_pat_t* p_new_pat);
/*****************************************************************************
* dvbpsi_AttachPAT
*****************************************************************************
* Initialize a PAT decoder and return a handle on it.
*****************************************************************************/
/*!Initialize a PAT decoder and return a handle on it.
* \param pf_callback function to call back on new PAT
* \param p_cb_data private data given in argument to the callback
* \return a pointer to the decoder for future calls.
*****************************************************************************/
dvbpsi_handle dvbpsi_AttachPAT(dvbpsi_pat_callback pf_callback,
void* p_cb_data);
......@@ -84,20 +88,34 @@ dvbpsi_handle dvbpsi_AttachPAT(dvbpsi_pat_callback pf_callback,
/*****************************************************************************
* dvbpsi_DetachPAT
*****************************************************************************
* Close a PAT decoder. The handle isn't valid any more.
*****************************************************************************/
/*!Close a PAT decoder. The handle isn't valid any more.
* \param h_dvbpsi handle to the decoder
* \return nothing.
*****************************************************************************/
void dvbpsi_DetachPAT(dvbpsi_handle h_dvbpsi);
/*****************************************************************************
* dvbpsi_InitPAT/dvbpsi_NewPAT
*****************************************************************************
* Initialize a pre-allocated/new dvbpsi_pat_t structure.
*****************************************************************************/
/*!Initialize a user-allocated dvbpsi_pat_t structure.
* \param p_pat PAT structure
* \param i_ts_id transport stream ID
* \param i_version PAT version
* \param b_current_next current next indicator
* \return nothing.
*****************************************************************************/
void dvbpsi_InitPAT(dvbpsi_pat_t* p_pat, uint16_t i_ts_id, uint8_t i_version,
int b_current_next);
/*!Allocate and initialize a new dvbpsi_pat_t structure.
* \param p_pat PAT structure
* \param i_ts_id transport stream ID
* \param i_version PAT version
* \param b_current_next current next indicator
* \return nothing.
*****************************************************************************/
#define dvbpsi_NewPAT(p_pat, i_ts_id, i_version, b_current_next) \
p_pat = (dvbpsi_pat_t*)malloc(sizeof(dvbpsi_pat_t)); \
if(p_pat != NULL) \
......@@ -106,11 +124,17 @@ void dvbpsi_InitPAT(dvbpsi_pat_t* p_pat, uint16_t i_ts_id, uint8_t i_version,
/*****************************************************************************
* dvbpsi_EmptyPAT/dvbpsi_DeletePAT
*****************************************************************************
* Clean/free a dvbpsi_pat_t structure.
*****************************************************************************/
/*!Clean a dvbpsi_pat_t structure.
* \param p_pat PAT structure
* \return nothing.
*****************************************************************************/
void dvbpsi_EmptyPAT(dvbpsi_pat_t* p_pat);
/*!Clean and free a dvbpsi_pat_t structure.
* \param p_pat PAT structure
* \return nothing.
*****************************************************************************/
#define dvbpsi_DeletePAT(p_pat) \
dvbpsi_EmptyPAT(p_pat); \
free(p_pat);
......@@ -118,18 +142,24 @@ void dvbpsi_EmptyPAT(dvbpsi_pat_t* p_pat);
/*****************************************************************************
* dvbpsi_PATAddProgram
*****************************************************************************
* Add a program at the end of the PAT.
*****************************************************************************/
/*!Add a program at the end of the PAT.
* \param p_pat PAT structure
* \param i_number program number
* \param i_pid PID of the NIT/PMT
* \return a pointer to the added program.
*****************************************************************************/
dvbpsi_pat_program_t* dvbpsi_PATAddProgram(dvbpsi_pat_t* p_pat,
uint16_t i_number, uint16_t i_pid);
/*****************************************************************************
* dvbpsi_GenPATSections
*****************************************************************************
* Generate PAT sections based on the dvbpsi_pat_t structure. The third
* argument is used to limit the number of program in each section (max: 253).
*****************************************************************************/
/*!Generate PAT sections based on the dvbpsi_pat_t structure.
* \param p_pat PAT structure
* \param i_max_pps limitation of the number of program in each section
* (max: 253).
* \return a pointer to the list of generated PSI sections.
*****************************************************************************/
dvbpsi_psi_section_t* dvbpsi_GenPATSections(dvbpsi_pat_t* p_pat,
int i_max_pps);
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment