reman3/Rayman_X/cpa/public/IPT/IPT_Str.h

136 lines
3.8 KiB
C

/*=========================================================================
* IPT_Str.h : Structure des fonctions d'entrées
*
* Version 1.0
* Creation date 01/04/97
* Revision date
*
* (c) Ubi Studios 1997
*=======================================================================*/
#if !defined(__IPT_Str_H__)
#define __IPT_Str_H__
/******************************************/
#if _MSC_VER >= 1000
#pragma once
#endif /* _MSC_VER >= 1000 */
/******************************************/
/****************************************/
#if !defined(CPA_EXPORT)
#if defined(CPA_WANTS_IMPORT)
#define CPA_EXPORT __declspec(dllimport)
#elif defined(CPA_WANTS_EXPORT)
#define CPA_EXPORT __declspec(dllexport)
#else
#define CPA_EXPORT
#endif /*CPA_WANTS_IMPORT || CPA_WANTS_EXPORT*/
#endif /*CPA_EXPORT*/
/****************************************/
#include "IPT_Def.h"
LST2_M_DynamicUseListOf(IPT_tdxHandleToEntryElement);
LST2_M_DynamicUseListOf(IPT_tdxHandleToKeyWordElement);
#if defined(D_IPT_Input_StructureDefine)
typedef struct IPT_tdstHistoricElement_
{
unsigned char bf2State;
unsigned char bf6DeviceType;
unsigned char ucCounter;
signed short swDeviceValue;
}IPT_tdstHistoricElement;
union tdu_KeyWordElementUnion_
{
signed short swJoyNumber;
signed short swJoyAction;
signed short swJoyValueMin;
signed short swJoyValueMax;
signed short swPadNumber;
signed short swPadAction;
signed short swKey;
signed short swKeyWord;
IPT_tdxHandleToEntryElement hEntryElement;
unsigned long ulNumberOfSequence;
};
typedef struct IPT_tdstKeyWordElement_
{
LST2_M_DynamicElementDeclaration(IPT_tdxHandleToKeyWordElement)
union tdu_KeyWordElementUnion_ u_ElementUnion;
unsigned char ucResult; /* Result of analyse */
unsigned char ucMinCounterInput;
unsigned char ucMaxCounterInput;
}IPT_tdstKeyWordElement;
typedef struct IPT_tdstEntryElement_
{
LST2_M_DynamicElementDeclaration(IPT_tdxHandleToEntryElement)
LST2_M_DynamicAnchorDeclaration(IPT_tdxHandleToKeyWordElement) hKeyWordList;
unsigned long ulNumberOfKeyWordElement;
struct IPT_tdstKeyWordElement_ *d_stKeyWordElementArray;
char *p_szActionName;
char *p_szEntryName; /* For options */
signed long lState; /* Pos : Counter since pressed (LONG_MAX), Neg : Counter since released (LONG_MIN) */
/* signed char scAnalogicValue; /* The joystick value is between -100 and 100 */
MTH_tdxReal xAnalogicValue;
unsigned char bIsActivate;
}IPT_tdstEntryElement;
typedef struct IPT_tdstInput_
{
unsigned char ucOnePadActivate;
unsigned char p_ucValideAndActiveDevice[IPT_E_NumberOfDeviceEvent];
unsigned char p_ucKeyboardCounter[256];
unsigned char p_ucPadAndJoyCounter[IPT_E_NumberOfDeviceEvent][IPT_E_NumberOfPadAndJoyAction];
#if !defined(U64)
SCR_tdst_Link_Table stEntryLink;
SCR_tdst_Link_Table stCommandLink;
unsigned char ucKeyboardType;
#endif /* U64 */
unsigned long ulNumberOfEntryElement;
struct IPT_tdstEntryElement_ *d_stEntryElementArray;
LST2_M_DynamicAnchorDeclaration(IPT_tdxHandleToEntryElement) hEntryElement;
short sEventHistoricSize;
IPT_tdxHandleToHistoricElement hEventHistoric;
}IPT_tdstInput;
/* XB 01/06/99 */
#ifndef _FIRE_DEADCODE_U64_
typedef struct IPT_tdstKeyAndPadDefine_
{
unsigned short uwBasedKey;
char *p_szFrenchKey;
char *p_szAmericanKey;
} IPT_tdstKeyAndPadDefine;
#endif /* _FIRE_DEADCODE_U64_ */
/*End XB */
#endif /* D_IPT_Input_StructureDefine */
#undef EXTERN
#undef extern
#if !defined(D_IPT_Input_VariableDefine)
#define EXTERN extern
#else
#define EXTERN
#endif /* D_IPT_Input_VariableDefine*/
#ifndef _FIRE_DEADCODE_U64_ /* Added by RUC */
EXTERN struct IPT_tdstKeyAndPadDefine_ *IPT_gd_hKeyAndPadDefine;
#endif /* _FIRE_DEADCODE_U64_ */ /* Added by RUC */
EXTERN struct IPT_tdstInput_ IPT_g_hInputStructure;
#undef EXTERN
#undef extern
#endif /* __IPT_Str_H__ */