78a04600f9
Danny Smith <dannysmith@users.sourceforge.net> * lib/directx/dinput_private.h (ATTRIBUTE_TEXT_SECTION): New define for Open Watcom portability. * lib/directx/(dinput_joy.c, dinput_joy2.c, dinput_kbd.c, dinput_mouse.c, dinput_mouse2.c): Use new macro in definition of local c_rgodfDI* objects. Replace .rdata section attribute with 'const' keyword in definition of global c_dfDI* objects.
82 lines
2.1 KiB
C
82 lines
2.1 KiB
C
/*
|
|
|
|
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
|