From 3633bcc99aedda5d9ea36c143fa339139c763d3e Mon Sep 17 00:00:00 2001 From: "Matthias P. Braendli" Date: Fri, 6 Jan 2017 11:35:35 +0100 Subject: Replace EDI-to-ETI converter with a dedicated EDI source --- src/DabModulator.cpp | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) (limited to 'src/DabModulator.cpp') diff --git a/src/DabModulator.cpp b/src/DabModulator.cpp index 6c28a2e..cbe8f07 100644 --- a/src/DabModulator.cpp +++ b/src/DabModulator.cpp @@ -3,7 +3,7 @@ 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 http://opendigitalradio.org @@ -55,21 +55,21 @@ #include "Log.h" DabModulator::DabModulator( - double& tist_offset_s, unsigned tist_delay_stages, + EtiSource& etiSource, tii_config_t& tiiConfig, unsigned outputRate, unsigned clockRate, unsigned dabMode, GainMode gainMode, float& digGain, float normalise, const std::string& filterTapsFilename ) : - ModCodec(), + ModInput(), myOutputRate(outputRate), myClockRate(clockRate), myDabMode(dabMode), myGainMode(gainMode), myDigGain(digGain), myNormalise(normalise), - myEtiReader(tist_offset_s, tist_delay_stages), + myEtiSource(etiSource), myFlowgraph(NULL), myFilterTapsFilename(filterTapsFilename), myTiiConfig(tiiConfig) @@ -134,16 +134,14 @@ void DabModulator::setMode(unsigned mode) } -int DabModulator::process(Buffer* const dataIn, Buffer* dataOut) +int DabModulator::process(Buffer* dataOut) { using namespace std; - PDEBUG("DabModulator::process(dataIn: %p, dataOut: %p)\n", - dataIn, dataOut); + PDEBUG("DabModulator::process(dataOut: %p)\n", dataOut); - myEtiReader.process(dataIn); if (myFlowgraph == NULL) { - unsigned mode = myEtiReader.getMode(); + unsigned mode = myEtiSource.getMode(); if (myDabMode != 0) { mode = myDabMode; } else if (mode == 0) { @@ -156,10 +154,8 @@ int DabModulator::process(Buffer* const dataIn, Buffer* dataOut) // CIF data initialisation //////////////////////////////////////////////////////////////// auto cifPrbs = make_shared(864 * 8, 0x110); - auto cifMux = make_shared( - myFicSizeOut + 864 * 8, myEtiReader.getSubchannels()); - - auto cifPart = make_shared(mode, myEtiReader.getFp()); + auto cifMux = make_shared(myEtiSource); + auto cifPart = make_shared(mode, myEtiSource.getFp()); auto cifMap = make_shared(myNbCarriers); auto cifRef = make_shared(mode); @@ -229,7 +225,7 @@ int DabModulator::process(Buffer* const dataIn, Buffer* dataOut) //////////////////////////////////////////////////////////////// // Processing FIC //////////////////////////////////////////////////////////////// - shared_ptr fic(myEtiReader.getFic()); + shared_ptr fic(myEtiSource.getFic()); //////////////////////////////////////////////////////////////// // Data initialisation //////////////////////////////////////////////////////////////// @@ -269,7 +265,7 @@ int DabModulator::process(Buffer* const dataIn, Buffer* dataOut) //////////////////////////////////////////////////////////////// // Configuring subchannels //////////////////////////////////////////////////////////////// - for (const auto& subchannel : myEtiReader.getSubchannels()) { + for (const auto& subchannel : myEtiSource.getSubchannels()) { //////////////////////////////////////////////////////////// // Data initialisation -- cgit v1.2.3