From: Andre Noll
Date: Wed, 11 Jun 2025 14:02:25 +0000 (+0200)
Subject: fec
X-Git-Url: https://git.tuebingen.mpg.de/?a=commitdiff_plain;h=990199bcb183880fe856b72b5a53f88e70eea4e4;p=paraslash.git
fec
---
diff --git a/fec.h b/fec.h
index d09b035d..51626ab8 100644
--- a/fec.h
+++ b/fec.h
@@ -1,4 +1,19 @@
-/** \file fec.h Exported symbols from fec.c. */
+/** \file fec.h Exported symbols from fec.c.
+ *
+ * This implementation of forward error correction employs the Reed Solomon
+ * error-correcting code, which is based on Galois field algebra. The algorithm
+ * is implemented in \ref fec.c. The two users are the virtual streaming
+ * system (\ref vss.h), which fec-encodes data chunks before sending them over
+ * the network, and the fecdec filter (\ref fecdec_filter.c), which decodes
+ * fec-encoded chunks and feeds the decoded chunks to the output channel of
+ * the buffer tree node for subordinated buffer tree nodes to process.
+ *
+ * The API is relatively simple as it contains only the few non-static
+ * functions described here. Both the sending and the receiving side first
+ * call \ref fec_new() to obtain a reference to an opaque fec handle. The
+ * virtual streaming system calls \ref fec_encode() while the fecdec filter
+ * calls \ref fec_decode().
+ */
/*
* 980614
@@ -33,8 +48,14 @@
* OF SUCH DAMAGE.
*/
-/** Each FEC slice contains a FEC header of this size. */
+/**
+ * Each FEC slice contains a FEC header of this size.
+ *
+ * The value is needed by the virtual streaming system and the fec decoder
+ * implemented in \ref fecdec_filter.c.
+ */
#define FEC_HEADER_SIZE 32
+
/** The FEC header starts with this magic value. */
#define FEC_MAGIC 0xFECC0DEC
diff --git a/web/DoxygenLayout.xml b/web/DoxygenLayout.xml
index 37b49133..a0295334 100644
--- a/web/DoxygenLayout.xml
+++ b/web/DoxygenLayout.xml
@@ -147,13 +147,13 @@
+
-
diff --git a/web/documentation.in.html b/web/documentation.in.html
index d9bb5932..22cdafeb 100644
--- a/web/documentation.in.html
+++ b/web/documentation.in.html
@@ -31,9 +31,9 @@
Source code documentation
Only the C API is documented here. Not shown are files related to the
-build system (makefiles and autoconf related files) and the lopsub suite files
-which contain the descriptions of the command line options. Only non-static
-functions and variables are documented.
+build system (makefiles and autoconf related files) and the lopsub suite
+files which contain the descriptions of the command line options. As a rule,
+only non-static functions and variables are documented.
Subsystems
diff --git a/web/para.css b/web/para.css
index 2d349a7d..fd457902 100644
--- a/web/para.css
+++ b/web/para.css
@@ -12,8 +12,8 @@ td {
vertical-align: top;
}
-h2 {
- color: #ffffff;
+h2,h3 {
+ color: #fff;
}
span.slogan {