![]() |
3 лет назад | |
---|---|---|
.. | ||
codecs | 55a7f90e4c Restoring authorship annotation for <tobo@yandex-team.ru>. Commit 2 of 2. | 3 лет назад |
core | 1d2e8a8e99 Restoring authorship annotation for <cobat@yandex-team.ru>. Commit 2 of 2. | 3 лет назад |
fuzz | 287d7d8c4f Restoring authorship annotation for <svidyuk@yandex-team.ru>. Commit 2 of 2. | 3 лет назад |
ut | 7230275728 Restoring authorship annotation for Dmitry Kopylov <kopylovd@gmail.com>. Commit 2 of 2. | 3 лет назад |
README.md | 110a978b66 Restoring authorship annotation for <dvorkanton@yandex-team.ru>. Commit 2 of 2. | 3 лет назад |
codecs.cpp | 110a978b66 Restoring authorship annotation for <dvorkanton@yandex-team.ru>. Commit 2 of 2. | 3 лет назад |
codecs.h | 110a978b66 Restoring authorship annotation for <dvorkanton@yandex-team.ru>. Commit 2 of 2. | 3 лет назад |
codecs_ut.cpp | 9abfb1a53b Restoring authorship annotation for <yazevnul@yandex-team.ru>. Commit 2 of 2. | 3 лет назад |
stream.cpp | 110a978b66 Restoring authorship annotation for <dvorkanton@yandex-team.ru>. Commit 2 of 2. | 3 лет назад |
stream.h | 110a978b66 Restoring authorship annotation for <dvorkanton@yandex-team.ru>. Commit 2 of 2. | 3 лет назад |
ya.make | 55a7f90e4c Restoring authorship annotation for <tobo@yandex-team.ru>. Commit 2 of 2. | 3 лет назад |
This is a simple library for block data compression (this means data is compressed/uncompressed
by whole blocks in memory). It's a lite-version of the library/cpp/codecs
. Lite here means that it
provide only well-known compression algorithms, without the possibility of learning.
There are two possible ways to work with it.
Use NBlockCodec::Codec
to obtain the codec by name. The codec can be asked to compress
or decompress something and in various ways.
To get a full list of codecs there is a function NBlockCodecs::ListAllCodecs()
.
Use stream.h
to obtain simple streams over block codecs (buffer data, compress them by blocks,
write to the resulting stream).
If you don't want your code to bloat from unused codecs, you can use the small version of the
library: library/cpp/blockcodecs/core
. In that case, you need to manually set PEERDIR()
s to
needed codecs (i.e. PEERDIR(library/cpp/blockcodecs/codecs/lzma)
).