PuzzleSDK
WebSocketDelayTest.h
浏览该文件的文档.
1#pragma once
2
3#include "cocos2d.h"
4#include "extensions/cocos-ext.h"
5#include "network/WebSocket.h"
6#include "BaseTest.h"
7
8#include <chrono>
9
11, public cocos2d::network::WebSocket::Delegate
12{
13public:
15
17 virtual ~WebSocketDelayTest();
18
19 virtual void onExit() override;
20
21 virtual void onOpen(cocos2d::network::WebSocket* ws)override;
22 virtual void onMessage(cocos2d::network::WebSocket* ws, const cocos2d::network::WebSocket::Data& data)override;
23 virtual void onClose(cocos2d::network::WebSocket* ws)override;
24 virtual void onError(cocos2d::network::WebSocket* ws, const cocos2d::network::WebSocket::ErrorCode& error)override;
25
26 // Menu Callbacks
27 void onMenuSendTextClicked(cocos2d::Ref *sender);
28
29 virtual std::string title() const override { return "WebSocket Delay Test"; }
30 void startTestCallback(cocos2d::Ref* sender);
31
33 {
34 auto now = std::chrono::high_resolution_clock::now();
35 return std::chrono::duration_cast<std::chrono::microseconds>(now.time_since_epoch()).count();
36 }
37
38 void doSendText();
39 void doReceiveText();
40
41private:
42 cocos2d::network::WebSocket* _wsiSendText;
43
44 cocos2d::Label* _sendTextStatus;
45 cocos2d::Label* _progressStatus;
46 cocos2d::Menu* _startTestMenu;
47
49 int64_t _sendTimeMircoSec = 0;
51
54};
55
cocos2d::Menu * _startTestMenu
virtual void onOpen(cocos2d::network::WebSocket *ws) override
virtual void onClose(cocos2d::network::WebSocket *ws) override
cocos2d::Label * _progressStatus
virtual void onExit() override
cocos2d::Label * _sendTextStatus
CREATE_FUNC(WebSocketDelayTest)
cocos2d::network::WebSocket * _wsiSendText
virtual void onMessage(cocos2d::network::WebSocket *ws, const cocos2d::network::WebSocket::Data &data) override
virtual std::string title() const override
void onMenuSendTextClicked(cocos2d::Ref *sender)
void startTestCallback(cocos2d::Ref *sender)
virtual void onError(cocos2d::network::WebSocket *ws, const cocos2d::network::WebSocket::ErrorCode &error) override