// Copyright (C) 2017-2016 Ford Motor Company // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only #ifndef QQNXNATIVESERVER_H #define QQNXNATIVESERVER_H #include #include QT_BEGIN_NAMESPACE class QQnxNativeServerPrivate; class QQnxNativeIo; class QIOQnxSource; class Q_REMOTEOBJECTS_EXPORT QQnxNativeServer : public QObject { Q_OBJECT Q_DECLARE_PRIVATE(QQnxNativeServer) Q_SIGNALS: void newConnection(); public: explicit QQnxNativeServer(QObject *parent = nullptr); ~QQnxNativeServer(); void close(); bool hasPendingConnections() const; bool isListening() const; bool listen(const QString &name); QSharedPointer nextPendingConnection(); QString serverName() const; bool waitForNewConnection(int msec = 0, bool *timedOut = nullptr); private Q_SLOTS: void onSourceClosed(); private: Q_DISABLE_COPY(QQnxNativeServer) friend class QIOQnxSource; }; QT_END_NAMESPACE #endif // QQNXNATIVESERVER_H