Orb/Doxygen/qtools/qbuffer.h
changeset 0 42188c7ea2d9
equal deleted inserted replaced
-1:000000000000 0:42188c7ea2d9
       
     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