blob: e1629134ac689d0abbb95751b8522e94bee9f20d [file] [log] [blame]
/*
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