sdlLockSurface function

int sdlLockSurface(
  1. Pointer<SdlSurface> surface
)

Set up a surface for directly accessing the pixels.

Between calls to SDL_LockSurface() / SDL_UnlockSurface(), you can write to and read from surface->pixels, using the pixel format stored in surface->format. Once you are done accessing the surface, you should use SDL_UnlockSurface() to release it.

Not all surfaces require locking. If SDL_MUSTLOCK(surface) evaluates to 0, then you can read and write to the surface at any time, and the pixel format of the surface will not change.

\param surface the SDL_Surface structure to be locked \returns 0 on success or a negative error code on failure; call SDL_GetError() for more information.

\since This function is available since SDL 2.0.0.

\sa SDL_MUSTLOCK \sa SDL_UnlockSurface

extern DECLSPEC int SDLCALL SDL_LockSurface(SDL_Surface * surface)

Implementation

int sdlLockSurface(Pointer<SdlSurface> surface) {
  final sdlLockSurfaceLookupFunction = libSdl2.lookupFunction<
      Int32 Function(Pointer<SdlSurface> surface),
      int Function(Pointer<SdlSurface> surface)>('SDL_LockSurface');
  return sdlLockSurfaceLookupFunction(surface);
}