The POCO C++ Libraries are powerful cross-platform C++ libraries for building network- and internet-based applications that run on desktop, server, mobile, IoT, and embedded systems.
In order to support both seekg() and seekp(), a streambuf needs to implement both seekoff() and seekpos().
However, Poco::BasicMemoryStreamBuf currently only has seekoff().
Minimal working seekpos() implementation based on seekoff():
virtual pos_type seekpos(pos_type pos, std::ios_base::openmode which = std::ios_base::in | std::ios_base::out)
{
off_type off = pos;
return seekoff(off, std::ios::beg, which);
}
In order to support both
seekg()
andseekp()
, astreambuf
needs to implement bothseekoff()
andseekpos()
. However,Poco::BasicMemoryStreamBuf
currently only hasseekoff()
.Minimal working
seekpos()
implementation based onseekoff()
: