aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/Makefile.am2
-rw-r--r--src/fig/FIG.cpp46
-rw-r--r--src/fig/FIG.h16
3 files changed, 49 insertions, 15 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index 4c5cd60..4c467ff 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -102,7 +102,7 @@ odr_dabmux_SOURCES =DabMux.cpp DabMux.h \
bridge.h bridge.c \
crc.h crc.c \
dabUtils.h dabUtils.cpp \
- fig/FIG.h \
+ fig/FIG.h fig/FIG.cpp \
fig/FIG0.cpp fig/FIG0.h \
fig/FIG1.cpp fig/FIG1.h \
fig/FIGCarousel.cpp fig/FIGCarousel.h \
diff --git a/src/fig/FIG.cpp b/src/fig/FIG.cpp
new file mode 100644
index 0000000..e21cf00
--- /dev/null
+++ b/src/fig/FIG.cpp
@@ -0,0 +1,46 @@
+/*
+ Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+ 2011, 2012 Her Majesty the Queen in Right of Canada (Communications
+ Research Center Canada)
+
+ Copyright (C) 2016
+ Matthias P. Braendli, matthias.braendli@mpb.li
+
+ */
+/*
+ This file is part of ODR-DabMux.
+
+ ODR-DabMux is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ ODR-DabMux 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with ODR-DabMux. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include "FIG.h"
+
+namespace FIC {
+
+int rate_increment_ms(FIG_rate rate)
+{
+ switch (rate) {
+ case FIG_rate::FIG0_0: return 96; // Is a special case
+ case FIG_rate::A: return 100;
+ case FIG_rate::A_B: return 200;
+ case FIG_rate::B: return 1000;
+ case FIG_rate::C: return 10000;
+ case FIG_rate::D: return 30000;
+ case FIG_rate::E: return 120000;
+ }
+ return 1000; //some default value, shouldn't be used
+}
+
+} // namespace FIC
+
diff --git a/src/fig/FIG.h b/src/fig/FIG.h
index 1c1ab8e..8829e68 100644
--- a/src/fig/FIG.h
+++ b/src/fig/FIG.h
@@ -3,7 +3,7 @@
2011, 2012 Her Majesty the Queen in Right of Canada (Communications
Research Center Canada)
- Copyright (C) 2015
+ Copyright (C) 2016
Matthias P. Braendli, matthias.braendli@mpb.li
*/
@@ -66,19 +66,7 @@ enum class FIG_rate {
};
/* Helper function to calculate the deadline for the next transmission, in milliseconds */
-inline int rate_increment_ms(FIG_rate rate)
-{
- switch (rate) {
- case FIG_rate::FIG0_0: return 96; // Is a special case
- case FIG_rate::A: return 100;
- case FIG_rate::A_B: return 200;
- case FIG_rate::B: return 1000;
- case FIG_rate::C: return 10000;
- case FIG_rate::D: return 30000;
- case FIG_rate::E: return 120000;
- }
- return 1000; //some default value, shouldn't be used
-}
+int rate_increment_ms(FIG_rate rate);
/* The fill function of each FIG shall return a status telling
* the carousel how many bytes have been written, and if the complete