mirror of
https://github.com/bluszcz/cutego.git
synced 2024-09-29 05:35:16 +03:00
116 lines
3 KiB
Go
Executable file
116 lines
3 KiB
Go
Executable file
package network
|
|
|
|
//#include "network.h"
|
|
import "C"
|
|
import (
|
|
"github.com/therecipe/qt"
|
|
"github.com/therecipe/qt/core"
|
|
"unsafe"
|
|
)
|
|
|
|
type QUdpSocket struct {
|
|
QAbstractSocket
|
|
}
|
|
|
|
type QUdpSocket_ITF interface {
|
|
QAbstractSocket_ITF
|
|
QUdpSocket_PTR() *QUdpSocket
|
|
}
|
|
|
|
func PointerFromQUdpSocket(ptr QUdpSocket_ITF) unsafe.Pointer {
|
|
if ptr != nil {
|
|
return ptr.QUdpSocket_PTR().Pointer()
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func NewQUdpSocketFromPointer(ptr unsafe.Pointer) *QUdpSocket {
|
|
var n = new(QUdpSocket)
|
|
n.SetPointer(ptr)
|
|
for len(n.ObjectName()) < len("QUdpSocket_") {
|
|
n.SetObjectName("QUdpSocket_" + qt.Identifier())
|
|
}
|
|
return n
|
|
}
|
|
|
|
func (ptr *QUdpSocket) QUdpSocket_PTR() *QUdpSocket {
|
|
return ptr
|
|
}
|
|
|
|
func NewQUdpSocket(parent core.QObject_ITF) *QUdpSocket {
|
|
defer qt.Recovering("QUdpSocket::QUdpSocket")
|
|
|
|
return NewQUdpSocketFromPointer(C.QUdpSocket_NewQUdpSocket(core.PointerFromQObject(parent)))
|
|
}
|
|
|
|
func (ptr *QUdpSocket) HasPendingDatagrams() bool {
|
|
defer qt.Recovering("QUdpSocket::hasPendingDatagrams")
|
|
|
|
if ptr.Pointer() != nil {
|
|
return C.QUdpSocket_HasPendingDatagrams(ptr.Pointer()) != 0
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (ptr *QUdpSocket) JoinMulticastGroup(groupAddress QHostAddress_ITF) bool {
|
|
defer qt.Recovering("QUdpSocket::joinMulticastGroup")
|
|
|
|
if ptr.Pointer() != nil {
|
|
return C.QUdpSocket_JoinMulticastGroup(ptr.Pointer(), PointerFromQHostAddress(groupAddress)) != 0
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (ptr *QUdpSocket) JoinMulticastGroup2(groupAddress QHostAddress_ITF, iface QNetworkInterface_ITF) bool {
|
|
defer qt.Recovering("QUdpSocket::joinMulticastGroup")
|
|
|
|
if ptr.Pointer() != nil {
|
|
return C.QUdpSocket_JoinMulticastGroup2(ptr.Pointer(), PointerFromQHostAddress(groupAddress), PointerFromQNetworkInterface(iface)) != 0
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (ptr *QUdpSocket) LeaveMulticastGroup(groupAddress QHostAddress_ITF) bool {
|
|
defer qt.Recovering("QUdpSocket::leaveMulticastGroup")
|
|
|
|
if ptr.Pointer() != nil {
|
|
return C.QUdpSocket_LeaveMulticastGroup(ptr.Pointer(), PointerFromQHostAddress(groupAddress)) != 0
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (ptr *QUdpSocket) LeaveMulticastGroup2(groupAddress QHostAddress_ITF, iface QNetworkInterface_ITF) bool {
|
|
defer qt.Recovering("QUdpSocket::leaveMulticastGroup")
|
|
|
|
if ptr.Pointer() != nil {
|
|
return C.QUdpSocket_LeaveMulticastGroup2(ptr.Pointer(), PointerFromQHostAddress(groupAddress), PointerFromQNetworkInterface(iface)) != 0
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (ptr *QUdpSocket) PendingDatagramSize() int64 {
|
|
defer qt.Recovering("QUdpSocket::pendingDatagramSize")
|
|
|
|
if ptr.Pointer() != nil {
|
|
return int64(C.QUdpSocket_PendingDatagramSize(ptr.Pointer()))
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (ptr *QUdpSocket) SetMulticastInterface(iface QNetworkInterface_ITF) {
|
|
defer qt.Recovering("QUdpSocket::setMulticastInterface")
|
|
|
|
if ptr.Pointer() != nil {
|
|
C.QUdpSocket_SetMulticastInterface(ptr.Pointer(), PointerFromQNetworkInterface(iface))
|
|
}
|
|
}
|
|
|
|
func (ptr *QUdpSocket) DestroyQUdpSocket() {
|
|
defer qt.Recovering("QUdpSocket::~QUdpSocket")
|
|
|
|
if ptr.Pointer() != nil {
|
|
C.QUdpSocket_DestroyQUdpSocket(ptr.Pointer())
|
|
ptr.SetPointer(nil)
|
|
}
|
|
}
|