]> git.saurik.com Git - wxWidgets.git/blob - docs/latex/wx/inputstr.tex
whilst -> while
[wxWidgets.git] / docs / latex / wx / inputstr.tex
1 % -----------------------------------------------------------------------------
2 % wxInputStream
3 % -----------------------------------------------------------------------------
4 \section{\class{wxInputStream}}\label{wxinputstream}
5
6 wxInputStream is an abstract base class which may not be used directly.
7
8 \wxheading{Derived from}
9
10 \helpref{wxStreamBase}{wxstreambase}
11
12 \wxheading{Include files}
13
14 <wx/stream.h>
15
16 \latexignore{\rtfignore{\wxheading{Members}}}
17
18 % -----------
19 % ctor & dtor
20 % -----------
21 \membersection{wxInputStream::wxInputStream}\label{wxinputstreamctor}
22
23 \func{}{wxInputStream}{\void}
24
25 Creates a dummy input stream.
26
27 \membersection{wxInputStream::\destruct{wxInputStream}}\label{wxinputstreamdtor}
28
29 \func{}{\destruct{wxInputStream}}{\void}
30
31 Destructor.
32
33 \membersection{wxInputStream::CanRead}\label{wxinputstreamcanread}
34
35 \constfunc{bool}{CanRead}{\void}
36
37 Returns true if some data is available in the stream right now, so that
38 calling \helpref{Read()}{wxinputstreamread} wouldn't block.
39
40 \membersection{wxInputStream::GetC}\label{wxinputstreamgetc}
41
42 \func{char}{GetC}{\void}
43
44 Returns the first character in the input queue and removes it,
45 blocking until it appears if necessary.
46
47 \wxheading{Note}
48
49 If EOF, return value is undefined and LastRead() will return 0 and not 1.
50
51 \membersection{wxInputStream::Eof}\label{wxinputstreameof}
52
53 \constfunc{bool}{Eof}{\void}
54
55 Returns true if the end of stream has been reached.
56
57 \wxheading{Note}
58
59 For some streams Eof() will not return true until an
60 attempt has been made to read past the end of the stream.
61 \helpref{LastRead()}{wxinputstreamlastread}
62 should be called after each read to check that
63 a non-zero number of bytes have been read.
64
65 \membersection{wxInputStream::LastRead}\label{wxinputstreamlastread}
66
67 \constfunc{size\_t}{LastRead}{\void}
68
69 Returns the last number of bytes read.
70
71 \membersection{wxInputStream::Peek}\label{wxinputstreampeek}
72
73 \func{char}{Peek}{\void}
74
75 Returns the first character in the input queue without removing it.
76
77 \wxheading{Note}
78
79 Blocks until something appears in the stream if necessary, if nothing
80 ever does (i.e. EOF) LastRead() will return 0 (and the return value is
81 undefined), otherwise LastRead() returns 1.
82
83 \membersection{wxInputStream::Read}\label{wxinputstreamread}
84
85 \func{wxInputStream\&}{Read}{\param{void *}{buffer}, \param{size\_t}{ size}}
86
87 Reads the specified amount of bytes and stores the data in {\it buffer}.
88
89 \wxheading{Warning}
90
91 The buffer absolutely needs to have at least the specified size.
92
93 \wxheading{Return value}
94
95 This function returns a reference on the current object, so the user can test
96 any states of the stream right away.
97
98 \func{wxInputStream\&}{Read}{\param{wxOutputStream\&}{ stream\_out}}
99
100 Reads data from the input queue and stores it in the specified output stream.
101 The data is read until an error is raised by one of the two streams.
102
103 \wxheading{Return value}
104
105 This function returns a reference on the current object, so the user can test
106 any states of the stream right away.
107
108 \membersection{wxInputStream::SeekI}\label{wxinputstreamseeki}
109
110 \func{off\_t}{SeekI}{\param{off\_t}{ pos}, \param{wxSeekMode}{ mode = wxFromStart}}
111
112 Changes the stream current position.
113
114 \wxheading{Parameters}
115
116 \docparam{pos}{Offset to seek to.}
117
118 \docparam{mode}{One of {\bf wxFromStart}, {\bf wxFromEnd}, {\bf wxFromCurrent}.}
119
120 \wxheading{Return value}
121
122 The new stream position or wxInvalidOffset on error.
123
124 \membersection{wxInputStream::TellI}\label{wxinputstreamtelli}
125
126 \constfunc{off\_t}{TellI}{\void}
127
128 Returns the current stream position.
129
130 \membersection{wxInputStream::Ungetch}\label{wxinputstreamungetch}
131
132 \func{size\_t}{Ungetch}{\param{const char*}{ buffer}, \param{size\_t}{ size}}
133
134 This function is only useful in {\it read} mode. It is the manager of the "Write-Back"
135 buffer. This buffer acts like a temporary buffer where data which has to be
136 read during the next read IO call are put. This is useful when you get a big
137 block of data which you didn't want to read: you can replace them at the top
138 of the input queue by this way.
139
140 Be very careful about this call in connection with calling SeekI() on the same
141 stream. Any call to SeekI() will invalidate any previous call to this method
142 (otherwise you could SeekI() to one position, "unread" a few bytes there, SeekI()
143 to another position and data would be either lost or corrupted).
144
145 \wxheading{Return value}
146
147 Returns the amount of bytes saved in the Write-Back buffer.
148
149 \func{bool}{Ungetch}{\param{char }{c}}
150
151 This function acts like the previous one except that it takes only one
152 character: it is sometimes shorter to use than the generic function.
153