diff options
author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2016-12-25 21:34:03 +0100 |
---|---|---|
committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2016-12-25 21:34:03 +0100 |
commit | 2bba7d602744ccd6dab26940661f0fdfbf231af8 (patch) | |
tree | 590a5808497da3b621e29239cd56db6c89c2d6a9 /src/FicSource.h | |
parent | b5fd4a6ab6ac92af2141233f802e71c861cd89f4 (diff) | |
download | dabmod-2bba7d602744ccd6dab26940661f0fdfbf231af8.tar.gz dabmod-2bba7d602744ccd6dab26940661f0fdfbf231af8.tar.bz2 dabmod-2bba7d602744ccd6dab26940661f0fdfbf231af8.zip |
Refactor flowgraph and puncturing rules
Diffstat (limited to 'src/FicSource.h')
-rw-r--r-- | src/FicSource.h | 35 |
1 files changed, 15 insertions, 20 deletions
diff --git a/src/FicSource.h b/src/FicSource.h index 307908c..cb1d3a8 100644 --- a/src/FicSource.h +++ b/src/FicSource.h @@ -1,6 +1,11 @@ /* Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011 Her Majesty the Queen in Right of Canada (Communications Research Center Canada) + + Copyright (C) 2016 + Matthias P. Braendli, matthias.braendli@mpb.li + + http://opendigitalradio.org */ /* This file is part of ODR-DabMod. @@ -19,43 +24,33 @@ along with ODR-DabMod. If not, see <http://www.gnu.org/licenses/>. */ -#ifndef FIC_SOURCE_H -#define FIC_SOURCE_H +#pragma once #ifdef HAVE_CONFIG_H # include <config.h> #endif - #include "PuncturingRule.h" #include "Eti.h" -#include "ModInput.h" - +#include "ModPlugin.h" #include <vector> #include <sys/types.h> - class FicSource : public ModInput { -protected: - size_t d_framesize; - Buffer d_buffer; - std::vector<PuncturingRule*> d_puncturing_rules; - public: FicSource(eti_FC &fc); - FicSource(const FicSource&); - FicSource& operator=(const FicSource&); - virtual ~FicSource(); size_t getFramesize(); - const std::vector<PuncturingRule*>& get_rules(); - - int process(Buffer* inputData, Buffer* outputData); + const std::vector<PuncturingRule>& get_rules(); + + void loadFicData(const Buffer& fic); + int process(Buffer* outputData); const char* name() { return "FicSource"; } - int read(Buffer* outputData); +private: + size_t d_framesize; + Buffer d_buffer; + std::vector<PuncturingRule> d_puncturing_rules; }; - -#endif // FIC_SOURCE_H |