00001 00002 /*#ifndef JOY_FFEED_H 00003 #define JOY_FFEED_H 00004 00005 #define DIRECTINPUT_VERSION 0x0500 00006 #define STRICT 00007 #include <windows.h> 00008 #include <mmsystem.h> 00009 #include <dinput.h> 00010 00011 #include "../H_Main.h" 00012 00013 class DXJoystick : public HJoystick 00014 { 00015 public: 00016 DXJoystick(HINSTANCE hInst, HWND hWnd); 00017 virtual ~DXJoystick(); 00018 virtual bool IsValid(); 00019 virtual const char *GetDescription(); 00020 virtual int GetNumAxis(); 00021 virtual int GetNumButtons(); 00022 virtual void UpdateState(); 00023 virtual REAL GetAxisPos(int i); 00024 virtual bool GetButtonPos(int i); 00025 virtual bool SetAcquire(bool Active); 00026 virtual bool SetForceFeedback(REAL x, REAL y); 00027 private: 00028 static BOOL CALLBACK EnumFFJoysticksCallback(const DIDEVICEINSTANCE* pInst, VOID* lpvContext); 00029 private: 00030 bool valid; 00031 string JoyName; 00032 00033 //range fr the axes 00034 LONG lMin,lMax; 00035 00036 //current joystick state 00037 DIJOYSTATE dijs; 00038 IDirectInput* g_pDI; 00039 IDirectInputDevice2* g_pJoystick; 00040 IDirectInputEffect* g_pEffect; 00041 HINSTANCE g_hInst; 00042 DIDEVCAPS didc; 00043 00044 }; 00045 00046 #endif // !defined(JOY_FFEED_H)*/