diff options
author | Marcus Müller <mmueller@gnuradio.org> | 2021-07-16 19:22:21 +0200 |
---|---|---|
committer | mormj <34754695+mormj@users.noreply.github.com> | 2021-07-27 11:21:52 -0400 |
commit | f6b3295ae29e3ee3c2c8fc3c6738ee4561ca194b (patch) | |
tree | 31b557f0cdc3990deb104a33291be48606915301 /gr-digital/include | |
parent | 52a9d49acef2ec124d52e7e223dc16e767af92c7 (diff) |
digital/chunks to symbols: be less inefficient
The block formerly took the tags from get_tags_in_range (which are
sorted), gave them to tag_checker, which sorted them, and then went
through every input sample, checking its index against the next tag.
Removed the tag_checker; that saves us a sorting of a sorted vector.
The other optimization is to not dispatch any tag encountered to the own
message handler; instead, the handler is called directly.
Signed-off-by: Marcus Müller <mmueller@gnuradio.org>
Diffstat (limited to 'gr-digital/include')
-rw-r--r-- | gr-digital/include/gnuradio/digital/chunks_to_symbols.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gr-digital/include/gnuradio/digital/chunks_to_symbols.h b/gr-digital/include/gnuradio/digital/chunks_to_symbols.h index 950977cdde..591c6afd7c 100644 --- a/gr-digital/include/gnuradio/digital/chunks_to_symbols.h +++ b/gr-digital/include/gnuradio/digital/chunks_to_symbols.h @@ -51,9 +51,9 @@ public: * \param symbol_table: list that maps chunks to symbols. * \param D: dimension of table. */ - static sptr make(const std::vector<OUT_T>& symbol_table, const int D = 1); + static sptr make(const std::vector<OUT_T>& symbol_table, const unsigned int D = 1); - virtual int D() const = 0; + virtual unsigned int D() const = 0; virtual std::vector<OUT_T> symbol_table() const = 0; virtual void set_symbol_table(const std::vector<OUT_T>& symbol_table) = 0; }; |