Utilisation de QWebSocket::ping
Bonsoir,
J'ai une série de test ICMP à faire sur plusieurs Ip, et je souhaite utiliser le pingpong de QWebSocket : http://doc.qt.io/qt-5/qwebsocket.html
SIGNAL :
void QWebSocket::pong(quint64 elapsedTime, const QByteArray &payload)
SLOT :
void QWebSocket::ping(const QByteArray &payload = QByteArray())
J'ai créé la classe 'classe.h' en guise de test en m'inspirant des exemples de la Doc :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| #ifndef CLASSE_H
#define CLASSE_H
#include <QtCore/QObject>
#include <QtWebSockets/QWebSocket>
QT_USE_NAMESPACE
class classe : public QObject
{
Q_OBJECT
public:
classe();
// const QByteArray playload = "192.168.109.2";
Q_SIGNALS:
void closed();
void QWebSocket::pong(quint64 elapsedTime, const QByteArray &payload);
private Q_SLOTS:
void QWebSocket::ping(const QByteArray &payload = QByteArray());
private:
QWebSocket m_webSocket;
QUrl m_url;
bool m_debug;
};
#endif // CLASSE_H |
Malheureusement je n'arrive pas à déclarer les deux fonctions membres ping et pong, la compilation me renvoie :
Citation:
/home/developer/icmp_ping/classe.h:24: erreur : cannot declare member function 'QWebSocket::pong' within 'classe' void QWebSocket::pong(quint64 elapsedTime, const QByteArray &payload);
/home/developer/icmp_ping/classe.h:30: erreur : cannot declare member function 'QWebSocket::ping' within 'classe' void QWebSocket::ping(const QByteArray &payload = QByteArray());
Je travail avec Qt 5.6.2,
Mon .pro ressemble à :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
QT += core websockets
QT -= gui
TARGET = echoclient
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += \
main.cpp \
echoclient.cpp
HEADERS += \
echoclient.h
target.path = $$[QT_INSTALL_EXAMPLES]/websockets/echoclient
INSTALLS += target |
Mon main et mon classe.cpp n'ont rien de particuliers :
Code:
1 2 3 4 5 6 7 8 9 10
| #include <QtCore/QCoreApplication>
#include "classe.h"
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
return a.exec();
} |
Code:
1 2 3 4 5 6 7 8 9 10
|
#include "classe.h"
#include <QtCore/QDebug>
classe::classe()
{
} |
J'aimerais comprendre ce que j'ai raté dans l'intégration des ces deux méthodes :?...