22 Q_DECLARE_PRIVATE(QLocalSocket)
23 Q_PROPERTY(SocketOptions socketOptions READ socketOptions WRITE setSocketOptions
24 BINDABLE bindableSocketOptions)
29 ConnectionRefusedError = QAbstractSocket::ConnectionRefusedError,
30 PeerClosedError = QAbstractSocket::RemoteHostClosedError,
31 ServerNotFoundError = QAbstractSocket::HostNotFoundError,
32 SocketAccessError = QAbstractSocket::SocketAccessError,
33 SocketResourceError = QAbstractSocket::SocketResourceError,
34 SocketTimeoutError = QAbstractSocket::SocketTimeoutError,
35 DatagramTooLargeError = QAbstractSocket::DatagramTooLargeError,
36 ConnectionError = QAbstractSocket::NetworkError,
37 UnsupportedSocketOperationError = QAbstractSocket::UnsupportedSocketOperationError,
38 UnknownSocketError = QAbstractSocket::UnknownSocketError,
39 OperationError = QAbstractSocket::OperationError
41 Q_ENUM(LocalSocketError)
45 UnconnectedState = QAbstractSocket::UnconnectedState,
46 ConnectingState = QAbstractSocket::ConnectingState,
47 ConnectedState = QAbstractSocket::ConnectedState,
48 ClosingState = QAbstractSocket::ClosingState
50 Q_ENUM(LocalSocketState)
54 AbstractNamespaceOption = 0x01
56 Q_DECLARE_FLAGS(SocketOptions, SocketOption)
59 QLocalSocket(QObject *parent =
nullptr);
62 void connectToServer(OpenMode openMode = ReadWrite);
63 void connectToServer(
const QString &name, OpenMode openMode = ReadWrite);
64 void disconnectFromServer();
66 void setServerName(
const QString &name);
67 QString serverName()
const;
68 QString fullServerName()
const;
71 virtual bool isSequential()
const override;
72 virtual qint64 bytesAvailable()
const override;
73 virtual qint64 bytesToWrite()
const override;
74 virtual bool canReadLine()
const override;
75 virtual bool open(OpenMode openMode = ReadWrite) override;
76 virtual void close() override;
77 LocalSocketError error()
const;
80 qint64 readBufferSize()
const;
81 void setReadBufferSize(qint64 size);
83 bool setSocketDescriptor(qintptr socketDescriptor,
84 LocalSocketState socketState = ConnectedState,
85 OpenMode openMode = ReadWrite);
86 qintptr socketDescriptor()
const;
88 void setSocketOptions(SocketOptions option);
89 SocketOptions socketOptions()
const;
90 QBindable<SocketOptions> bindableSocketOptions();
92 LocalSocketState state()
const;
94 using QIODevice::waitForBytesWritten;
95 using QIODevice::waitForReadyRead;
96 bool waitForBytesWritten(QDeadlineTimer deadline = std::chrono::seconds(30)) QT7_ONLY(override);
97 bool waitForConnected(QDeadlineTimer deadline = std::chrono::seconds(30));
98 bool waitForDisconnected(QDeadlineTimer deadline = std::chrono::seconds(30));
99 bool waitForReadyRead(QDeadlineTimer deadline = std::chrono::seconds(30)) QT7_ONLY(override);
101#if QT_VERSION < QT_VERSION_CHECK(7
, 0
, 0
)
102 QT_NETWORK_INLINE_SINCE(6, 13)
103 bool waitForBytesWritten(
int msecs) override;
105 QT_NETWORK_INLINE_SINCE(6, 13)
106 bool waitForConnected(
int msecs);
107 QT_NETWORK_INLINE_SINCE(6, 13)
108 bool waitForDisconnected(
int msecs);
109#if QT_VERSION < QT_VERSION_CHECK(7
, 0
, 0
)
110 QT_NETWORK_INLINE_SINCE(6, 13)
111 bool waitForReadyRead(
int msecs) override;
117 void errorOccurred(QLocalSocket::LocalSocketError socketError);
118 void stateChanged(QLocalSocket::LocalSocketState socketState);
121 virtual qint64 readData(
char*, qint64) override;
122 qint64 readLineData(
char *data, qint64 maxSize) override;
123 qint64 skipData(qint64 maxSize) override;
124 virtual qint64 writeData(
const char*, qint64) override;
127 Q_DISABLE_COPY(QLocalSocket)
128#if defined(QT_LOCALSOCKET_TCP)
129 Q_PRIVATE_SLOT(d_func(),
void _q_stateChanged(QAbstractSocket::SocketState))
130 Q_PRIVATE_SLOT(d_func(),
void _q_errorOccurred(QAbstractSocket::SocketError))
131#elif defined(Q_OS_WIN)
132 Q_PRIVATE_SLOT(d_func(),
void _q_pipeClosed())
133 Q_PRIVATE_SLOT(d_func(),
void _q_winError(ulong,
const QString &))
135 Q_PRIVATE_SLOT(d_func(),
void _q_stateChanged(QAbstractSocket::SocketState))
136 Q_PRIVATE_SLOT(d_func(),
void _q_errorOccurred(QAbstractSocket::SocketError))
137 Q_PRIVATE_SLOT(d_func(),
void _q_connectToSocket())
138 Q_PRIVATE_SLOT(d_func(),
void _q_abortConnectionAttempt())