private void setupEnvironment(ImagePreset preset, boolean highResPreview) { mEnvironment.setPipeline(this); mEnvironment.setFiltersManager(mFiltersManager); mEnvironment.setBitmapCache(MasterImage.getImage().getBitmapCache()); if (highResPreview) { mEnvironment.setScaleFactor(mHighResPreviewScaleFactor); } else { mEnvironment.setScaleFactor(mPreviewScaleFactor); } mEnvironment.setQuality(FilterEnvironment.QUALITY_PREVIEW); mEnvironment.setImagePreset(preset); mEnvironment.setStop(false); }
public synchronized Bitmap renderFinalImage(Bitmap bitmap, ImagePreset preset) { synchronized (CachingPipeline.class) { if (getRenderScriptContext() == null) { return bitmap; } setupEnvironment(preset, false); mEnvironment.setQuality(FilterEnvironment.QUALITY_FINAL); mEnvironment.setScaleFactor(1.0f); mFiltersManager.freeFilterResources(preset); bitmap = preset.applyGeometry(bitmap, mEnvironment); bitmap = preset.apply(bitmap, mEnvironment); return bitmap; } }