java.lang.Object | |
↳ | com.facebook.imagepipeline.nativecode.DalvikPurgeableDecoder |
Known Direct Subclasses |
Base class for bitmap decodes for Dalvik VM (Gingerbread to KitKat).
Native code used by this class is shipped as part of libimagepipeline.so
Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
protected static final byte[] | EOI |
Protected Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
DalvikPurgeableDecoder() |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
CloseableReference<Bitmap> |
decodeFromEncodedImage(EncodedImage encodedImage, Bitmap.Config bitmapConfig, Rect regionToDecode)
Creates a bitmap from encoded bytes.
| ||||||||||
CloseableReference<Bitmap> |
decodeFromEncodedImageWithColorSpace(EncodedImage encodedImage, Bitmap.Config bitmapConfig, Rect regionToDecode, ColorSpace colorSpace)
Creates a bitmap from encoded bytes.
| ||||||||||
CloseableReference<Bitmap> |
decodeJPEGFromEncodedImage(EncodedImage encodedImage, Bitmap.Config bitmapConfig, Rect regionToDecode, int length)
Creates a bitmap from encoded JPEG bytes.
| ||||||||||
CloseableReference<Bitmap> |
decodeJPEGFromEncodedImageWithColorSpace(EncodedImage encodedImage, Bitmap.Config bitmapConfig, Rect regionToDecode, int length, ColorSpace colorSpace)
Creates a bitmap from encoded JPEG bytes.
| ||||||||||
static boolean | endsWithEOI(CloseableReference<PooledByteBuffer> bytesRef, int length) | ||||||||||
static BitmapFactory.Options | getBitmapFactoryOptions(int sampleSize, Bitmap.Config bitmapConfig) | ||||||||||
CloseableReference<Bitmap> |
pinBitmap(Bitmap bitmap)
Pin the bitmap so that it cannot be 'purged'.
|
Protected Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
abstract Bitmap |
decodeByteArrayAsPurgeable(CloseableReference<PooledByteBuffer> bytesRef, BitmapFactory.Options options)
Decodes a byteArray into a purgeable bitmap
| ||||||||||
abstract Bitmap |
decodeJPEGByteArrayAsPurgeable(CloseableReference<PooledByteBuffer> bytesRef, int length, BitmapFactory.Options options)
Decodes a byteArray containing jpeg encoded bytes into a purgeable bitmap
Adds a JFIF End-Of-Image marker if needed before decoding. |
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
| |||||||||||
From interface
com.facebook.imagepipeline.platform.PlatformDecoder
|
Creates a bitmap from encoded bytes. Supports JPEG but callers should use decodeJPEGFromEncodedImage(EncodedImage, Bitmap.Config, Rect, int)
for partial JPEGs. In addition, a region to decode can be supplied
in order to minimize memory usage. NOTE: Not all platform decoders necessarily support
supplying specific regions.
Note: This needs to be kept because of dependencies issues.
encodedImage | the reference to the encoded image with the reference to the encoded bytes |
---|---|
bitmapConfig | the android.graphics.Bitmap.Config used to create the decoded Bitmap |
regionToDecode | optional image region to decode or null to decode the whole image |
Creates a bitmap from encoded bytes.
encodedImage | the encoded image with reference to the encoded bytes |
---|---|
bitmapConfig | the android.graphics.Bitmap.Config used to create the decoded Bitmap |
regionToDecode | optional image region to decode. currently not supported. |
colorSpace | the target color space of the decoded bitmap, must be one of the named color space in android.graphics.ColorSpace.Named. If null, then SRGB color space is assumed if the SDK version >= 26. |
TooManyBitmapsException | if the pool is full |
---|---|
OutOfMemoryError | if the Bitmap cannot be allocated |
Creates a bitmap from encoded JPEG bytes. Supports a partial JPEG image. In addition, a region to decode can be supplied in order to minimize memory usage. NOTE: Not all platform decoders necessarily support supplying specific regions.
Note: This needs to be kept because of dependencies issues.
encodedImage | the reference to the encoded image with the reference to the encoded bytes |
---|---|
bitmapConfig | the android.graphics.Bitmap.Config used to create the decoded Bitmap |
regionToDecode | optional image region to decode or null to decode the whole image. |
length | the number of encoded bytes in the buffer |
Creates a bitmap from encoded JPEG bytes. Supports a partial JPEG image.
encodedImage | the encoded image with reference to the encoded bytes |
---|---|
bitmapConfig | the android.graphics.Bitmap.Config used to create the decoded Bitmap |
regionToDecode | optional image region to decode. currently not supported. |
length | the number of encoded bytes in the buffer |
colorSpace | the target color space of the decoded bitmap, must be one of the named color space in android.graphics.ColorSpace.Named. If null, then SRGB color space is assumed if the SDK version >= 26. |
TooManyBitmapsException | if the pool is full |
---|---|
OutOfMemoryError | if the Bitmap cannot be allocated |
Pin the bitmap so that it cannot be 'purged'. Only makes sense for purgeable bitmaps WARNING: Use with caution. Make sure that the pinned bitmap is recycled eventually. Otherwise, this will simply eat up ashmem memory and eventually lead to unfortunate crashes. We *may* eventually provide an unpin method - but we don't yet have a compelling use case for that.
bitmap | the purgeable bitmap to pin |
---|
Decodes a byteArray into a purgeable bitmap
bytesRef | the byte buffer that contains the encoded bytes |
---|---|
options | the options passed to the BitmapFactory |
Decodes a byteArray containing jpeg encoded bytes into a purgeable bitmap
Adds a JFIF End-Of-Image marker if needed before decoding.
bytesRef | the byte buffer that contains the encoded bytes |
---|---|
length | the number of encoded bytes in the buffer |
options | the options passed to the BitmapFactory |