28 #include <tdemacros.h>
55 class TDE_EXPORT
KGameIO :
public TQObject
76 enum IOMode {GenericIO=1,KeyIO=2,MouseIO=4,ProcessIO=8,ComputerIO=16};
83 virtual int rtti()
const = 0;
116 virtual void initIO(
KPlayer *p);
127 virtual void notifyTurn(
bool b);
132 bool sendInput(TQDataStream& stream,
bool transmit =
true, TQ_UINT32 sender = 0);
212 virtual int rtti()
const;
242 bool eventFilter( TQObject *o, TQEvent *e );
279 void setMouseTracking(
bool b);
285 virtual int rtti()
const;
313 bool eventFilter( TQObject *o, TQEvent *e );
371 void sendMessage(TQDataStream &stream,
int msgid, TQ_UINT32 receiver, TQ_UINT32 sender);
383 void sendSystemMessage(TQDataStream &stream,
int msgid, TQ_UINT32 receiver, TQ_UINT32 sender);
404 virtual void notifyTurn(
bool turn);
410 void sendAllMessages(TQDataStream &stream,
int msgid, TQ_UINT32 receiver, TQ_UINT32 sender,
bool usermsg);
416 void receivedMessage(
const TQByteArray& receiveBuffer);
461 class KGameProcessIOPrivate;
462 KGameProcessIOPrivate* d;
501 void setReactionPeriod(
int advanceCalls);
502 int reactionPeriod()
const;
507 void setAdvancePeriod(
int ms);
509 void stopAdvancePeriod();
523 void pause(
int calls = -1);
547 virtual void advance();
560 virtual void reaction();
566 class KGameComputerIOPrivate;
567 KGameComputerIOPrivate* d;
KGameIO variant for real-time games.
void signalReaction()
This signal is emitted when your computer player is meant to do something, or better is meant to be a...
Base class for IO devices for games.
KPlayer * player() const
This function returns the player who owns this IO.
void setPlayer(KPlayer *p)
Sets the player to which this IO belongs to.
void signalPrepareTurn(TQDataStream &stream, bool turn, KGameIO *io, bool *send)
Signal generated when KPlayer::myTurn changes.
virtual int rtti() const =0
Run time idendification.
IOMode
Identifies the KGameIO via the rtti function.
void signalKeyEvent(KGameIO *io, TQDataStream &stream, TQKeyEvent *m, bool *eatevent)
Signal handler for keyboard events.
void signalMouseEvent(KGameIO *io, TQDataStream &stream, TQMouseEvent *m, bool *eatevent)
Signal handler for mouse events.
The KGameProcessIO class.
void signalIOAdded(KGameIO *game, TQDataStream &stream, KPlayer *p, bool *send)
Signal generated when the computer player is added.
void signalProcessQuery(TQDataStream &stream, KGameProcessIO *me)
A computer query message is received.
The main KDE game object.
Base class for a game player.