KGameMessage Class Reference

List of all members.

Detailed Description

Definition at line 29 of file kgamemessage.h.


Public Types

enum  GameMessageIds {
  IdSetupGame = 1, IdSetupGameContinue = 2, IdGameLoad = 3, IdGameConnected = 4,
  IdSyncRandom = 5, IdDisconnect = 6, IdGameSetupDone = 7, IdPlayerProperty = 20,
  IdGameProperty = 21, IdAddPlayer = 30, IdRemovePlayer = 31, IdActivatePlayer = 32,
  IdInactivatePlayer = 33, IdTurn = 34, IdError = 100, IdPlayerInput = 101,
  IdIOAdded = 102, IdProcessQuery = 220, IdPlayerId = 221, IdUser = 256
}

Static Public Member Functions

static Q_UINT32 createPlayerId (int player, Q_UINT32 game)
static int rawPlayerId (Q_UINT32 playerid)
static Q_UINT32 rawGameId (Q_UINT32 playerid)
static bool isPlayer (Q_UINT32 id)
static bool isGame (Q_UINT32 id)
static void createHeader (QDataStream &msg, Q_UINT32 sender, Q_UINT32 receiver, int msgid)
static void extractHeader (QDataStream &msg, Q_UINT32 &sender, Q_UINT32 &receiver, int &msgid)
static void createPropertyHeader (QDataStream &msg, int id)
static void extractPropertyHeader (QDataStream &msg, int &id)
static void createPropertyCommand (QDataStream &msg, int cmdid, int pid, int cmd)
static void extractPropertyCommand (QDataStream &msg, int &pid, int &cmd)
static int version ()
static QString messageId2Text (int msgid)

Member Enumeration Documentation

Message Ids used inside KGame.

You can use your own custom message Id by adding IdUser to it.

Definition at line 139 of file kgamemessage.h.


Member Function Documentation

Q_UINT32 KGameMessage::createPlayerId ( int  player,
Q_UINT32  game 
) [static]

Creates a fully qualified player ID which contains the original player id in the lower bits and the game number in the higher bits.

Do not rely on the exact bit positions as they are internal.

See also rawPlayerId and rawGameId which are the inverse operations

Parameters:
playerid the player id - can include a gameid (will get removed)
gameid The game id (<64). 0 For broadcast.
Returns:
the new player id

Definition at line 30 of file kgamemessage.cpp.

int KGameMessage::rawPlayerId ( Q_UINT32  playerid  )  [static]

Returns the raw playerid, that is, a id which does not contain the game number encoded in it.

See also createPlayerId which is the inverse operation.

Parameters:
the player id
Returns:
the raw player id

Definition at line 38 of file kgamemessage.cpp.

Q_UINT32 KGameMessage::rawGameId ( Q_UINT32  playerid  )  [static]

Returns the raw game id, that is, the game id the player belongs to.

Se also createPlayerId which is the inverse operation.

Parameters:
the player id
Returns:
the raw game id

Definition at line 43 of file kgamemessage.cpp.

bool KGameMessage::isPlayer ( Q_UINT32  id  )  [static]

Checks whether a message receiver/sender is a player.

Parameters:
id The ID of the sender/receiver
Returns:
true/false

Definition at line 48 of file kgamemessage.cpp.

bool KGameMessage::isGame ( Q_UINT32  id  )  [static]

Checks whether the sender/receiver of a message is a game.

Parameters:
id The ID of the sender/receiver
Returns:
true/false

Definition at line 57 of file kgamemessage.cpp.

void KGameMessage::createHeader ( QDataStream &  msg,
Q_UINT32  sender,
Q_UINT32  receiver,
int  msgid 
) [static]

Creates a message header given cookie,sender,receiver,.

..

Also puts "hidden" header into the stream which are used by KGameClient (message length and magic cookie). If you don't need them remove them with dropExternalHeader

Definition at line 63 of file kgamemessage.cpp.

void KGameMessage::extractHeader ( QDataStream &  msg,
Q_UINT32 &  sender,
Q_UINT32 &  receiver,
int &  msgid 
) [static]

Retrieves the information like cookie,sender,receiver,.

.. from a message header

Note that it could be necessary to call dropExternalHeader first

Definition at line 68 of file kgamemessage.cpp.

void KGameMessage::createPropertyHeader ( QDataStream &  msg,
int  id 
) [static]

Creates a property header given the property id.

Definition at line 75 of file kgamemessage.cpp.

void KGameMessage::extractPropertyHeader ( QDataStream &  msg,
int &  id 
) [static]

Retrieves the property id from a property message header.

Definition at line 80 of file kgamemessage.cpp.

void KGameMessage::createPropertyCommand ( QDataStream &  msg,
int  cmdid,
int  pid,
int  cmd 
) [static]

Creates a property header given the property id.

Definition at line 87 of file kgamemessage.cpp.

void KGameMessage::extractPropertyCommand ( QDataStream &  msg,
int &  pid,
int &  cmd 
) [static]

Retrieves the property id from a property message header.

Definition at line 94 of file kgamemessage.cpp.

int KGameMessage::version (  )  [static]

Returns:
Version of the network library

Definition at line 103 of file kgamemessage.cpp.

QString KGameMessage::messageId2Text ( int  msgid  )  [static]

This function takes a GameMessageIds as argument and returns a suitable string for it.

This string can't be used to identify a message (as it is i18n'ed) but it can make debugging more easy. See also KGameDebugDialog.

Returns:
Either a i18n'ed string (the name of the id) or QString::null if the msgid is unknown

Definition at line 108 of file kgamemessage.cpp.


The documentation for this class was generated from the following files:
KDE Home | KDE Accessibility Home | Description of Access Keys