.class public Lpl/droidsonroids/gif/GifTexImage2D; .super Ljava/lang/Object; .source "GifTexImage2D.java" # instance fields .field private final mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; # direct methods .method public constructor (Lpl/droidsonroids/gif/InputSource;Lpl/droidsonroids/gif/GifOptions;)V .registers 4 .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 33 invoke-direct {p0}, Ljava/lang/Object;->()V if-nez p2, :cond_a .line 35 new-instance p2, Lpl/droidsonroids/gif/GifOptions; invoke-direct {p2}, Lpl/droidsonroids/gif/GifOptions;->()V .line 37 :cond_a invoke-virtual {p1}, Lpl/droidsonroids/gif/InputSource;->open()Lpl/droidsonroids/gif/GifInfoHandle; move-result-object p1 iput-object p1, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; .line 38 iget-char v0, p2, Lpl/droidsonroids/gif/GifOptions;->inSampleSize:C iget-boolean p2, p2, Lpl/droidsonroids/gif/GifOptions;->inIsOpaque:Z invoke-virtual {p1, v0, p2}, Lpl/droidsonroids/gif/GifInfoHandle;->setOptions(CZ)V .line 39 invoke-virtual {p1}, Lpl/droidsonroids/gif/GifInfoHandle;->initTexImageDescriptor()V return-void .end method # virtual methods .method protected final finalize()V .registers 2 .annotation system Ldalvik/annotation/Throws; value = { Ljava/lang/Throwable; } .end annotation .line 158 :try_start_0 invoke-virtual {p0}, Lpl/droidsonroids/gif/GifTexImage2D;->recycle()V :try_end_3 .catchall {:try_start_0 .. :try_end_3} :catchall_7 .line 160 invoke-super {p0}, Ljava/lang/Object;->finalize()V return-void :catchall_7 move-exception v0 invoke-super {p0}, Ljava/lang/Object;->finalize()V .line 161 throw v0 .end method .method public getCurrentFrameIndex()I .registers 2 .line 74 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; invoke-virtual {v0}, Lpl/droidsonroids/gif/GifInfoHandle;->getCurrentFrameIndex()I move-result v0 return v0 .end method .method public getDuration()I .registers 2 .line 152 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; invoke-virtual {v0}, Lpl/droidsonroids/gif/GifInfoHandle;->getDuration()I move-result v0 return v0 .end method .method public getFrameDuration(I)I .registers 3 .line 50 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; invoke-virtual {v0, p1}, Lpl/droidsonroids/gif/GifInfoHandle;->getFrameDuration(I)I move-result p1 return p1 .end method .method public getHeight()I .registers 2 .line 143 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; invoke-virtual {v0}, Lpl/droidsonroids/gif/GifInfoHandle;->getHeight()I move-result v0 return v0 .end method .method public getNumberOfFrames()I .registers 2 .line 67 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; invoke-virtual {v0}, Lpl/droidsonroids/gif/GifInfoHandle;->getNumberOfFrames()I move-result v0 return v0 .end method .method public getWidth()I .registers 2 .line 136 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; invoke-virtual {v0}, Lpl/droidsonroids/gif/GifInfoHandle;->getWidth()I move-result v0 return v0 .end method .method public glTexImage2D(II)V .registers 4 .line 95 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; invoke-virtual {v0, p1, p2}, Lpl/droidsonroids/gif/GifInfoHandle;->glTexImage2D(II)V return-void .end method .method public glTexSubImage2D(II)V .registers 4 .line 106 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; invoke-virtual {v0, p1, p2}, Lpl/droidsonroids/gif/GifInfoHandle;->glTexSubImage2D(II)V return-void .end method .method public recycle()V .registers 2 .line 127 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; if-eqz v0, :cond_7 .line 128 invoke-virtual {v0}, Lpl/droidsonroids/gif/GifInfoHandle;->recycle()V :cond_7 return-void .end method .method public seekToFrame(I)V .registers 3 .line 60 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; invoke-virtual {v0, p1}, Lpl/droidsonroids/gif/GifInfoHandle;->seekToFrameGL(I)V return-void .end method .method public setSpeed(F)V .registers 3 .line 84 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; invoke-virtual {v0, p1}, Lpl/droidsonroids/gif/GifInfoHandle;->setSpeedFactor(F)V return-void .end method .method public startDecoderThread()V .registers 2 .line 113 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; invoke-virtual {v0}, Lpl/droidsonroids/gif/GifInfoHandle;->startDecoderThread()V return-void .end method .method public stopDecoderThread()V .registers 2 .line 120 iget-object v0, p0, Lpl/droidsonroids/gif/GifTexImage2D;->mGifInfoHandle:Lpl/droidsonroids/gif/GifInfoHandle; invoke-virtual {v0}, Lpl/droidsonroids/gif/GifInfoHandle;->stopDecoderThread()V return-void .end method