Returns a copy of the raw surface definition.
It is up to the caller to delete the memory allocated.