1be9ba784e13d6f8bf390ec0f11fc2600a38b0548Sam Juddpackage com.bumptech.glide.load.resource.gif;
2be9ba784e13d6f8bf390ec0f11fc2600a38b0548Sam Judd
39a293d642c30d91e22e46e1a89e64040476d764fRobert Pappimport com.bumptech.glide.load.resource.drawable.DrawableResource;
44185efc3779f8caf2dd8103aa84705e7a88f679cSam Juddimport com.bumptech.glide.util.Util;
5be9ba784e13d6f8bf390ec0f11fc2600a38b0548Sam Judd
6b5419dc08eb0a0f82821d774435720e5a31bc936Sam Judd/**
721c2822985058df655ee4874798297f74c5e367eSam Judd * A resource wrapping an {@link com.bumptech.glide.load.resource.gif.GifDrawable}.
8b5419dc08eb0a0f82821d774435720e5a31bc936Sam Judd */
99a293d642c30d91e22e46e1a89e64040476d764fRobert Papppublic class GifDrawableResource extends DrawableResource<GifDrawable> {
1021c2822985058df655ee4874798297f74c5e367eSam Judd    public GifDrawableResource(GifDrawable drawable) {
119a293d642c30d91e22e46e1a89e64040476d764fRobert Papp        super(drawable);
12be9ba784e13d6f8bf390ec0f11fc2600a38b0548Sam Judd    }
13be9ba784e13d6f8bf390ec0f11fc2600a38b0548Sam Judd
14be9ba784e13d6f8bf390ec0f11fc2600a38b0548Sam Judd    @Override
15be9ba784e13d6f8bf390ec0f11fc2600a38b0548Sam Judd    public int getSize() {
164185efc3779f8caf2dd8103aa84705e7a88f679cSam Judd        return drawable.getData().length + Util.getBitmapByteSize(drawable.getFirstFrame());
17be9ba784e13d6f8bf390ec0f11fc2600a38b0548Sam Judd    }
18be9ba784e13d6f8bf390ec0f11fc2600a38b0548Sam Judd
19be9ba784e13d6f8bf390ec0f11fc2600a38b0548Sam Judd    @Override
205dc4cdef8898d8f34590823961c7fe751784edebSam Judd    public void recycle() {
2121c2822985058df655ee4874798297f74c5e367eSam Judd        drawable.stop();
2221c2822985058df655ee4874798297f74c5e367eSam Judd        drawable.recycle();
23be9ba784e13d6f8bf390ec0f11fc2600a38b0548Sam Judd    }
24be9ba784e13d6f8bf390ec0f11fc2600a38b0548Sam Judd}
25