Is there any general interfaces on linux to simulate mouse movements and click?

view story

http://stackoverflow.com – I have referred to a lot of tutorials on how to control your mouse cursor's movements and clicks by map these events to your own real mouse, but I noticed that everytime I must associate this mouse to one specified event in /dev/input/, if I didn't connect one real mouse, or if the linux didn't give the right event number on this real mouse, the program will definitely fail. Now I need to write a generalized program which can make one complete virtual mouse on linux, that is to say, this program can be applied to any machine even the machine don't actually have one mouse, but the cursor will (HowTos)