summaryrefslogtreecommitdiff
path: root/rs/java/android/renderscript/RenderScript.java
diff options
context:
space:
mode:
authorTim Murray <timmurray@google.com>2015-04-10 01:30:14 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-04-10 01:30:14 +0000
commit72fcf9eb1079312afd7bdbee167c759109af4244 (patch)
treea5fac407b346ff23436478140062d46fe8a3691f /rs/java/android/renderscript/RenderScript.java
parent037dfb9423a0988398b67520546dae5673aa54bb (diff)
parentaf61d43d6ce065832f906757c2185c3dad74d489 (diff)
am af61d43d: am 6d718c2f: Merge "Add support for setting the cache directory."
* commit 'af61d43d6ce065832f906757c2185c3dad74d489': Add support for setting the cache directory.
Diffstat (limited to 'rs/java/android/renderscript/RenderScript.java')
-rw-r--r--rs/java/android/renderscript/RenderScript.java14
1 files changed, 14 insertions, 0 deletions
diff --git a/rs/java/android/renderscript/RenderScript.java b/rs/java/android/renderscript/RenderScript.java
index 51387196dea9..126b8c7ed46a 100644
--- a/rs/java/android/renderscript/RenderScript.java
+++ b/rs/java/android/renderscript/RenderScript.java
@@ -16,6 +16,7 @@
package android.renderscript;
+import java.io.File;
import java.lang.reflect.Method;
import java.util.concurrent.locks.ReentrantReadWriteLock;
@@ -231,6 +232,11 @@ public class RenderScript {
validate();
rsnContextSetPriority(mContext, p);
}
+ native void rsnContextSetCacheDir(long con, String cacheDir);
+ synchronized void nContextSetCacheDir(String cacheDir) {
+ validate();
+ rsnContextSetCacheDir(mContext, cacheDir);
+ }
native void rsnContextDump(long con, int bits);
synchronized void nContextDump(int bits) {
validate();
@@ -1326,6 +1332,14 @@ public class RenderScript {
if (rs.mContext == 0) {
throw new RSDriverException("Failed to create RS context.");
}
+
+ // set up cache directory for entire context
+ final String CACHE_PATH = "com.android.renderscript.cache";
+ File f = new File(RenderScriptCacheDir.mCacheDir, CACHE_PATH);
+ String mCachePath = f.getAbsolutePath();
+ f.mkdirs();
+ rs.nContextSetCacheDir(mCachePath);
+
rs.mMessageThread = new MessageThread(rs);
rs.mMessageThread.start();
return rs;