|  | /* | 
|  |  | 
|  | directx/dinput_private.h - DirectInput DATAFORMATs Definitions | 
|  |  | 
|  | Written by Filip Navara <xnavara@volny.cz> | 
|  |  | 
|  | This library is distributed in the hope that it will be useful, | 
|  | but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|  | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | 
|  |  | 
|  | */ | 
|  |  | 
|  | #ifndef _DINPUT_PRIVATE_H | 
|  | #define _DINPUT_PRIVATE_H | 
|  |  | 
|  | #include <windows.h> | 
|  |  | 
|  | #define DIDOI_FFACTUATOR	0x00000001 | 
|  | #define DIDOI_FFEFFECTTRIGGER	0x00000002 | 
|  | #define DIDOI_POLLED	0x00008000 | 
|  | #define DIDOI_ASPECTPOSITION	0x00000100 | 
|  | #define DIDOI_ASPECTVELOCITY	0x00000200 | 
|  | #define DIDOI_ASPECTACCEL	0x00000300 | 
|  | #define DIDOI_ASPECTFORCE	0x00000400 | 
|  | #define DIDOI_ASPECTMASK	0x00000F00 | 
|  | #define DIDOI_GUIDISUSAGE	0x00010000 | 
|  | #define DIDF_ABSAXIS	0x00000001 | 
|  | #define DIDF_RELAXIS	0x00000002 | 
|  | #define DIDFT_RELAXIS	0x00000001 | 
|  | #define DIDFT_ABSAXIS	0x00000002 | 
|  | #define DIDFT_AXIS	0x00000003 | 
|  | #define DIDFT_PSHBUTTON	0x00000004 | 
|  | #define DIDFT_TGLBUTTON	0x00000008 | 
|  | #define DIDFT_BUTTON	0x0000000C | 
|  | #define DIDFT_POV	0x00000010 | 
|  | #define DIDFT_COLLECTION	0x00000040 | 
|  | #define DIDFT_NODATA	0x00000080 | 
|  | #define DIDFT_ANYINSTANCE	0x00FFFF00 | 
|  | #define DIDFT_FFACTUATOR	0x01000000 | 
|  | #define DIDFT_FFEFFECTTRIGGER	0x02000000 | 
|  | #define DIDFT_OUTPUT	0x10000000 | 
|  | #define DIDFT_VENDORDEFINED	0x04000000 | 
|  | #define DIDFT_ALIAS	0x08000000 | 
|  | #define DIDFT_OPTIONAL	0x80000000 | 
|  | #define DIDFT_MAKEINSTANCE(n)	((WORD)(n) << 8) | 
|  |  | 
|  | typedef struct _DIOBJECTDATAFORMAT { | 
|  | const GUID *pguid; | 
|  | DWORD dwOfs; | 
|  | DWORD dwType; | 
|  | DWORD dwFlags; | 
|  | } DIOBJECTDATAFORMAT, *LPDIOBJECTDATAFORMAT; | 
|  |  | 
|  | typedef struct _DIDATAFORMAT { | 
|  | DWORD dwSize; | 
|  | DWORD dwObjSize; | 
|  | DWORD dwFlags; | 
|  | DWORD dwDataSize; | 
|  | DWORD dwNumObjs; | 
|  | LPDIOBJECTDATAFORMAT rgodf; | 
|  | } DIDATAFORMAT, *LPDIDATAFORMAT; | 
|  |  | 
|  | extern GUID GUID_XAxis; | 
|  | extern GUID GUID_YAxis; | 
|  | extern GUID GUID_ZAxis; | 
|  | extern GUID GUID_RxAxis; | 
|  | extern GUID GUID_RyAxis; | 
|  | extern GUID GUID_RzAxis; | 
|  | extern GUID GUID_Slider; | 
|  | extern GUID GUID_Key; | 
|  | extern GUID GUID_POV; | 
|  |  | 
|  | #if defined (__WATCOMC__) | 
|  | #define ATTRIBUTE_TEXT_SECTION __based( __segname( "_CODE" ) ) | 
|  | #elif defined (__GNUC__) | 
|  | #define ATTRIBUTE_TEXT_SECTION  __attribute__ ((section(".text"))) | 
|  | #else | 
|  | #define ATTRIBUTE_TEXT_SECTION | 
|  | #endif | 
|  |  | 
|  | #endif |