boost::iostreams filter, CRC
От: nen777w  
Дата: 01.12.16 12:02
Оценка:
Прежде чем писать самому, хотел спросить у ALL.
Никто случайно не встречал готовой реализации Output фильтра для подсчёта CRC (CRC32 или MD5) который можно воткнуть в стрим перед device а потом забрать из него результат.
Вроде такой велосипед уж точно должен существовать?
Re: boost::iostreams filter, CRC
От: AlexGin Беларусь  
Дата: 02.12.16 07:49
Оценка:
Здравствуйте, nen777w, Вы писали:

N>Прежде чем писать самому, хотел спросить у ALL.

N>Никто случайно не встречал готовой реализации Output фильтра для подсчёта CRC (CRC32 или MD5) который можно воткнуть в стрим перед device а потом забрать из него результат.
N>Вроде такой велосипед уж точно должен существовать?

Тут получается две задачи:
1) Подсчёт CRC — это действительно "велосипед"
(примеры — начиная от boost: http://www.boost.org/doc/libs/1_60_0/libs/crc
и включая прочие варианты:
https://www.codeproject.com/articles/1671/crc-generating-a-checksum-for-a-file
http://stackoverflow.com/questions/302914/crc32-c-or-c-implementation )
2) Поддержка "стрим перед device" — это задача, требующая более творческого подхода
(боюсь, что тут придется писать что-то своё, даже если применять вместе с Boost.Iostreams).

Нагуглилось вот это: http://www.boost.org/doc/libs/1_55_0/libs/iostreams/src/zlib.cpp (не знаю, насколько оно в тему)
Отредактировано 02.12.2016 7:57 AlexGin . Предыдущая версия . Еще …
Отредактировано 02.12.2016 7:54 AlexGin . Предыдущая версия .
Re[2]: boost::iostreams filter, CRC
От: nen777w  
Дата: 02.12.16 08:56
Оценка:
N>>Прежде чем писать самому, хотел спросить у ALL.
N>>Никто случайно не встречал готовой реализации Output фильтра для подсчёта CRC (CRC32 или MD5) который можно воткнуть в стрим перед device а потом забрать из него результат.
N>>Вроде такой велосипед уж точно должен существовать?

AG>2) Поддержка "стрим перед device" — это задача, требующая более творческого подхода

AG>(боюсь, что тут придется писать что-то своё, даже если применять вместе с Boost.Iostreams).

Так я как раз о фильтре для boost::iostreams и спрашивал, там сложного абсолютно ничего, просто было лень писать код для такого казалось бы велосипеда, но уже написал.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.