Reads the specified amount of bytes and stores the data in \it{buffer}.
-\it{WARNING!} The buffer absolutely needs to have at least the specified size.
+\wxheading{Warning}
+
+The buffer absolutely needs to have at least the specified size.
+
+\wxheading{Return value}
This function returns a reference on the current object, so the user can test
any states of the stream right away.
Reads data from the input queue and stores it in the specified output stream.
The data is read until an error is raised by one of the two streams.
+\wxheading{Return value}
+
+This function returns a reference on the current object, so the user can test
+any states of the stream right away.
+
% ------------------
% Position functions
% ------------------
% -----------
% ctor & dtor
% -----------
-\membersection{wxStreamBuffer::wxStreamBuffer}
+\membersection{wxStreamBuffer::wxStreamBuffer}\label{wxstreambufconst}
\func{}{wxStreamBuffer}{\param{wxStreamBase\&}{ stream}, \param{BufMode}{ mode}}
\func{void}{SetBufferIO}{\param{char*}{ buffer\_start}, \param{char*}{ buffer\_end}}
Specifies which pointers to use for stream buffering. You need to pass a pointer on the
-start of the buffer end and another on the end.
+start of the buffer end and another on the end. The object will use this buffer
+to cache stream data. It may be used also as a source/destination buffer when
+you create an empty stream buffer (See \helpref{wxStreamBuffer::wxStreamBuffer}{wxstreambufconst}).
+
+\wxheading{Remarks}
+
+When you use this function, you'll have to destroy the IO buffers yourself
+after the stream buffer is destroyed or don't use it anymore.
+In the case you use it with an empty buffer, the stream buffer will not grow
+it when it is full.
+
+\wxheading{See also}
+
+\helpref{wxStreamBuffer constructor}{wxstreambufconst}\\
+\helpref{wxStreamBuffer::Fixed}{wxstreambuffixed}\\
+\helpref{wxStreamBuffer::Flushable}{wxstreambufflushable}
\func{void}{SetBufferIO}{\param{size\_t}{ bufsize}}
-Changes the size of the current IO buffer.
+Destroys or invalidates the previous IO buffer and allocates a new one of the
+specified size.
+
+\wxheading{Warning}
+
+All previous pointers aren't valid anymore.
+
+\wxheading{Remark}
+
+The created IO buffer is growable by the object.
+
+\wxheading{See also}
+
+\helpref{wxStreamBuffer::Fixed}{wxstreambuffixed}\\
+\helpref{wxStreamBuffer::Flushable}{wxstreambufflushable}
\membersection{wxStreamBuffer::GetBufferStart}
\constfunc{off\_t}{GetIntPosition}{\void}
-Returns the current position in the stream buffer.
+Returns the current position (counted in bytes) in the stream buffer.
\membersection{wxStreamBuffer::SetIntPosition}
\func{void}{Fixed}{\param{bool}{ fixed}}
Toggles the fixed flag. Usually this flag is toggled at the same time as
-\it{flushable}. This flag allows (when it is FALSE) or forbids (when it is TRUE)
-the stream buffer to resize dynamically the IO buffer.
+\it{flushable}. This flag allows (when it has the FALSE value) or forbids
+(when it has the TRUE value) the stream buffer to resize dynamically the IO buffer.
+
+\wxheading{See also}
+
+\helpref{wxStreamBuffer::SetBufferIO}{wxstreambufsetbufferio}
\membersection{wxStreamBuffer::Flushable}
\func{}{wxStreamBase}{\void}
-Creates a dummy stream object.
+Creates a dummy stream object. It doesn't do anything.
\membersection{wxStreamBase::\destruct{wxStreamBase}}
\constfunc{size_t}{StreamSize}{\void}
This function returns the size of the stream. For example, for a file it is the size of
-the file). Warning! There are streams which do not have size by definition, such as a socket.
+the file).
+
+\wxheading{Warning}
+
+There are streams which do not have size by definition, such as socket streams.
+In that cases, StreamSize returns an invalid size represented by
+\begin{verbatim}
+~(size_t)0
+\end{verbatim}
\membersection{wxStreamBase::OnSysRead}\label{wxstreambaseonsysread}