26 namespace graphene {
namespace utilities {
28 template<
size_t BlockSize=16,
char PaddingChar=' '>
34 virtual size_t writesome(
const char* buffer,
size_t len ) {
35 auto out = buffered_ostream::writesome(buffer, len);
37 bytes_out %= BlockSize;
40 virtual size_t writesome(
const std::shared_ptr<const char>& buf,
size_t len,
size_t offset ) {
41 auto out = buffered_ostream::writesome(buf, len, offset);
43 bytes_out %= BlockSize;
47 static const char pad = PaddingChar;
48 while( bytes_out % BlockSize )
50 buffered_ostream::flush();
virtual ~padding_ostream()
virtual size_t writesome(const std::shared_ptr< const char > &buf, size_t len, size_t offset)
padding_ostream(fc::ostream_ptr o, size_t bufsize=4096)
buffered_ostream(ostream_ptr o, size_t bufsize=4096)
virtual size_t writesome(const char *buffer, size_t len)
std::shared_ptr< ostream > ostream_ptr