http://www.newty.de/fpt/fpt.html#defigoogle and you shall find
casting is casting a type to a pointer. like, you can declare the function parameter as a void pointer, then you can cast it to a specific type and use it.
int myWindozeFunction (void * groovy, int what)
if (what == 1)
int * myIntPtr = (int *) groovy;
something like this...