summaryrefslogtreecommitdiff
path: root/rs/java/android/renderscript/Sampler.java
diff options
context:
space:
mode:
authorYang Ni <yangni@google.com>2016-04-20 18:23:58 +0000
committerandroid-build-merger <android-build-merger@google.com>2016-04-20 18:23:58 +0000
commitf17e491517fa7b4b3197f189c0a600562feb6604 (patch)
tree0dc2096b98978ba26af01a621d7caa9e9e996d50 /rs/java/android/renderscript/Sampler.java
parent108a2896276a3dfb7b43f4ffb3ae34ecf51a2128 (diff)
parent3c207ff5af7c4f0a9d9cafa6c6f5c947cfdb78ca (diff)
Merge "Made Element accessors thread-safe" am: acd0061
am: 3c207ff * commit '3c207ff5af7c4f0a9d9cafa6c6f5c947cfdb78ca': Made Element accessors thread-safe Change-Id: I5bc65b3b28c328081335a04ce15864a6dd072543
Diffstat (limited to 'rs/java/android/renderscript/Sampler.java')
-rw-r--r--rs/java/android/renderscript/Sampler.java162
1 files changed, 99 insertions, 63 deletions
diff --git a/rs/java/android/renderscript/Sampler.java b/rs/java/android/renderscript/Sampler.java
index 5c4bae99ba8f..70e88bc51f79 100644
--- a/rs/java/android/renderscript/Sampler.java
+++ b/rs/java/android/renderscript/Sampler.java
@@ -98,13 +98,17 @@ public class Sampler extends BaseObj {
* @return Sampler
*/
public static Sampler CLAMP_NEAREST(RenderScript rs) {
- if(rs.mSampler_CLAMP_NEAREST == null) {
- Builder b = new Builder(rs);
- b.setMinification(Value.NEAREST);
- b.setMagnification(Value.NEAREST);
- b.setWrapS(Value.CLAMP);
- b.setWrapT(Value.CLAMP);
- rs.mSampler_CLAMP_NEAREST = b.create();
+ if (rs.mSampler_CLAMP_NEAREST == null) {
+ synchronized (rs) {
+ if (rs.mSampler_CLAMP_NEAREST == null) {
+ Builder b = new Builder(rs);
+ b.setMinification(Value.NEAREST);
+ b.setMagnification(Value.NEAREST);
+ b.setWrapS(Value.CLAMP);
+ b.setWrapT(Value.CLAMP);
+ rs.mSampler_CLAMP_NEAREST = b.create();
+ }
+ }
}
return rs.mSampler_CLAMP_NEAREST;
}
@@ -118,13 +122,17 @@ public class Sampler extends BaseObj {
* @return Sampler
*/
public static Sampler CLAMP_LINEAR(RenderScript rs) {
- if(rs.mSampler_CLAMP_LINEAR == null) {
- Builder b = new Builder(rs);
- b.setMinification(Value.LINEAR);
- b.setMagnification(Value.LINEAR);
- b.setWrapS(Value.CLAMP);
- b.setWrapT(Value.CLAMP);
- rs.mSampler_CLAMP_LINEAR = b.create();
+ if (rs.mSampler_CLAMP_LINEAR == null) {
+ synchronized (rs) {
+ if (rs.mSampler_CLAMP_LINEAR == null) {
+ Builder b = new Builder(rs);
+ b.setMinification(Value.LINEAR);
+ b.setMagnification(Value.LINEAR);
+ b.setWrapS(Value.CLAMP);
+ b.setWrapT(Value.CLAMP);
+ rs.mSampler_CLAMP_LINEAR = b.create();
+ }
+ }
}
return rs.mSampler_CLAMP_LINEAR;
}
@@ -138,13 +146,17 @@ public class Sampler extends BaseObj {
* @return Sampler
*/
public static Sampler CLAMP_LINEAR_MIP_LINEAR(RenderScript rs) {
- if(rs.mSampler_CLAMP_LINEAR_MIP_LINEAR == null) {
- Builder b = new Builder(rs);
- b.setMinification(Value.LINEAR_MIP_LINEAR);
- b.setMagnification(Value.LINEAR);
- b.setWrapS(Value.CLAMP);
- b.setWrapT(Value.CLAMP);
- rs.mSampler_CLAMP_LINEAR_MIP_LINEAR = b.create();
+ if (rs.mSampler_CLAMP_LINEAR_MIP_LINEAR == null) {
+ synchronized (rs) {
+ if (rs.mSampler_CLAMP_LINEAR_MIP_LINEAR == null) {
+ Builder b = new Builder(rs);
+ b.setMinification(Value.LINEAR_MIP_LINEAR);
+ b.setMagnification(Value.LINEAR);
+ b.setWrapS(Value.CLAMP);
+ b.setWrapT(Value.CLAMP);
+ rs.mSampler_CLAMP_LINEAR_MIP_LINEAR = b.create();
+ }
+ }
}
return rs.mSampler_CLAMP_LINEAR_MIP_LINEAR;
}
@@ -158,13 +170,17 @@ public class Sampler extends BaseObj {
* @return Sampler
*/
public static Sampler WRAP_NEAREST(RenderScript rs) {
- if(rs.mSampler_WRAP_NEAREST == null) {
- Builder b = new Builder(rs);
- b.setMinification(Value.NEAREST);
- b.setMagnification(Value.NEAREST);
- b.setWrapS(Value.WRAP);
- b.setWrapT(Value.WRAP);
- rs.mSampler_WRAP_NEAREST = b.create();
+ if (rs.mSampler_WRAP_NEAREST == null) {
+ synchronized (rs) {
+ if (rs.mSampler_WRAP_NEAREST == null) {
+ Builder b = new Builder(rs);
+ b.setMinification(Value.NEAREST);
+ b.setMagnification(Value.NEAREST);
+ b.setWrapS(Value.WRAP);
+ b.setWrapT(Value.WRAP);
+ rs.mSampler_WRAP_NEAREST = b.create();
+ }
+ }
}
return rs.mSampler_WRAP_NEAREST;
}
@@ -178,13 +194,17 @@ public class Sampler extends BaseObj {
* @return Sampler
*/
public static Sampler WRAP_LINEAR(RenderScript rs) {
- if(rs.mSampler_WRAP_LINEAR == null) {
- Builder b = new Builder(rs);
- b.setMinification(Value.LINEAR);
- b.setMagnification(Value.LINEAR);
- b.setWrapS(Value.WRAP);
- b.setWrapT(Value.WRAP);
- rs.mSampler_WRAP_LINEAR = b.create();
+ if (rs.mSampler_WRAP_LINEAR == null) {
+ synchronized (rs) {
+ if (rs.mSampler_WRAP_LINEAR == null) {
+ Builder b = new Builder(rs);
+ b.setMinification(Value.LINEAR);
+ b.setMagnification(Value.LINEAR);
+ b.setWrapS(Value.WRAP);
+ b.setWrapT(Value.WRAP);
+ rs.mSampler_WRAP_LINEAR = b.create();
+ }
+ }
}
return rs.mSampler_WRAP_LINEAR;
}
@@ -198,13 +218,17 @@ public class Sampler extends BaseObj {
* @return Sampler
*/
public static Sampler WRAP_LINEAR_MIP_LINEAR(RenderScript rs) {
- if(rs.mSampler_WRAP_LINEAR_MIP_LINEAR == null) {
- Builder b = new Builder(rs);
- b.setMinification(Value.LINEAR_MIP_LINEAR);
- b.setMagnification(Value.LINEAR);
- b.setWrapS(Value.WRAP);
- b.setWrapT(Value.WRAP);
- rs.mSampler_WRAP_LINEAR_MIP_LINEAR = b.create();
+ if (rs.mSampler_WRAP_LINEAR_MIP_LINEAR == null) {
+ synchronized (rs) {
+ if (rs.mSampler_WRAP_LINEAR_MIP_LINEAR == null) {
+ Builder b = new Builder(rs);
+ b.setMinification(Value.LINEAR_MIP_LINEAR);
+ b.setMagnification(Value.LINEAR);
+ b.setWrapS(Value.WRAP);
+ b.setWrapT(Value.WRAP);
+ rs.mSampler_WRAP_LINEAR_MIP_LINEAR = b.create();
+ }
+ }
}
return rs.mSampler_WRAP_LINEAR_MIP_LINEAR;
}
@@ -218,13 +242,17 @@ public class Sampler extends BaseObj {
* @return Sampler
*/
public static Sampler MIRRORED_REPEAT_NEAREST(RenderScript rs) {
- if(rs.mSampler_MIRRORED_REPEAT_NEAREST == null) {
- Builder b = new Builder(rs);
- b.setMinification(Value.NEAREST);
- b.setMagnification(Value.NEAREST);
- b.setWrapS(Value.MIRRORED_REPEAT);
- b.setWrapT(Value.MIRRORED_REPEAT);
- rs.mSampler_MIRRORED_REPEAT_NEAREST = b.create();
+ if (rs.mSampler_MIRRORED_REPEAT_NEAREST == null) {
+ synchronized (rs) {
+ if (rs.mSampler_MIRRORED_REPEAT_NEAREST == null) {
+ Builder b = new Builder(rs);
+ b.setMinification(Value.NEAREST);
+ b.setMagnification(Value.NEAREST);
+ b.setWrapS(Value.MIRRORED_REPEAT);
+ b.setWrapT(Value.MIRRORED_REPEAT);
+ rs.mSampler_MIRRORED_REPEAT_NEAREST = b.create();
+ }
+ }
}
return rs.mSampler_MIRRORED_REPEAT_NEAREST;
}
@@ -238,13 +266,17 @@ public class Sampler extends BaseObj {
* @return Sampler
*/
public static Sampler MIRRORED_REPEAT_LINEAR(RenderScript rs) {
- if(rs.mSampler_MIRRORED_REPEAT_LINEAR == null) {
- Builder b = new Builder(rs);
- b.setMinification(Value.LINEAR);
- b.setMagnification(Value.LINEAR);
- b.setWrapS(Value.MIRRORED_REPEAT);
- b.setWrapT(Value.MIRRORED_REPEAT);
- rs.mSampler_MIRRORED_REPEAT_LINEAR = b.create();
+ if (rs.mSampler_MIRRORED_REPEAT_LINEAR == null) {
+ synchronized (rs) {
+ if (rs.mSampler_MIRRORED_REPEAT_LINEAR == null) {
+ Builder b = new Builder(rs);
+ b.setMinification(Value.LINEAR);
+ b.setMagnification(Value.LINEAR);
+ b.setWrapS(Value.MIRRORED_REPEAT);
+ b.setWrapT(Value.MIRRORED_REPEAT);
+ rs.mSampler_MIRRORED_REPEAT_LINEAR = b.create();
+ }
+ }
}
return rs.mSampler_MIRRORED_REPEAT_LINEAR;
}
@@ -258,13 +290,17 @@ public class Sampler extends BaseObj {
* @return Sampler
*/
public static Sampler MIRRORED_REPEAT_LINEAR_MIP_LINEAR(RenderScript rs) {
- if(rs.mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR == null) {
- Builder b = new Builder(rs);
- b.setMinification(Value.LINEAR_MIP_LINEAR);
- b.setMagnification(Value.LINEAR);
- b.setWrapS(Value.MIRRORED_REPEAT);
- b.setWrapT(Value.MIRRORED_REPEAT);
- rs.mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR = b.create();
+ if (rs.mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR == null) {
+ synchronized (rs) {
+ if (rs.mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR == null) {
+ Builder b = new Builder(rs);
+ b.setMinification(Value.LINEAR_MIP_LINEAR);
+ b.setMagnification(Value.LINEAR);
+ b.setWrapS(Value.MIRRORED_REPEAT);
+ b.setWrapT(Value.MIRRORED_REPEAT);
+ rs.mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR = b.create();
+ }
+ }
}
return rs.mSampler_MIRRORED_REPEAT_LINEAR_MIP_LINEAR;
}