00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef ISECONDARYSCREEN_H
00020 #define ISECONDARYSCREEN_H
00021
00022 #include "IInterface.h"
00023 #include "MouseTypes.h"
00024 #include "GameDeviceTypes.h"
00025 #include "CEvent.h"
00026
00028
00032 class ISecondaryScreen : public IInterface {
00033 public:
00035
00036
00038
00041 virtual void fakeMouseButton(ButtonID id, bool press) = 0;
00042
00044
00047 virtual void fakeMouseMove(SInt32 x, SInt32 y) const = 0;
00048
00050
00053 virtual void fakeMouseRelativeMove(SInt32 dx, SInt32 dy) const = 0;
00054
00056
00059 virtual void fakeMouseWheel(SInt32 xDelta, SInt32 yDelta) const = 0;
00060
00062
00065 virtual void fakeGameDeviceButtons(GameDeviceID id, GameDeviceButton buttons) const = 0;
00066
00068
00071 virtual void fakeGameDeviceSticks(GameDeviceID id, SInt16 x1, SInt16 y1, SInt16 x2, SInt16 y2) const = 0;
00072
00074
00077 virtual void fakeGameDeviceTriggers(GameDeviceID id, UInt8 t1, UInt8 t2) const = 0;
00078
00080 static CEvent::Type getGameDeviceTimingRespEvent();
00081
00083 static CEvent::Type getGameDeviceFeedbackEvent();
00084
00086
00087 private:
00088 static CEvent::Type s_gameTimingRespEvent;
00089 static CEvent::Type s_gameFeedbackEvent;
00090 };
00091
00092 #endif