None
+\wxheading{Include files}
+
+<wx/stream.h>
+
\wxheading{See also}
\helpref{wxStreamBase}{wxstreambase}
\wxheading{Warning}
All errors and messages linked to the stream are stored in the stream object.
+
\begin{verbatim}
- streambuffer.Read(...);
- streambuffer2.Read(...); /* This one erases previous error messages set by
- ``streambuffer'' */
+ streambuffer.Read(...);
+ streambuffer2.Read(...); /* This one erases previous error messages set by
+ ``streambuffer'' */
\end{verbatim}
\func{}{wxStreamBuffer}{\param{BufMode}{ mode}}
work only on memory buffers but it is still compatible with the rest of the
wxStream classes. You can write, read to this special stream and it will
grow (if it is allowed by the user) its internal buffer. Briefly, it has all
-functionnalities of a ``normal'' stream.
+functionality of a ``normal'' stream.
\wxheading{Warning}
The "read\_write" mode may not work: it isn't completely finished.
You can create "memory" streams by this way:
+
\begin{verbatim}
wxStreamBuffer *sb = new wxStreamBuffer(wxStreamBuffer::read)
wxInputStream *input = new wxInputStream(sb);
// input is now a read-only memory stream.
\end{verbatim}
-But you should care about destroying the stream buffer \it{YOURSELF}.
-
-\wxheading{See also}
-\helpref{wxStreamBuffer:SetBufferIO}{wxstreambufsetbufferio}
+But you should take care when destroying the stream buffer yourself.
-\func{}{wxStreamBuffer}{\param{const wxStreamBuffer &}{buffer}}
+\func{}{wxStreamBuffer}{\param{const wxStreamBuffer\&}{buffer}}
Constructor. It initializes the stream buffer with the data of the specified
stream buffer. The new stream buffer is nearly exactly the same as the
operating. It is advised to use this feature only in very local area of the
program.
+\wxheading{See also}
+
+\helpref{wxStreamBuffer:SetBufferIO}{wxstreambuffersetbufferio}
+
\membersection{wxStreamBuffer::\destruct{wxStreamBuffer}}
\func{}{wxStreamBuffer}{\destruct{wxStreamBuffer}}
% -----------
% Filtered IO
% -----------
-\membersection{wxStreamBuffer::Read}\label{wxstreambufread}
+\membersection{wxStreamBuffer::Read}\label{wxstreambufferread}
\func{size\_t}{Read}{\param{void *}{buffer}, \param{size\_t }{size}}
\wxheading{See also}
-\helpref{wxStreamBuffer::WriteBack}{wxstreambufwriteback}
+\helpref{wxStreamBuffer::Write}{wxstreambufferwrite}
\func{size\_t}{Read}{\param{wxStreamBuffer *}{buffer}}
Reads a \it{buffer}. The function returns when \it{buffer} is full or
when there aren't datas anymore in the current buffer.
-\membersection{wxStreamBuffer::Write}
+\membersection{wxStreamBuffer::Write}\label{wxstreambufferwrite}
\func{size\_t}{Write}{\param{const void *}{buffer}, \param{size\_t }{size}}
\func{size\_t}{Write}{\param{wxStreamBuffer *}{buffer}}
-See \helpref{Read}{wxstreambufreadbuf}
-
-\membersection{wxStreamBuffer::WriteBack}\label{wxstreambufwriteback}
-
-\func{size\_t}{WriteBack}{\param{const char*}{ buffer}, \param{size\_t}{ size}}
-
-This function is only useful in \it{read} mode. It is the manager of the "Write-Back"
-buffer. This buffer acts like a temporary buffer where datas which has to be
-read during the next read IO call are put. This is useful when you get a big
-block of data which you didn't want to read: you can replace them at the top
-of the input queue by this way.
-
-\wxheading{Return value}
-
-Returns the amount of bytes saved in the Write-Back buffer.
-
-\func{size\_t}{WriteBack}{\param{char }{c}}
-
-This function acts like the previous one except that it takes only one
-character: it is sometimes shorter to use than the generic function.
+See \helpref{Read}{wxstreambufferread}.
\membersection{wxStreamBuffer::GetChar}
\wxheading{See also}
-\helpref{wxStreamBuffer::Read}{wxstreambufread}
+\helpref{wxStreamBuffer::Read}{wxstreambufferread}
\membersection{wxStreamBuffer::PutChar}
\wxheading{See also}
-\helpref{wxStreamBuffer::Read}{wxstreambufwrite}
+\helpref{wxStreamBuffer::Read}{wxstreambufferwrite}
\membersection{wxStreamBuffer::Tell}
Resets to the initial state variables concerning the buffer.
-\membersection{wxStreamBuffer::SetBufferIO}\label{wxstreambufsetbufferio}
+\membersection{wxStreamBuffer::SetBufferIO}\label{wxstreambuffersetbufferio}
\func{void}{SetBufferIO}{\param{char*}{ buffer\_start}, \param{char*}{ buffer\_end}}
\wxheading{See also}
\helpref{wxStreamBuffer constructor}{wxstreambufconst}\\
-\helpref{wxStreamBuffer::Fixed}{wxstreambuffixed}\\
-\helpref{wxStreamBuffer::Flushable}{wxstreambufflushable}
+\helpref{wxStreamBuffer::Fixed}{wxstreambufferfixed}\\
+\helpref{wxStreamBuffer::Flushable}{wxstreambufferflushable}
\func{void}{SetBufferIO}{\param{size\_t}{ bufsize}}
\wxheading{See also}
-\helpref{wxStreamBuffer::Fixed}{wxstreambuffixed}\\
-\helpref{wxStreamBuffer::Flushable}{wxstreambufflushable}
+\helpref{wxStreamBuffer::Fixed}{wxstreambufferfixed}\\
+\helpref{wxStreamBuffer::Flushable}{wxstreambufferflushable}
\membersection{wxStreamBuffer::GetBufferStart}
\func{void}{SetIntPosition}{\void}
-Sets the current position in the stream buffer.
+Sets the current position (in bytes) in the stream buffer.
+
+\wxheading{Warning}
+
+Since it is a very low-level function, there is no check on the position:
+specify an invalid position can induce unexpected results.
\membersection{wxStreamBuffer::GetLastAccess}
Returns the amount of bytes read during the last IO call to the parent stream.
-\membersection{wxStreamBuffer::Fixed}
+\membersection{wxStreamBuffer::Fixed}\label{wxstreambufferfixed}
\func{void}{Fixed}{\param{bool}{ fixed}}
\wxheading{See also}
-\helpref{wxStreamBuffer::SetBufferIO}{wxstreambufsetbufferio}
+\helpref{wxStreamBuffer::SetBufferIO}{wxstreambuffersetbufferio}
-\membersection{wxStreamBuffer::Flushable}
+\membersection{wxStreamBuffer::Flushable}\label{wxstreambufferflushable}
\func{void}{Flushable}{\param{bool}{ flushable}}