39#include "blocxx/BLOCXX_config.h"
51 return (gptr() < egptr()) ?
static_cast<unsigned char>(*gptr()) : EOF;
55std::streambuf::pos_type
58 pos_type ret = pos_type(off_type(-1));
60 char* begin = eback();
66 if (way == std::ios_base::cur)
70 else if (way == std::ios_base::end)
75 if (newOff + off >= 0 && end - begin >= newOff + off)
77 setg(begin, begin + newOff + off, end);
78 ret = pos_type(newOff);
85std::streambuf::pos_type
88 pos_type ret = pos_type(off_type(-1));
90 char* begin = eback();
93 if (sp <= end - begin)
95 setg(begin, begin + sp, end);
106 m_bfr.reserve(initialSize);
virtual pos_type seekpos(pos_type sp, std::ios_base::openmode which)
virtual pos_type seekoff(off_type off, std::ios_base::seekdir way, std::ios_base::openmode which)
virtual int overflow(int c)
std::vector< unsigned char > m_bfr
DataOStreamBuf(size_t initialSize=256)
virtual std::streamsize xsputn(const char *s, std::streamsize n)