#pragma once #include "XNUDPService_global.h" #include #include class XNUDPServicePrivate; class XNUDPSERVICE_EXPORT XNUDPService : public XNServiceObject { Q_OBJECT Q_DISABLE_COPY(XNUDPService) Q_DECLARE_PRIVATE(XNUDPService) XN_DECLARE_DDS_SERVICE() public: explicit XNUDPService(QObject *parent = nullptr); virtual ~XNUDPService(); protected: XNUDPService(XNUDPServicePrivate &dd, QObject *parent = nullptr); public slots: virtual void OnInitialize() override; virtual void OnPrepareForExecute() override; void HandleIncomingData(); public: void SendData(const QVariant &data); }; Q_DECLARE_METATYPE(XNUDPService)