X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FModules%2FInput%2FMouse%2Finclude%2Fmouse_int.h;fp=KernelLand%2FModules%2FInput%2FMouse%2Finclude%2Fmouse_int.h;h=0f717af7dae30d99c45176576e4ac871b6432c49;hb=2667cb207a1aa17947b7ba582e1e2e3b9a9dea07;hp=0000000000000000000000000000000000000000;hpb=074c939bba2b64543752a833fc36491e3755afc3;p=tpg%2Facess2.git diff --git a/KernelLand/Modules/Input/Mouse/include/mouse_int.h b/KernelLand/Modules/Input/Mouse/include/mouse_int.h new file mode 100644 index 00000000..0f717af7 --- /dev/null +++ b/KernelLand/Modules/Input/Mouse/include/mouse_int.h @@ -0,0 +1,54 @@ +/* + * Acess2 Kernel - Mouse Mulitplexing Driver + * - By John Hodge (thePowersGang) + * + * include/mouse_int.h + * - Mouse mulitplexing interface header + */ +#ifndef _MOUSE__MOUSE_INT_H_ +#define _MOUSE__MOUSE_INT_H_ + +#include + +typedef struct sPointer tPointer; + +/* + * \brief Input device type (doesn't hold much) + */ +struct sMouse +{ + tMouse *Next; + tPointer *Pointer; + int NumButtons; + int NumAxies; + Uint32 ButtonState; + int LastAxisVal[]; +}; + +#define MAX_BUTTONS 6 +#define MAX_AXIES 4 +#define MAX_FILESIZE (sizeof(tJoystick_FileHeader) + MAX_AXIES*sizeof(tJoystick_Axis) + MAX_BUTTONS) + +/** + */ +struct sPointer +{ + tPointer *Next; + + tMouse *FirstDev; + + // Node + tVFS_Node Node; + + // Data + Uint8 FileData[MAX_FILESIZE]; + tJoystick_FileHeader *FileHeader; + tJoystick_Axis *Axies; + Uint8 *Buttons; + + // Limits for axis positions + Uint16 AxisLimits[MAX_AXIES]; +}; + +#endif +