tcp_game.h File Reference

Basic functions to receive and send TCP packets for game purposes. More...

#include "os_abstraction.h"
#include "tcp.h"
#include "../network_type.h"
#include "../../core/pool_type.hpp"

Go to the source code of this file.

Data Structures

class  NetworkClientSocket
 Base socket handler for all TCP sockets. More...

Defines

#define FOR_ALL_CLIENT_SOCKETS_FROM(var, start)   FOR_ALL_ITEMS_FROM(NetworkClientSocket, clientsocket_index, var, start)
#define FOR_ALL_CLIENT_SOCKETS(var)   FOR_ALL_CLIENT_SOCKETS_FROM(var, 0)

Typedefs

typedef Pool
< NetworkClientSocket,
ClientIndex,
8, MAX_CLIENT_SLOTS > 
NetworkClientSocketPool

Enumerations

enum  {
  PACKET_SERVER_FULL, PACKET_SERVER_BANNED, PACKET_CLIENT_JOIN, PACKET_SERVER_ERROR,
  PACKET_CLIENT_COMPANY_INFO, PACKET_SERVER_COMPANY_INFO, PACKET_SERVER_CLIENT_INFO, PACKET_SERVER_NEED_GAME_PASSWORD,
  PACKET_SERVER_NEED_COMPANY_PASSWORD, PACKET_CLIENT_GAME_PASSWORD, PACKET_CLIENT_COMPANY_PASSWORD, PACKET_SERVER_WELCOME,
  PACKET_CLIENT_GETMAP, PACKET_SERVER_WAIT, PACKET_SERVER_MAP, PACKET_CLIENT_MAP_OK,
  PACKET_SERVER_JOIN, PACKET_SERVER_FRAME, PACKET_SERVER_SYNC, PACKET_CLIENT_ACK,
  PACKET_CLIENT_COMMAND, PACKET_SERVER_COMMAND, PACKET_CLIENT_CHAT, PACKET_SERVER_CHAT,
  PACKET_CLIENT_SET_PASSWORD, PACKET_CLIENT_SET_NAME, PACKET_CLIENT_QUIT, PACKET_CLIENT_ERROR,
  PACKET_SERVER_QUIT, PACKET_SERVER_ERROR_QUIT, PACKET_SERVER_SHUTDOWN, PACKET_SERVER_NEWGAME,
  PACKET_SERVER_RCON, PACKET_CLIENT_RCON, PACKET_SERVER_CHECK_NEWGRFS, PACKET_CLIENT_NEWGRFS_CHECKED,
  PACKET_SERVER_MOVE, PACKET_CLIENT_MOVE, PACKET_SERVER_COMPANY_UPDATE, PACKET_SERVER_CONFIG_UPDATE,
  PACKET_END
}
 

Enum with all types of UDP packets.

More...
enum  ClientStatus {
  STATUS_INACTIVE, STATUS_NEWGRFS_CHECK, STATUS_AUTH_GAME, STATUS_AUTH_COMPANY,
  STATUS_AUTHORIZED, STATUS_MAP_WAIT, STATUS_MAP, STATUS_DONE_MAP,
  STATUS_PRE_ACTIVE, STATUS_ACTIVE, STATUS_END
}
 

Status of a client.

More...

Variables

NetworkClientSocketPool _networkclientsocket_pool

Detailed Description

Basic functions to receive and send TCP packets for game purposes.

Definition in file tcp_game.h.


Enumeration Type Documentation

anonymous enum

Enum with all types of UDP packets.

The order of the first 4 packets MUST not be changed, as it protects old clients from joining newer servers (because SERVER_ERROR is the respond to a wrong revision)

Enumerator:
PACKET_END 

Must ALWAYS be on the end of this list!! (period).

Definition at line 30 of file tcp_game.h.

Status of a client.

Enumerator:
STATUS_INACTIVE 

The client is not connected nor active.

STATUS_NEWGRFS_CHECK 

The client is checking NewGRFs.

STATUS_AUTH_GAME 

The client is authorizing with game (server) password.

STATUS_AUTH_COMPANY 

The client is authorizing with company password.

STATUS_AUTHORIZED 

The client is authorized.

STATUS_MAP_WAIT 

The client is waiting as someone else is downloading the map.

STATUS_MAP 

The client is downloading the map.

STATUS_DONE_MAP 

The client has downloaded the map.

STATUS_PRE_ACTIVE 

The client is catching up the delayed frames.

STATUS_ACTIVE 

The client is active within in the game.

STATUS_END 

Must ALWAYS be on the end of this list!! (period).

Definition at line 78 of file tcp_game.h.


Generated on Sat Nov 20 20:59:16 2010 for OpenTTD by  doxygen 1.6.1