aboutsummaryrefslogtreecommitdiffstats
path: root/src/DabMod.cpp
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2024-10-06 19:47:19 +0200
committerMatthias P. Braendli <matthias.braendli@mpb.li>2024-10-06 19:47:19 +0200
commit8736f6160aeafe7a177cb6143fea80157e174e52 (patch)
treec73d39eda0db5341875b0fac34cdc89c0961c94a /src/DabMod.cpp
parentb563b465e8b3df367da7799e789d29e0009cb96a (diff)
downloaddabmod-8736f6160aeafe7a177cb6143fea80157e174e52.tar.gz
dabmod-8736f6160aeafe7a177cb6143fea80157e174e52.tar.bz2
dabmod-8736f6160aeafe7a177cb6143fea80157e174e52.zip
Implement fixed-point symbols, FFT and file output
Diffstat (limited to 'src/DabMod.cpp')
-rw-r--r--src/DabMod.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/DabMod.cpp b/src/DabMod.cpp
index 4e338f9..5f8412b 100644
--- a/src/DabMod.cpp
+++ b/src/DabMod.cpp
@@ -249,7 +249,15 @@ static shared_ptr<ModOutput> prepare_output(mod_settings_t& s)
{
shared_ptr<ModOutput> output;
- if (s.useFileOutput) {
+ if (s.fixedPoint) {
+ if (s.useFileOutput) {
+ output = make_shared<OutputFile>(s.outputName, s.fileOutputShowMetadata);
+ }
+ else {
+ throw runtime_error("Fixed point only works with file output");
+ }
+ }
+ else if (s.useFileOutput) {
if (s.fileOutputFormat == "complexf") {
output = make_shared<OutputFile>(s.outputName, s.fileOutputShowMetadata);
}
@@ -413,7 +421,7 @@ int launch_modulator(int argc, char* argv[])
ModulatorData m;
rcs.enrol(&m);
- {
+ if (not mod_settings.fixedPoint) {
// This is mostly useful on ARM systems where FFTW planning takes some time. If we do it here
// it will be done before the modulator starts up
etiLog.level(debug) << "Running FFTW planning...";