package org.andengine.util; import android.graphics.Bitmap; /** * (c) 2013 Nicolas Gramlich * * @author Nicolas Gramlich * @since 18:52:32 - 18.02.2013 */ public final class BitmapUtils { // =========================================================== // Constants // =========================================================== // =========================================================== // Fields // =========================================================== // =========================================================== // Constructors // =========================================================== private BitmapUtils() { } // =========================================================== // Getter & Setter // =========================================================== // =========================================================== // Methods from SuperClass/Interfaces // =========================================================== // =========================================================== // Methods // =========================================================== /** * @param pBitmap * * @return a {@link Bitmap} that is {@link Bitmap#isMutable()}. If <code>pBitmap</code> is {@link Bitmap#isMutable()} then <code>pBitmap</code> is returned, otherwise a new {@link Bitmap} instance is returned that is {@link Bitmap#isMutable()} and <code>pBitmap</code> is {@link Bitmap#recycle()}d. */ public static Bitmap ensureBitmapIsMutable(final Bitmap pBitmap) { if (pBitmap.isMutable()) { return pBitmap; } else { final Bitmap mutableBitmap = pBitmap.copy(pBitmap.getConfig(), true); pBitmap.recycle(); return mutableBitmap; } } // =========================================================== // Inner and Anonymous Classes // =========================================================== }