Bitmap

#include <bitmap.h>

Summary

Enumerations

Anonymous Enum 12{
  ANDROID_BITMAP_RESULT_SUCCESS = 0,
  ANDROID_BITMAP_RESULT_BAD_PARAMETER = -1,
  ANDROID_BITMAP_RESULT_JNI_EXCEPTION = -2,
  ANDROID_BITMAP_RESULT_ALLOCATION_FAILED = -3
}
enum
AndroidBitmap functions result code.
AndroidBitmapFormat{
  ANDROID_BITMAP_FORMAT_NONE = 0,
  ANDROID_BITMAP_FORMAT_RGBA_8888 = 1,
  ANDROID_BITMAP_FORMAT_RGB_565 = 4,
  ANDROID_BITMAP_FORMAT_RGBA_4444 = 7,
  ANDROID_BITMAP_FORMAT_A_8 = 8
}
enum
Bitmap pixel format.

Functions

AndroidBitmap_getInfo(JNIEnv *env, jobject jbitmap, AndroidBitmapInfo *info)
int
Given a java bitmap object, fill out the AndroidBitmapInfo struct for it.
AndroidBitmap_lockPixels(JNIEnv *env, jobject jbitmap, void **addrPtr)
int
Given a java bitmap object, attempt to lock the pixel address.
AndroidBitmap_unlockPixels(JNIEnv *env, jobject jbitmap)
int
Call this to balance a successful call to AndroidBitmap_lockPixels.

Structs

AndroidBitmapInfo

Bitmap info, see AndroidBitmap_getInfo().

Enumerations

Anonymous Enum 12

 Anonymous Enum 12

AndroidBitmap functions result code.

Properties
ANDROID_BITMAP_RESULT_ALLOCATION_FAILED

Allocation failed.

ANDROID_BITMAP_RESULT_BAD_PARAMETER

Bad parameter.

ANDROID_BITMAP_RESULT_JNI_EXCEPTION

JNI exception occured.

ANDROID_BITMAP_RESULT_SUCCESS

Operation was successful.

AndroidBitmapFormat

 AndroidBitmapFormat

Bitmap pixel format.

Properties
ANDROID_BITMAP_FORMAT_A_8

Alpha: 8 bits.

ANDROID_BITMAP_FORMAT_NONE

No format.

ANDROID_BITMAP_FORMAT_RGBA_4444

Deprecated in API level 13.

Because of the poor quality of this configuration, it is advised to use ARGB_8888 instead.

ANDROID_BITMAP_FORMAT_RGBA_8888

Red: 8 bits, Green: 8 bits, Blue: 8 bits, Alpha: 8 bits.

ANDROID_BITMAP_FORMAT_RGB_565

Red: 5 bits, Green: 6 bits, Blue: 5 bits.

Functions

AndroidBitmap_getInfo

int AndroidBitmap_getInfo(
  JNIEnv *env,
  jobject jbitmap,
  AndroidBitmapInfo *info
)

Given a java bitmap object, fill out the AndroidBitmapInfo struct for it.

If the call fails, the info parameter will be ignored.

AndroidBitmap_lockPixels

int AndroidBitmap_lockPixels(
  JNIEnv *env,
  jobject jbitmap,
  void **addrPtr
)

Given a java bitmap object, attempt to lock the pixel address.

Locking will ensure that the memory for the pixels will not move until the unlockPixels call, and ensure that, if the pixels had been previously purged, they will have been restored.

If this call succeeds, it must be balanced by a call to AndroidBitmap_unlockPixels, after which time the address of the pixels should no longer be used.

If this succeeds, *addrPtr will be set to the pixel address. If the call fails, addrPtr will be ignored.

AndroidBitmap_unlockPixels

int AndroidBitmap_unlockPixels(
  JNIEnv *env,
  jobject jbitmap
)

Call this to balance a successful call to AndroidBitmap_lockPixels.