% -----------
% ctor & dtor
% -----------
-\membersection{wxInputStream::wxInputStream}
+\membersection{wxInputStream::wxInputStream}\label{wxinputstreamctor}
\func{}{wxInputStream}{\void}
Creates a dummy input stream.
-\membersection{wxInputStream::\destruct{wxInputStream}}
+\membersection{wxInputStream::\destruct{wxInputStream}}\label{wxinputstreamdtor}
\func{}{\destruct{wxInputStream}}{\void}
Destructor.
-\membersection{wxInputStream::GetC}
+\membersection{wxInputStream::CanRead}\label{wxinputstreamcanread}
+
+\constfunc{bool}{CanRead}{\void}
+
+Returns true if some data is available in the stream right now, so that
+calling \helpref{Read()}{wxinputstreamread} wouldn't block.
+
+\membersection{wxInputStream::GetC}\label{wxinputstreamgetc}
\func{char}{GetC}{\void}
\membersection{wxInputStream::Eof}\label{wxinputstreameof}
-\constfunc{wxInputStream}{Eof}{\void}
+\constfunc{bool}{Eof}{\void}
Returns true if the end of stream has been reached.
\wxheading{Note}
-This cannot be really implemented for all streams and CanRead() is more
-reliable than Eof().
+For some streams Eof() will not return true until an
+attempt has been made to read past the end of the stream.
+\helpref{LastRead()}{wxinputstreamlastread}
+should be called after each read to check that
+a non-zero number of bytes have been read.
\membersection{wxInputStream::LastRead}\label{wxinputstreamlastread}
Returns the last number of bytes read.
-\membersection{wxInputStream::Peek}
+\membersection{wxInputStream::Peek}\label{wxinputstreampeek}
\func{char}{Peek}{\void}
ever does (i.e. EOF) LastRead() will return 0 (and the return value is
undefined), otherwise LastRead() returns 1.
-\membersection{wxInputStream::Read}
+\membersection{wxInputStream::Read}\label{wxinputstreamread}
\func{wxInputStream\&}{Read}{\param{void *}{buffer}, \param{size\_t}{ size}}
The new stream position or wxInvalidOffset on error.
-\membersection{wxInputStream::TellI}
+\membersection{wxInputStream::TellI}\label{wxinputstreamtelli}
\constfunc{off\_t}{TellI}{\void}