X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/39b91ecabeb35ad879412df1bcd1cec9ea97a20a..e815120e412d91e79c98dd0afac2a1e399f10810:/docs/latex/wx/inputstr.tex?ds=sidebyside diff --git a/docs/latex/wx/inputstr.tex b/docs/latex/wx/inputstr.tex index 9edd5d824a..8fa169ef5d 100644 --- a/docs/latex/wx/inputstr.tex +++ b/docs/latex/wx/inputstr.tex @@ -3,6 +3,8 @@ % ----------------------------------------------------------------------------- \section{\class{wxInputStream}}\label{wxinputstream} +wxInputStream is an abstract base class which may not be used directly. + \wxheading{Derived from} \helpref{wxStreamBase}{wxstreambase} @@ -11,26 +13,59 @@ +\wxheading{Library} + +\helpref{wxBase}{librarieslist} + +\latexignore{\rtfignore{\wxheading{Members}}} + % ----------- % 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} -Returns the first character in the input queue and removes it. +Returns the first character in the input queue and removes it, +blocking until it appears if necessary. + +\wxheading{Note} + +If EOF, return value is undefined and LastRead() will return 0 and not 1. + +\membersection{wxInputStream::Eof}\label{wxinputstreameof} + +\constfunc{bool}{Eof}{\void} + +Returns true after an attempt has been made to read past the end of the +stream. + +\wxheading{Note} + +In wxWidgets 2.6.x and below some streams returned Eof() when the last +byte had been read rather than when an attempt had been made to read +past the last byte. If you want to avoid depending on one behaviour or +the other then call \helpref{LastRead()}{wxinputstreamlastread} to +check the number of bytes actually read. \membersection{wxInputStream::LastRead}\label{wxinputstreamlastread} @@ -38,17 +73,23 @@ Returns the first character in the input queue and removes it. Returns the last number of bytes read. -\membersection{wxInputStream::Peek} +\membersection{wxInputStream::Peek}\label{wxinputstreampeek} \func{char}{Peek}{\void} Returns the first character in the input queue without removing it. -\membersection{wxInputStream::Read} +\wxheading{Note} + +Blocks until something appears in the stream if necessary, if nothing +ever does (i.e. EOF) LastRead() will return 0 (and the return value is +undefined), otherwise LastRead() returns 1. + +\membersection{wxInputStream::Read}\label{wxinputstreamread} \func{wxInputStream\&}{Read}{\param{void *}{buffer}, \param{size\_t}{ size}} -Reads the specified amount of bytes and stores the data in \it{buffer}. +Reads the specified amount of bytes and stores the data in {\it buffer}. \wxheading{Warning} @@ -69,28 +110,43 @@ The data is read until an error is raised by one of the two streams. This function returns a reference on the current object, so the user can test any states of the stream right away. -\membersection{wxInputStream::SeekI} +\membersection{wxInputStream::SeekI}\label{wxinputstreamseeki} \func{off\_t}{SeekI}{\param{off\_t}{ pos}, \param{wxSeekMode}{ mode = wxFromStart}} Changes the stream current position. -\membersection{wxInputStream::TellI} +\wxheading{Parameters} + +\docparam{pos}{Offset to seek to.} + +\docparam{mode}{One of {\bf wxFromStart}, {\bf wxFromEnd}, {\bf wxFromCurrent}.} + +\wxheading{Return value} + +The new stream position or wxInvalidOffset on error. + +\membersection{wxInputStream::TellI}\label{wxinputstreamtelli} \constfunc{off\_t}{TellI}{\void} Returns the current stream position. -\membersection{wxInputStream::Ungetch}\label{wxinputstream_ungetch} +\membersection{wxInputStream::Ungetch}\label{wxinputstreamungetch} \func{size\_t}{Ungetch}{\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 +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 data 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. +Be very careful about this call in connection with calling SeekI() on the same +stream. Any call to SeekI() will invalidate any previous call to this method +(otherwise you could SeekI() to one position, "unread" a few bytes there, SeekI() +to another position and data would be either lost or corrupted). + \wxheading{Return value} Returns the amount of bytes saved in the Write-Back buffer.