sdlLockTexture function

int sdlLockTexture(
  1. Pointer<SdlTexture> texture,
  2. Pointer<SdlRect> rect,
  3. Pointer<Pointer<NativeType>> pixels,
  4. Pointer<Int32> pitch,
)

Lock a portion of the texture for write-only pixel access.

As an optimization, the pixels made available for editing don't necessarily contain the old texture data. This is a write-only operation, and if you need to keep a copy of the texture data you should do that at the application level.

You must use SDL_UnlockTexture() to unlock the pixels and apply any changes.

\param texture the texture to lock for access, which was created with SDL_TEXTUREACCESS_STREAMING \param rect an SDL_Rect structure representing the area to lock for access; NULL to lock the entire texture \param pixels this is filled in with a pointer to the locked pixels, appropriately offset by the locked area \param pitch this is filled in with the pitch of the locked pixels; the pitch is the length of one row in bytes \returns 0 on success or a negative error code if the texture is not valid or was not created with SDL_TEXTUREACCESS_STREAMING; call SDL_GetError() for more information.

\since This function is available since SDL 2.0.0.

\sa SDL_UnlockTexture

extern DECLSPEC int SDLCALL SDL_LockTexture(SDL_Texture * texture, const SDL_Rect * rect, void **pixels, int *pitch)

Implementation

int sdlLockTexture(Pointer<SdlTexture> texture, Pointer<SdlRect> rect,
    Pointer<Pointer<NativeType>> pixels, Pointer<Int32> pitch) {
  final sdlLockTextureLookupFunction = libSdl2.lookupFunction<
      Int32 Function(Pointer<SdlTexture> texture, Pointer<SdlRect> rect,
          Pointer<Pointer<NativeType>> pixels, Pointer<Int32> pitch),
      int Function(
          Pointer<SdlTexture> texture,
          Pointer<SdlRect> rect,
          Pointer<Pointer<NativeType>> pixels,
          Pointer<Int32> pitch)>('SDL_LockTexture');
  return sdlLockTextureLookupFunction(texture, rect, pixels, pitch);
}