Create from an existing SDL_Surface* handle.
Create a new RGBA surface. Both pixels data and handle are owned.
Create surface from RGBA data. Pixels data is <b>not</b> and not owned.
Releases the SDL resource.
Whether a SDL Surface is owned by the wrapper or borrowed.
Converts the surface to another format.
Get a surface pixel color.
Lock the surface, allow to use pixels().
Get the surface pitch (number of bytes between lines).
Unlock the surface.
SDL Surface wrapper. A SDL2Surface might own the SDL_Surface* handle or not.