Sese Framework
2.3.0
A cross-platform framework
|
Buffered output stream class. More...
#include <BufferedOutputStream.h>
Public Types | |
using | Ptr = std::shared_ptr<BufferedOutputStream> |
Public Types inherited from sese::io::OutputStream | |
typedef std::shared_ptr< OutputStream > | Ptr |
Public Member Functions | |
BufferedOutputStream (const OutputStream::Ptr &source, size_t buffer_size=STREAM_BYTE_STREAM_SIZE_FACTOR) | |
~BufferedOutputStream () noexcept override | |
int64_t | write (const void *buffer, size_t length) override |
int64_t | flush () noexcept |
size_t | getPosition () const |
size_t | getLength () const |
size_t | getCapacity () const |
Public Member Functions inherited from sese::io::OutputStream | |
virtual | ~OutputStream () noexcept=default |
int64_t | write (const std::string_view &buffer) |
int64_t | write (const text::StringView &buffer) |
template<typename T > | |
int64_t | write (std::vector< T > &buffer) |
template<typename T , size_t N> | |
int64_t | write (std::array< T, N > &buffer) |
Private Attributes | |
OutputStream::Ptr | source |
void * | buffer = nullptr |
size_t | pos |
size_t | len |
size_t | cap |
Buffered output stream class.
using sese::io::BufferedOutputStream::Ptr = std::shared_ptr<BufferedOutputStream> |
|
explicit |
|
noexcept |
|
inlinenodiscard |
References cap.
|
inlinenodiscard |
References len.
|
inlinenodiscard |
References pos.
|
overridevirtual |
|
private |
Referenced by BufferedOutputStream(), flush(), write(), and ~BufferedOutputStream().
|
private |
Referenced by BufferedOutputStream(), getCapacity(), and write().
|
private |
Referenced by BufferedOutputStream(), flush(), getLength(), and write().
|
private |
Referenced by BufferedOutputStream(), flush(), getPosition(), and write().
|
private |
Referenced by BufferedOutputStream(), flush(), and write().