1bcf4a0dae04a4ad14287eeb34069a97c96fe9bb1Sam Juddpackage com.bumptech.glide.load.resource.bitmap; 2b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd 3b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Juddimport android.graphics.Bitmap; 4b7c7c2b2505f996dbda219faeb0d08dc1c9982d7Sam Juddimport com.bumptech.glide.load.engine.Resource; 59fc12334a7d14347cd6951d0653264b2597bd3a0Sam Juddimport com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; 6b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Juddimport com.bumptech.glide.util.Util; 7b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd 859dfe6bccb7a462c6239aaca30ead1f3db47e555Sam Juddpublic class BitmapResource extends Resource<Bitmap> { 9b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd private Bitmap bitmap; 10faacbfc1109f255836b4091f6459976295bba7baSam Judd private BitmapPool bitmapPool; 11b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd 12faacbfc1109f255836b4091f6459976295bba7baSam Judd public BitmapResource(Bitmap bitmap, BitmapPool bitmapPool) { 13b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd this.bitmap = bitmap; 14faacbfc1109f255836b4091f6459976295bba7baSam Judd this.bitmapPool = bitmapPool; 15b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd } 16b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd 17b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd @Override 18b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd public Bitmap get() { 19b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd return bitmap; 20b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd } 21b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd 22b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd @Override 23b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd public int getSize() { 24b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd return Util.getSize(bitmap); 25b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd } 26faacbfc1109f255836b4091f6459976295bba7baSam Judd 27faacbfc1109f255836b4091f6459976295bba7baSam Judd @Override 2859dfe6bccb7a462c6239aaca30ead1f3db47e555Sam Judd public void recycleInternal() { 29faacbfc1109f255836b4091f6459976295bba7baSam Judd if (!bitmapPool.put(bitmap)) { 30faacbfc1109f255836b4091f6459976295bba7baSam Judd bitmap.recycle(); 31faacbfc1109f255836b4091f6459976295bba7baSam Judd } 32faacbfc1109f255836b4091f6459976295bba7baSam Judd } 33b215b51a0ba86c2db14bd735cc0207cf3f1c7cd8Sam Judd} 34