There\'s a header file, esUtil.h, with a definition for a structure called ESContext, and one of its members is userData. userData is a pointer to void.
Some where in the code the member userData of ESContext might be initialized with the structure UserData and thats why it is assigned to UserData pointer in DoSomething function.
It may be a void pointer but still it might hold the address of UserData object