ExistQt
ServicePublisher.h
浏览该文件的文档.
1 #ifndef SERVICEPUBLISHER_H
2 #define SERVICEPUBLISHER_H
3 
10 #include "EqPreCompile.h" //QUrl
11 
12 #include "ExistMessage.pb.h" //exist::ServicePublishMessage::ServiceProtocolType
13 #include "EqNetworkThread.h" //EqNetworkThread
14 
18 class ServicePublisher:public QObject
19 {
20  Q_OBJECT
21 
22 signals:
28  void shoudCastData(string datagram);
29 
37  void serviceDiscovered(QString serviceName,quint16 servicePort,ServicePublishMessage::ServiceProtocolType serviceProtocolType,string address);
38 
39 public:
40  void quit();
43  void publishService(QString LanServiceName,quint16 LanServicePort,exist::ServicePublishMessage::ServiceProtocolType LanServiceProtocolType);
44 
45 private:
46  EqNetworkThread networkThread;
47  void reportServiceDiscovered(ExistMessage existMessage, string address);
48  void processDatagram(char *datagram, int datagramLength, QHostAddress senderAddress);
49  void connectSignals();
50  void listen();
51  const quint16 MulticastPort=16574;
52  void startNetworkThread();
53 }; //class EXISTQTSHARED_EXPORT GameInfo:public QObject
54 
55 #endif // GAMEINFO_H
The ServicePublisher class 这个类用于向局域网中发布服务。这是ExistCpp的主要接口。 ...
void serviceDiscovered(QString serviceName, quint16 servicePort, ServicePublishMessage::ServiceProtocolType serviceProtocolType, string address)
serviceDiscovered 信号,发现了服务。
~ServicePublisher()
析构函数。
ServicePublisher()
默认构造函数。
void shoudCastData(string datagram)
shoudCastData 信号,应当发送数据。
void publishService(QString LanServiceName, quint16 LanServicePort, exist::ServicePublishMessage::ServiceProtocolType LanServiceProtocolType)
发布服务。
void quit()
退出。