总框图:
数据结构抽象:
1.上报的数据格式
#define INPUT_TYPE_TOUCH 1
#define INPUT_TYPE_NET 2
typedef struct InputEvent
{
struct timeval tTime; //加入时间管理
int iType; //网络事件或者触摸事件类型
int iX; //触摸事件x坐标
int iY; //触摸事件y坐标
int iPressure; //触摸事件压力
char str[1024]; //网络事件字符串
} InputEvent, *PInputEvent;
2.不同的输入设备,应该模块化,使用下面的结构体表示输入设备
typedef struct InputDevice
{
char *name; //设备名称
int (*GetInputEvent)(PInputEvent ptInputEvent); //获得数据
int (*DeviceInit)(void);
int (*DeviceExit)(void);
struct InputDevice *ptNext; //加入链表,将多个输入设备链接到一起
} InputDevice, *PInputDevice;
3.input_manager.h 内容
#ifndef _INPUT_MANAGER_H
#define _INPUT_MANAGER_H
#define INPUT_TYPE_TOUCH 1
#define INPUT_TYPE_NET 2
typedef struct InputEvent
{
struct timeval tTime; //加入时间管理
int iType; //网络事件或者触摸事件类型
int iX; //触摸事件x坐标
int iY; //触摸事件y坐标
int iPressure; //触摸事件压力
char str[1024]; //网络事件字符串
} InputEvent, *PInputEvent;
typedef struct InputDevice
{
char *name; //设备名称
int (*GetInputEvent)(PInputEvent ptInputEvent); //获得数据
int (*DeviceInit)(void);
int (*DeviceExit)(void);
struct InputDevice *ptNext; //加入链表,将多个输入设备链接到一起
} InputDevice, *PInputDevice;
#endif
实现以下内容:
- 完成输入事件结构体,实现需要上报的数据格式。
- 完成输入设备结构体,在其中需要实现数据的获取GetInputEvent和多个设备链接ptNext



