GifBitmapProvider.smali
.class public final Lcom/bumptech/glide/load/resource/gif/GifBitmapProvider;
.super Ljava/lang/Object;
.source "GifBitmapProvider.java"
# interfaces
.implements Lcom/bumptech/glide/gifdecoder/GifDecoder$BitmapProvider;
# instance fields
.field private final arrayPool:Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;
.field private final bitmapPool:Lcom/bumptech/glide/load/engine/bitmap_recycle/BitmapPool;
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>(Lcom/bumptech/glide/load/engine/bitmap_recycle/BitmapPool;)V
.registers 3
.param p1, "bitmapPool" # Lcom/bumptech/glide/load/engine/bitmap_recycle/BitmapPool;
.line 23
const/4 v0, 0x0
invoke-direct {p0, p1, v0}, Lcom/bumptech/glide/load/resource/gif/GifBitmapProvider;-><init>(Lcom/bumptech/glide/load/engine/bitmap_recycle/BitmapPool;Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;)V
.line 24
return-void
.end method
.method public constructor <init>(Lcom/bumptech/glide/load/engine/bitmap_recycle/BitmapPool;Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;)V
.registers 3
.param p1, "bitmapPool" # Lcom/bumptech/glide/load/engine/bitmap_recycle/BitmapPool;
.param p2, "arrayPool" # Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;
.line 29
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 30
iput-object p1, p0, Lcom/bumptech/glide/load/resource/gif/GifBitmapProvider;->bitmapPool:Lcom/bumptech/glide/load/engine/bitmap_recycle/BitmapPool;
.line 31
iput-object p2, p0, Lcom/bumptech/glide/load/resource/gif/GifBitmapProvider;->arrayPool:Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;
.line 32
return-void
.end method
# virtual methods
.method public obtain(IILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap;
.registers 5
.param p1, "width" # I
.param p2, "height" # I
.param p3, "config" # Landroid/graphics/Bitmap$Config;
.line 37
iget-object v0, p0, Lcom/bumptech/glide/load/resource/gif/GifBitmapProvider;->bitmapPool:Lcom/bumptech/glide/load/engine/bitmap_recycle/BitmapPool;
invoke-interface {v0, p1, p2, p3}, Lcom/bumptech/glide/load/engine/bitmap_recycle/BitmapPool;->getDirty(IILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap;
move-result-object v0
return-object v0
.end method
.method public obtainByteArray(I)[B
.registers 4
.param p1, "size" # I
.line 48
iget-object v0, p0, Lcom/bumptech/glide/load/resource/gif/GifBitmapProvider;->arrayPool:Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;
if-nez v0, :cond_7
.line 49
new-array v0, p1, [B
return-object v0
.line 51
:cond_7
const-class v1, [B
invoke-interface {v0, p1, v1}, Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;->get(ILjava/lang/Class;)Ljava/lang/Object;
move-result-object v0
check-cast v0, [B
return-object v0
.end method
.method public obtainIntArray(I)[I
.registers 4
.param p1, "size" # I
.line 65
iget-object v0, p0, Lcom/bumptech/glide/load/resource/gif/GifBitmapProvider;->arrayPool:Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;
if-nez v0, :cond_7
.line 66
new-array v0, p1, [I
return-object v0
.line 68
:cond_7
const-class v1, [I
invoke-interface {v0, p1, v1}, Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;->get(ILjava/lang/Class;)Ljava/lang/Object;
move-result-object v0
check-cast v0, [I
return-object v0
.end method
.method public release(Landroid/graphics/Bitmap;)V
.registers 3
.param p1, "bitmap" # Landroid/graphics/Bitmap;
.line 42
iget-object v0, p0, Lcom/bumptech/glide/load/resource/gif/GifBitmapProvider;->bitmapPool:Lcom/bumptech/glide/load/engine/bitmap_recycle/BitmapPool;
invoke-interface {v0, p1}, Lcom/bumptech/glide/load/engine/bitmap_recycle/BitmapPool;->put(Landroid/graphics/Bitmap;)V
.line 43
return-void
.end method
.method public release([B)V
.registers 3
.param p1, "bytes" # [B
.line 56
iget-object v0, p0, Lcom/bumptech/glide/load/resource/gif/GifBitmapProvider;->arrayPool:Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;
if-nez v0, :cond_5
.line 57
return-void
.line 59
:cond_5
invoke-interface {v0, p1}, Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;->put(Ljava/lang/Object;)V
.line 60
return-void
.end method
.method public release([I)V
.registers 3
.param p1, "array" # [I
.line 74
iget-object v0, p0, Lcom/bumptech/glide/load/resource/gif/GifBitmapProvider;->arrayPool:Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;
if-nez v0, :cond_5
.line 75
return-void
.line 77
:cond_5
invoke-interface {v0, p1}, Lcom/bumptech/glide/load/engine/bitmap_recycle/ArrayPool;->put(Ljava/lang/Object;)V
.line 78
return-void
.end method