INPUT.H
/*========================================================================== 
 * 
 *  Copyright (C) 1995-1996 Microsoft Corporation. All Rights Reserved. 
 * 
 *  File:       input.h 
 *  Content:    input functionality include file 
 * 
 * 
 ***************************************************************************/ 
 
#ifndef _INPUT_H 
#define _INPUT_H 
 
#ifdef __cplusplus 
extern "C" {            /* Assume C declarations for C++ */ 
#endif/* __cplusplus */ 
 
//--------------------------------------------------------------------------- 
 
#include <dinput.h> 
 
// prototypes 
BOOL            inputInitDirectInput(HINSTANCE hInst, HWND hWnd); 
void            inputCleanupDirectInput(void); 
BOOL CALLBACK   inputEnumDeviceProc(LPDIDEVICEINSTANCE pdidi, LPVOID pv); 
BOOL CALLBACK   inputEnumEffectTypeProc(LPCDIEFFECTINFO pei, LPVOID pv); 
BOOL            inputAcquireDevices(void); 
BOOL            inputCreateEffect(DWORD dwEffectFlags); 
DWORD           inputProcessDeviceInput(void); 
BOOL            inputPrepareDevice(void); 
BOOL            inputPlayEffect(DWORD dwEffectFlags, LONG lDirection); 
BOOL CALLBACK   inputForceLevelDlgProc(HWND hWnd, UINT uMsg, WPARAM wParam, 
                                       LPARAM lParam); 
 
// constants used for scaling the input device 
#define DEADZONE        2500            // 25% of the axis range 
#define RANGE_MAX       1000            // maximum positive axis value 
#define RANGE_MIN       -1000           // minimum negative axis value 
#define FF_CHILD        5000            // "Child"          gain == 50% 
#define FF_ADULT        7500            // "Adult"          gain == 75% 
#define FF_BODYBUILDER  10000           // "Bodybuilder"    gain == 100% 
 
// "effect flags" - these are internal identifiers and in no way map to DirectInput 
#define EF_BOUNCE   0x00000001l 
#define EF_EXPLODE  0x00000002l 
#define EF_FIRE     0x00000004l 
 
// "keyboard" commands - moved from original .h file 
#define KEY_STOP    0x00000001l 
#define KEY_DOWN    0x00000002l 
#define KEY_LEFT    0x00000004l 
#define KEY_RIGHT   0x00000008l 
#define KEY_UP      0x00000010l 
#define KEY_FIRE    0x00000020l 
#define KEY_THROW   0x00000040l 
#define KEY_SHIELD  0x00000080l 
 
//--------------------------------------------------------------------------- 
 
#endif _INPUT_H