summaryrefslogtreecommitdiffstats
path: root/python/pykde/sip/kdecore/kbufferedio.sip
blob: 995c8639d11caeae84417ceb3aeef5e7303677d1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
//
//     Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
//     Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
//     may also apply


//                 Generated by preSip
//            module kdecore  version KDE 3.5.3


// This software is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License as
// published by the Free Software Foundation; either version 2 of
// the License, or (at your option) any later version.
//
// This software is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public
// License along with this library; see the file COPYING.
// If not, write to the Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.


class KBufferedIO : KAsyncIO
{
%TypeHeaderCode
#include <kbufferedio.h>
%End


protected:
                         KBufferedIO ();

public:

    enum closeModes
    {
        availRead, 
        dirtyWrite, 
        involuntary, 
        delayed, 
        closedNow
    };

    virtual void         closeNow ()  = 0;
    virtual bool         setBufferSize (int, int = -2);
    virtual int          bytesAvailable () const;
    virtual int          waitForMore (int)  = 0;
    virtual int          bytesToWrite () const;
    virtual bool         canReadLine () const;
    virtual int          peekBlock (char*, uint)  = 0;
    virtual int          unreadBlock (const char*, uint);

signals:
    void                 bytesWritten (int);
    void                 closed (int);

protected:
    virtual uint         consumeReadBuffer (uint, char*, bool = 1);
    virtual void         consumeWriteBuffer (uint);
    virtual uint         feedReadBuffer (uint, const char*, bool = 0);
    virtual uint         feedWriteBuffer (uint, const char*);
    virtual uint         readBufferSize () const;
    virtual uint         writeBufferSize () const;

protected:
//igx     virtual void         virtual_hook (int, void*);

};  // class KBufferedIO