com.bumptech.glide.load.resource.bitmap
Class StreamBitmapDecoder

java.lang.Object
  extended by com.bumptech.glide.load.resource.bitmap.StreamBitmapDecoder
All Implemented Interfaces:
ResourceDecoder<InputStream,Bitmap>

public class StreamBitmapDecoder
extends Object
implements ResourceDecoder<InputStream,Bitmap>

An ResourceDecoder that uses an Downsampler to decode an Bitmap from an InputStream.


Constructor Summary
StreamBitmapDecoder(BitmapPool bitmapPool)
           
StreamBitmapDecoder(Context context)
           
StreamBitmapDecoder(Downsampler downsampler, BitmapPool bitmapPool, DecodeFormat decodeFormat)
           
 
Method Summary
 Resource<Bitmap> decode(InputStream source, int width, int height)
          Returns a decoded resource from the given data or null if no resource could be decoded.
 String getId()
          Returns an ID identifying any transformation this decoder may apply to the given data that will be mixed in to the cache key.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StreamBitmapDecoder

public StreamBitmapDecoder(Context context)

StreamBitmapDecoder

public StreamBitmapDecoder(BitmapPool bitmapPool)

StreamBitmapDecoder

public StreamBitmapDecoder(Downsampler downsampler,
                           BitmapPool bitmapPool,
                           DecodeFormat decodeFormat)
Method Detail

decode

public Resource<Bitmap> decode(InputStream source,
                               int width,
                               int height)
Description copied from interface: ResourceDecoder
Returns a decoded resource from the given data or null if no resource could be decoded.

The source is managed by the caller, there's no need to close it. The returned Resource will be released when the engine sees fit.

Note - The width and height arguments are hints only, there is no requirement that the decoded resource exactly match the given dimensions. A typical use case would be to use the target dimensions to determine how much to downsample Bitmaps by to avoid overly large allocations.

Specified by:
decode in interface ResourceDecoder<InputStream,Bitmap>
Parameters:
source - The data the resource should be decoded from.
width - The ideal width of the decoded resource.
height - The ideal height of the decoded resource.

getId

public String getId()
Description copied from interface: ResourceDecoder
Returns an ID identifying any transformation this decoder may apply to the given data that will be mixed in to the cache key.

If the decoder does not transform the data in a way that significantly affects the cached result (ie performs no downsampling) an empty string is an appropriate id.

Specified by:
getId in interface ResourceDecoder<InputStream,Bitmap>