summaryrefslogtreecommitdiffstats
path: root/sip/tqtnetwork/tqsocketdevice.sip
diff options
context:
space:
mode:
Diffstat (limited to 'sip/tqtnetwork/tqsocketdevice.sip')
-rw-r--r--sip/tqtnetwork/tqsocketdevice.sip168
1 files changed, 168 insertions, 0 deletions
diff --git a/sip/tqtnetwork/tqsocketdevice.sip b/sip/tqtnetwork/tqsocketdevice.sip
new file mode 100644
index 0000000..32ee5e5
--- /dev/null
+++ b/sip/tqtnetwork/tqsocketdevice.sip
@@ -0,0 +1,168 @@
+// This is the SIP interface definition for TQSocketDevice.
+//
+// Copyright (c) 2007
+// Riverbank Computing Limited <[email protected]>
+//
+// This file is part of PyTQt.
+//
+// This copy of PyTQt 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, or (at your option) any later
+// version.
+//
+// PyTQt is supplied 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
+// PyTQt; see the file LICENSE. If not, write to the Free Software Foundation,
+// Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+%ExportedDoc
+<Sect2><Title>TQSocketDevice (TQt v2.2+)</Title>
+<FuncSynopsis>
+ <FuncDef>TQ_LONG <Function>readBlock</Function></FuncDef>
+ <ParamDef>char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>TQ_ULONG <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a single <Literal>len</Literal> parameter. The
+<Literal>data</Literal> is returned if there was no error, otherwise
+<Literal>None</Literal> is returned.
+</Para>
+
+<FuncSynopsis>
+ <FuncDef>TQ_LONG <Function>writeBlock</Function></FuncDef>
+ <ParamDef>const char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>TQ_ULONG <Parameter>len</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+<Literal>len</Literal> is derived from <Literal>data</Literal> and not passed
+as a parameter.
+</Para>
+</Sect2>
+%End
+
+
+class TQSocketDevice : TQIODevice
+{
+%TypeHeaderCode
+#include <tqsocketdevice.h>
+%End
+
+public:
+ enum Type {
+ Stream,
+ Datagram
+ };
+
+ enum Protocol {
+ IPv4,
+ IPv6,
+ Unknown
+ };
+
+ TQSocketDevice(Type = Stream);
+ TQSocketDevice(Type,Protocol,int);
+ TQSocketDevice(int,Type);
+
+ bool isValid() const;
+ Type type() const;
+ Protocol protocol() const;
+
+ int socket() const;
+ virtual void setSocket(int,Type);
+
+ bool open(int) /ReleaseGIL/;
+ void close();
+ void flush() /ReleaseGIL/;
+
+ Offset size() const;
+ Offset at() const;
+ bool at(Offset);
+ bool atEnd() const;
+
+ bool blocking() const;
+ virtual void setBlocking(bool);
+
+ bool addressReusable() const;
+ virtual void setAddressReusable(bool);
+
+ int receiveBufferSize() const;
+ virtual void setReceiveBufferSize(uint);
+ int sendBufferSize() const;
+ virtual void setSendBufferSize(uint);
+
+ virtual bool connect(const TQHostAddress &,TQ_UINT16);
+
+ virtual bool bind(const TQHostAddress &,TQ_UINT16);
+ virtual bool listen(int);
+ virtual int accept();
+
+ TQ_LONG bytesAvailable() const;
+ TQ_LONG waitForMore(int) const /ReleaseGIL/;
+
+ SIP_PYOBJECT readBlock(TQ_ULONG) /ReleaseGIL/ [TQ_LONG (char *,TQ_ULONG)];
+%MethodCode
+ char *buf;
+
+ if ((buf = (char *)sipMalloc(a0)) == NULL)
+ sipIsErr = 1;
+ else
+ {
+ TQ_LONG actlen;
+
+ Py_BEGIN_ALLOW_THREADS
+ actlen = sipSelfWasArg ? sipCpp->TQSocketDevice::readBlock(buf, a0) : sipCpp->readBlock(buf, a0);
+ Py_END_ALLOW_THREADS
+
+ if (actlen < 0)
+ {
+ Py_INCREF(Py_None);
+ sipRes = Py_None;
+ }
+ else if ((sipRes = PyBytes_FromStringAndSize(buf,actlen)) == NULL)
+ sipIsErr = 1;
+
+ sipFree((void *)buf);
+ }
+%End
+
+
+ TQ_LONG writeBlock(const char * /Array/,
+ TQ_ULONG /ArraySize/) /ReleaseGIL/;
+ virtual TQ_LONG writeBlock(const char * /Array/,TQ_ULONG /ArraySize/,
+ const TQHostAddress &,TQ_UINT16) /ReleaseGIL/;
+
+ int getch();
+ int putch(int);
+ int ungetch(int);
+
+ TQ_UINT16 port() const;
+ TQ_UINT16 peerPort() const;
+ TQHostAddress address() const;
+ TQHostAddress peerAddress() const;
+
+ enum Error {
+ NoError,
+ AlreadyBound,
+ Inaccessible,
+ NoResources,
+ Bug,
+ Impossible,
+ NoFiles,
+ ConnectionRefused,
+ NetworkFailure,
+ UnknownError
+ };
+
+ Error error() const;
+
+protected:
+ void setError(Error);
+
+private:
+ TQSocketDevice(const TQSocketDevice &);
+};