diff options
author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2019-05-06 15:04:16 +0200 |
---|---|---|
committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2019-05-06 15:04:16 +0200 |
commit | 8cb5b3eac1bb669b8828777489d54e9d9057fe6f (patch) | |
tree | 50d578356013903c516cc03bdaa514168e2a4695 /src/Interleaver.cpp | |
parent | b74b895dd44f5a76d581b8dec65dbf76dd5cece9 (diff) | |
download | dabmux-8cb5b3eac1bb669b8828777489d54e9d9057fe6f.tar.gz dabmux-8cb5b3eac1bb669b8828777489d54e9d9057fe6f.tar.bz2 dabmux-8cb5b3eac1bb669b8828777489d54e9d9057fe6f.zip |
Stop using variable length array in Interleaver
Diffstat (limited to 'src/Interleaver.cpp')
-rw-r--r-- | src/Interleaver.cpp | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/src/Interleaver.cpp b/src/Interleaver.cpp index 7d69810..cf0d235 100644 --- a/src/Interleaver.cpp +++ b/src/Interleaver.cpp @@ -28,23 +28,17 @@ #endif // _WIN32 -Interleaver::Interleaver(unsigned short I, unsigned short M, bool reverse) +Interleaver::Interleaver(unsigned short I, unsigned short M, bool reverse) : + I(I), + M(M), + N(I * M), + memSize((this->N * I) - 1) { - this->I = I; - this->M = M; - this->N = I * M; - this->memSize = (this->N * I) - 1; - this->mem = new char[memSize]; + mem.resize(memSize); setReverse(reverse); } -Interleaver::~Interleaver() -{ - delete []mem; -} - - void Interleaver::setReverse(bool state) { reverse = state; @@ -56,7 +50,7 @@ void Interleaver::reset() { j = 0; index = 0; - bzero(mem, memSize); + memset(mem.data(), 0, memSize * sizeof(mem[0])); } |