- Disable sound initialization to prevent hanging
- Add missing import re in utils.py
- Fix settings loading for QSettings
- Update file paths to use PROJECT_ROOT
- Revert to working API paths and listener from commit efdc63e
96 lines
3.2 KiB
Plaintext
96 lines
3.2 KiB
Plaintext
// qudpsocket.sip generated by MetaSIP
|
|
//
|
|
// This file is part of the QtNetwork Python extension module.
|
|
//
|
|
// Copyright (c) 2025 Riverbank Computing Limited <info@riverbankcomputing.com>
|
|
//
|
|
// This file is part of PyQt6.
|
|
//
|
|
// This file may be used under the terms of the GNU General Public License
|
|
// version 3.0 as published by the Free Software Foundation and appearing in
|
|
// the file LICENSE included in the packaging of this file. Please review the
|
|
// following information to ensure the GNU General Public License version 3.0
|
|
// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
|
|
//
|
|
// If you do not wish to use this file under the terms of the GPL version 3.0
|
|
// then you may purchase a commercial license. For more information contact
|
|
// info@riverbankcomputing.com.
|
|
//
|
|
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
|
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
|
|
class QUdpSocket : public QAbstractSocket
|
|
{
|
|
%TypeHeaderCode
|
|
#include <qudpsocket.h>
|
|
%End
|
|
|
|
public:
|
|
explicit QUdpSocket(QObject *parent /TransferThis/ = 0);
|
|
virtual ~QUdpSocket();
|
|
bool hasPendingDatagrams() const;
|
|
qint64 pendingDatagramSize() const;
|
|
SIP_PYOBJECT readDatagram(qint64 maxlen, QHostAddress *host /Out/ = 0, quint16 *port = 0) /TypeHint="bytes",ReleaseGIL/;
|
|
%MethodCode
|
|
// Return the data read or None if there was an error.
|
|
if (a0 < 0)
|
|
{
|
|
PyErr_SetString(PyExc_ValueError, "maximum length of data to be read cannot be negative");
|
|
sipIsErr = 1;
|
|
}
|
|
else
|
|
{
|
|
char *s = new char[a0];
|
|
qint64 len;
|
|
|
|
Py_BEGIN_ALLOW_THREADS
|
|
len = sipCpp->readDatagram(s, a0, a1, &a2);
|
|
Py_END_ALLOW_THREADS
|
|
|
|
if (len < 0)
|
|
{
|
|
Py_INCREF(Py_None);
|
|
sipRes = Py_None;
|
|
}
|
|
else
|
|
{
|
|
sipRes = PyBytes_FromStringAndSize(s, len);
|
|
|
|
if (!sipRes)
|
|
sipIsErr = 1;
|
|
}
|
|
|
|
delete[] s;
|
|
}
|
|
%End
|
|
|
|
QNetworkDatagram receiveDatagram(qint64 maxSize = -1) /ReleaseGIL/;
|
|
qint64 writeDatagram(SIP_PYBUFFER, const QHostAddress &, quint16) /ReleaseGIL/;
|
|
%MethodCode
|
|
sipBufferInfoDef bi;
|
|
|
|
if (sipGetBufferInfo(a0, &bi) > 0)
|
|
{
|
|
Py_BEGIN_ALLOW_THREADS
|
|
sipRes = sipCpp->writeDatagram(reinterpret_cast<char *>(bi.bi_buf),
|
|
bi.bi_len, *a1, a2);
|
|
Py_END_ALLOW_THREADS
|
|
|
|
sipReleaseBufferInfo(&bi);
|
|
}
|
|
else
|
|
{
|
|
sipIsErr = 1;
|
|
}
|
|
%End
|
|
|
|
qint64 writeDatagram(const QNetworkDatagram &datagram) /ReleaseGIL/;
|
|
bool joinMulticastGroup(const QHostAddress &groupAddress);
|
|
bool joinMulticastGroup(const QHostAddress &groupAddress, const QNetworkInterface &iface);
|
|
bool leaveMulticastGroup(const QHostAddress &groupAddress);
|
|
bool leaveMulticastGroup(const QHostAddress &groupAddress, const QNetworkInterface &iface);
|
|
QNetworkInterface multicastInterface() const;
|
|
void setMulticastInterface(const QNetworkInterface &iface);
|
|
};
|