Bitmap

Files

file  bitmap.h
 

Data Structures

struct  AndroidBitmapInfo
 

Macros

#define ANDROID_BITMAP_RESUT_SUCCESS   ANDROID_BITMAP_RESULT_SUCCESS
 

Enumerations

enum  { ANDROID_BITMAP_RESULT_SUCCESS = 0, ANDROID_BITMAP_RESULT_BAD_PARAMETER = -1, ANDROID_BITMAP_RESULT_JNI_EXCEPTION = -2, ANDROID_BITMAP_RESULT_ALLOCATION_FAILED = -3 }
 
enum  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
}
 

Functions

int AndroidBitmap_getInfo (JNIEnv *env, jobject jbitmap, AndroidBitmapInfo *info)
 
int AndroidBitmap_lockPixels (JNIEnv *env, jobject jbitmap, void **addrPtr)
 
int AndroidBitmap_unlockPixels (JNIEnv *env, jobject jbitmap)
 

Detailed Description

Macro Definition Documentation

#define ANDROID_BITMAP_RESUT_SUCCESS   ANDROID_BITMAP_RESULT_SUCCESS

Backward compatibility: this macro used to be misspelled.

Enumeration Type Documentation

anonymous enum

AndroidBitmap functions result code.

Enumerator
ANDROID_BITMAP_RESULT_SUCCESS 

Operation was successful.

ANDROID_BITMAP_RESULT_BAD_PARAMETER 

Bad parameter.

ANDROID_BITMAP_RESULT_JNI_EXCEPTION 

JNI exception occured.

ANDROID_BITMAP_RESULT_ALLOCATION_FAILED 

Allocation failed.

Bitmap pixel format.

Enumerator
ANDROID_BITMAP_FORMAT_NONE 

No format.

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.

ANDROID_BITMAP_FORMAT_RGBA_4444 

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

ANDROID_BITMAP_FORMAT_A_8 

Deprecated.

Function Documentation

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.

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.

int AndroidBitmap_unlockPixels ( JNIEnv *  env,
jobject  jbitmap 
)

Call this to balance a successful call to AndroidBitmap_lockPixels.