Root/
Source at commit 1322 created 12 years 8 months ago. By meklort, Add doxygen to utils folder | |
---|---|
1 | /****************************************************************************␊ |
2 | ** ␊ |
3 | **␊ |
4 | ** Definition of QBuffer class␊ |
5 | **␊ |
6 | ** Created : 930812␊ |
7 | **␊ |
8 | ** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.␊ |
9 | **␊ |
10 | ** This file is part of the tools module of the Qt GUI Toolkit.␊ |
11 | **␊ |
12 | ** This file may be distributed under the terms of the Q Public License␊ |
13 | ** as defined by Trolltech AS of Norway and appearing in the file␊ |
14 | ** LICENSE.QPL included in the packaging of this file.␊ |
15 | **␊ |
16 | ** This file may be distributed and/or modified under the terms of the␊ |
17 | ** GNU General Public License version 2 as published by the Free Software␊ |
18 | ** Foundation and appearing in the file LICENSE.GPL included in the␊ |
19 | ** packaging of this file.␊ |
20 | **␊ |
21 | ** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition␊ |
22 | ** licenses may use this file in accordance with the Qt Commercial License␊ |
23 | ** Agreement provided with the Software.␊ |
24 | **␊ |
25 | ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE␊ |
26 | ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.␊ |
27 | **␊ |
28 | ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for␊ |
29 | ** information about Qt Commercial License Agreements.␊ |
30 | ** See http://www.trolltech.com/qpl/ for QPL licensing information.␊ |
31 | ** See http://www.trolltech.com/gpl/ for GPL licensing information.␊ |
32 | **␊ |
33 | ** Contact info@trolltech.com if any conditions of this licensing are␊ |
34 | ** not clear to you.␊ |
35 | **␊ |
36 | **********************************************************************/␊ |
37 | ␊ |
38 | #ifndef QBUFFER_H␊ |
39 | #define QBUFFER_H␊ |
40 | ␊ |
41 | #ifndef QT_H␊ |
42 | #include "qiodevice.h"␊ |
43 | #include "qstring.h"␊ |
44 | #endif // QT_H␊ |
45 | ␊ |
46 | ␊ |
47 | class Q_EXPORT QBuffer : public QIODevice␊ |
48 | {␊ |
49 | public:␊ |
50 | QBuffer();␊ |
51 | QBuffer( QByteArray );␊ |
52 | ~QBuffer();␊ |
53 | ␊ |
54 | QByteArray buffer() const;␊ |
55 | bool setBuffer( QByteArray );␊ |
56 | ␊ |
57 | bool open( int );␊ |
58 | void close();␊ |
59 | void flush();␊ |
60 | ␊ |
61 | uint size() const;␊ |
62 | int␉ at()␉ const;␊ |
63 | bool at( int );␊ |
64 | ␊ |
65 | int␉ readBlock( char *p, uint );␊ |
66 | int␉ writeBlock( const char *p, uint );␊ |
67 | int␉ readLine( char *p, uint );␊ |
68 | ␊ |
69 | int␉ getch();␊ |
70 | int␉ putch( int );␊ |
71 | int␉ ungetch( int );␊ |
72 | ␊ |
73 | protected:␊ |
74 | QByteArray a;␊ |
75 | ␊ |
76 | private:␊ |
77 | uint a_len;␊ |
78 | uint a_inc;␊ |
79 | ␊ |
80 | private:␉// Disabled copy constructor and operator=␊ |
81 | #if defined(Q_DISABLE_COPY)␊ |
82 | QBuffer( const QBuffer & );␊ |
83 | QBuffer &operator=( const QBuffer & );␊ |
84 | #endif␊ |
85 | };␊ |
86 | ␊ |
87 | ␊ |
88 | inline QByteArray QBuffer::buffer() const␊ |
89 | { return a; }␊ |
90 | ␊ |
91 | inline uint QBuffer::size() const␊ |
92 | { return a.size(); }␊ |
93 | ␊ |
94 | inline int QBuffer::at() const␊ |
95 | { return ioIndex; }␊ |
96 | ␊ |
97 | ␊ |
98 | #endif // QBUFFER_H␊ |
99 |