Skip to content

网络模块接口文档

Ben edited this page May 29, 2017 · 4 revisions

包含文件

除了GameMessage相关的文件外,有: socket_message.h, SocketClient.h,SocketClient.cpp,SocketServer.h,SocketServer.cpp 其中第一个文件是socket传输中一个简单的带header的协议文件,其余四个是需要用到的。

SocketClient 接口

注:未列出接口未网络传输内部实现所需,与应用无关

  • static SocketClient* create(std::string ip="127.0.0.1",int port = 8008): 构造函数,返回一个指向client的指针。
  • std::vector<GameMessage> get_game_messages(): 用于接收返回信息,使用此函数时应阻塞其他进程,使得如果由网络原因造成的延时现象时,游戏逻辑应为其等待
  • void send_game_message(std::vector<GameMessage> vec_game_msg): 发送游戏数据
  • int camp()const: 获取阵营参数
  • void send_string(std::string s) 测试用
  • std::string get_string() 测试用

SocketClient 接口

注:未列出接口未网络传输内部实现所需,与应用无关

  • static SocketServer* create(int port=8008): 构造函数,返回一个指向server的指针
  • void button_start(): 用于client连接后开始游戏。即向全部client发送开始信息

未完成

  • client和server构造增加端口设置,
  • 未实现client获取阵营函数
  • 掉线处理(目前可能会产生一人掉线全盘皆异常现象(优先级低)