28 #include <kdemacros.h>
55 class KDE_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);
166 void signalPrepareTurn(TQDataStream & stream,
bool turn,
KGameIO *io,
bool * send);
212 virtual int rtti()
const;
236 void signalKeyEvent(
KGameIO *io,TQDataStream &stream,TQKeyEvent *m,
bool *eatevent);
242 bool eventFilter( TQObject *o, TQEvent *e );
279 void setMouseTracking(
bool b);
285 virtual int rtti()
const;
307 void signalMouseEvent(
KGameIO *io,TQDataStream &stream,TQMouseEvent *m,
bool *eatevent);
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);
410 void sendAllMessages(TQDataStream &stream,
int msgid, TQ_UINT32 receiver, TQ_UINT32 sender,
bool usermsg);
416 void receivedMessage(
const TQByteArray& receiveBuffer);
455 void signalIOAdded(
KGameIO *game,TQDataStream &stream,
KPlayer *p,
bool *send);
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();
554 void signalReaction();
560 virtual void reaction();
566 class KGameComputerIOPrivate;
567 KGameComputerIOPrivate* d;