void keyMouse::update(){
	if(firstRun){
		buildLookupTable();
		firstRun = false;
	}
	//Retrieve the button and motion data from the uC
	map.getData(&buttons, &moData);
	//Press or release any buttons given by the buttons vector
	//This includes any "virtual" buttons from analog values
	applyKeys();
	int x;
	int y;
	//Process the motion input for moving the mouse
	motion.processInput(&moData, &x, &y);
	//Apply the mouse movement if enabled
	if(!moData.motionDisable){
		moveMouse(x,y);
	}
}
OUILookup::OUILookup( const std::string &ouiListFile )
{
  buildLookupTable(ouiListFile);
}