- Apr 13, 2018
-
-
Luker authored
Due to the wrking threads we can not really move the RAW of RFC decoders. We *can* move the wrappers, and *_void however. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Apr 10, 2018
-
-
Luker authored
encode() was still expecting the symbol in host endianness. the iterator was calling it with the host endianness, too, so we did not notice. The funny thing? The stable version was patched correctly, and does not have this problem... Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
Luker authored
Work for ticket #23 Get an RFC packet and add it to the decoder. Not really tested :P Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Apr 06, 2018
-
-
Luker authored
block_size() optimistically reported the block size as extracted from the partitioning. The problem is that the last block is not always full, so the last block had the wrong size. report the right size Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
Luker authored
Fixes #24 Sometimes it makes sense to have incomplete data. This way we both de-interleave the incomplete data and we give a std::vector<bool> of which bytes were transmitted correctly and which were zeroed out. Accessible through the end_of_input() calls, as it is the only call that makes sense for this, since we need to also ignore any other repair symbol. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Mar 30, 2018
-
-
Luker authored
The de_interleaver was still following the raw esi (max_esi == extended_esi) instead of the real number of symbols in the block. Also a minor bugfix that probably does not change anything in precode_solver Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Mar 29, 2018
-
-
Luker authored
Nothing of real value here Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Mar 11, 2018
-
-
Luker authored
We were doing really bad stuff. * we were not using the correct block size, but instead creating something completely out-of standard This surely means that we were not compatible with OpenRQ (Ticket #20), and possibly a reason for which decoding fails too ofter (Ticket #21). * We used the wrong ESI number, which should skip the padding numbers (#23, #20 ) * we did not expose the real block size to the user of the RFC namespace (RFC iterators) Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Mar 10, 2018
-
-
Luker authored
We only report the number of symbols used in a block, but you might want to know the size of the matrix we use internally. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Mar 06, 2018
-
-
Luker authored
The OTI fields and the symbol id are all in big endian. We used the host endianness instead. fix that. Ticket #22 Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Mar 03, 2018
-
-
Luker authored
...which brings some API breakage :( notable things: * C and C++ names for structs and variables are now in sync * common.hpp is much easier to read * added "trcked by" "tracks ..." to know that some things are to be kept in synch between C and C++ * "RaptorQ_Dec_Result" name was too similar to "RaptorQ_Decoder_Result". The C++ version calls it "Decoder_wait_res", let's go with that, at least it is more different and actually more to the point. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Jan 08, 2018
-
-
Luker authored
Renamed Decoder_aligned_res in Decoder_written It's really the same, just that the RFC forces the sizes of the memebers, while in the RAW API we can keep size_t also: bump up to 1.0.0-alpha1, things are much better and consistent now Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
Luker authored
The rfc API still used that "void* &" switch to void** which makes more sense for the C interface. Also, that's what we use on the RAW api While we are at it, force the template to specify both input *and* output typenames, so that it is easier to switch between the linked library and the header-only inline the template so that it can be reincluded multiple times without redeinitions Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
Luker authored
The flags "complete" and "no_pool" are actually perfectly compatible. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
Luker authored
Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Jan 07, 2018
-
-
Luker authored
Using a struct makes it more portable for C, and we avoid some first/second which nobody ever understand/remeber the meaning Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Jan 02, 2017
-
-
Luker authored
set default/delete for all class constructors Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Dec 27, 2016
-
-
Luker authored
Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Nov 10, 2016
-
-
Luker authored
Benchmarks now make more sense. New RAW API is about 30% faster than the RFC. Precomputations only make sense after a certain size, probably dependent on symbol size ? Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Nov 08, 2016
-
-
Luker authored
RFC6330 lies. No big deal, just a change of names. Many thanks to Mohammed Alasmar Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Nov 02, 2016
-
-
Luker authored
Also, a longstanding, never-triggered bug got fixed. More work need to be done for decoder iterators, and the <future>, which is not supported in C++98 Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Oct 31, 2016
-
-
Luker authored
Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
Luker authored
We can now either compile & link the library, or include header-only (almost, but the structure is there). Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Oct 26, 2016
-
-
Luker authored
Technically, we broke the old C RAW API. but it was just created, and we are in prealpha. And we only put things const. so whatever. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Oct 25, 2016
-
-
Luker authored
Thank you GCC, we had a bug. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
Luker authored
Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
Luker authored
Close #11 . Seems good enough, but let's not call it final yet. Minor tweaks to the CPP API, too Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Oct 24, 2016
-
-
Luker authored
Spaces, not tabs. Actually, I liked tabs much more. But it seems a lot of IDEs and general reader do not handle them correctly, or do not let you configure "1 tab == 4 spaces", so the code was not always readable. "git diff -w" for this commit is en empty list. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
Luker authored
This was originally meant only to eradicate the interleaving code, so that the raw API could be slightly faster. Turns out a lot had to be done for that, and the API changed to reflect those changes. The RAW_Encoder template now has enabled/disabled methods, so that you can only use the right one, depending on whether you choose interleaving or not. While doing all of this, I realized a nice way to let the user choose the correct symbol number for the block. +1 for typesafety. And since the commit became really big, I threw in a couple of useless style changes, bringing back everything to 80 columns. Really, I should be doing smaller commits. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Oct 18, 2016
-
-
Luker authored
Ticket #3 not yet finished, blocked by #7 Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Oct 12, 2016
-
-
Luker authored
If we get told that there is no more input for a block we can return error and avoid waiting indefinitely. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Oct 09, 2016
-
-
Luker authored
Still hunting an other one. Many thanks to the developers of rr. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
Luker authored
Start portability for VC++14. Still unfinished. Also simplify a bit locking in RFC calls. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Sep 28, 2016
-
-
Luker authored
Also: modify a bit the API for 32 bits. The user should not expect RQ to manage more memory than the 32 bit machine can handle. This means that some methods should work with and return size_t, not uint64_t Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Sep 22, 2016
-
-
Luker authored
Decoder still does not work. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Sep 08, 2016
-
-
Luker authored
Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Sep 07, 2016
-
-
Luker authored
Other symbols should not be exported, but are needed right now. Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Sep 06, 2016
-
-
Luker authored
properly wait for all threads to exit when running the destructor Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Jul 09, 2016
-
-
Luker authored
Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-
- Jul 06, 2016
-
-
Luker authored
API and decoder still wip Signed-off-by: Luca Fulchir <luker@fenrirproject.org>
-