Add stream support class for QIODevice to boost::iostreams::stream

This commit is contained in:
Dan Paulat 2022-10-04 23:09:36 -05:00
parent 5ae098daff
commit 7b565d9c76
2 changed files with 35 additions and 1 deletions

View file

@ -0,0 +1,33 @@
#pragma once
#include <boost/iostreams/categories.hpp>
#include <QIODevice>
namespace scwx
{
namespace qt
{
namespace util
{
class IoDeviceSource
{
public:
typedef char char_type;
typedef boost::iostreams::source_tag category;
IoDeviceSource(QIODevice& source) : source_ {source} {}
~IoDeviceSource() {}
std::streamsize read(char* buffer, std::streamsize n)
{
return source_.read(buffer, n);
}
private:
QIODevice& source_;
};
} // namespace util
} // namespace qt
} // namespace scwx