nk 1.0.0
C++ Numerical Computing Runtime
Loading...
Searching...
No Matches
scrambler.hpp
Go to the documentation of this file.
1
3// toolboxes/comm/include/nk/comm/eq/scrambler.hpp
4//
5// Multiplicative bit scrambler / descrambler — the function-form
6// equivalent of the comm.Scrambler / comm.Descrambler System
7// Objects.
8
9#pragma once
10
11#include <memory_resource>
12#include <nk/value/value.hpp>
13
14namespace nk::comm {
15
18
19
41Value scrambler(const Value &x, const Value &poly,
42 const Value &initState,
43 std::pmr::memory_resource *mr = nullptr);
44
64Value descrambler(const Value &y, const Value &poly,
65 const Value &initState,
66 std::pmr::memory_resource *mr = nullptr);
67
68
70} // namespace nk::comm
Core MATLAB-compatible multidimensional array and scalar value type.
Definition value.hpp:61
Value scrambler(const Value &x, const Value &poly, const Value &initState, std::pmr::memory_resource *mr=nullptr)
Multiplicative bit scrambler (y = scrambler(x, poly, initState)).
Value descrambler(const Value &y, const Value &poly, const Value &initState, std::pmr::memory_resource *mr=nullptr)
Multiplicative bit descrambler — algebraic inverse of scrambler (x = descrambler(y,...