aboutsummaryrefslogtreecommitdiffstats
path: root/src/com/mbien/opencl/CLSampler.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/mbien/opencl/CLSampler.java')
-rw-r--r--src/com/mbien/opencl/CLSampler.java123
1 files changed, 0 insertions, 123 deletions
diff --git a/src/com/mbien/opencl/CLSampler.java b/src/com/mbien/opencl/CLSampler.java
deleted file mode 100644
index 397639c9..00000000
--- a/src/com/mbien/opencl/CLSampler.java
+++ /dev/null
@@ -1,123 +0,0 @@
-package com.mbien.opencl;
-
-import com.jogamp.common.nio.Int64Buffer;
-import com.jogamp.common.nio.PointerBuffer;
-import java.nio.Buffer;
-
-import static com.mbien.opencl.CLException.*;
-import static com.mbien.opencl.CL.*;
-import static com.mbien.opencl.util.CLUtil.*;
-
-/**
- * Object representing an OpenCL sampler.
- * @see CLContext#createSampler(com.mbien.opencl.CLSampler.AddressingMode, com.mbien.opencl.CLSampler.FilteringMode, boolean)
- * @author Michael Bien
- */
-public class CLSampler extends CLObject implements CLResource {
-
- private final CLSamplerInfoAccessor samplerInfo;
-
- private CLSampler(CLContext context, long id, AddressingMode addrMode, FilteringMode filtMode, boolean normalizedCoords) {
- super(context, id);
- this.samplerInfo = new CLSamplerInfoAccessor();
- }
-
- static CLSampler create(CLContext context, AddressingMode addrMode, FilteringMode filtMode, boolean normalizedCoords) {
- int[] error = new int[1];
-
- long id = context.cl.clCreateSampler(context.ID, clBoolean(normalizedCoords), addrMode.MODE, filtMode.MODE, error, 0);
-
- checkForError(error[0], "can not create sampler");
- return new CLSampler(context, id, addrMode, filtMode, normalizedCoords);
- }
-
- public FilteringMode getFilteringMode() {
- int info = (int)samplerInfo.getLong(CL_SAMPLER_FILTER_MODE);
- return FilteringMode.valueOf(info);
- }
-
- public AddressingMode getAddressingMode() {
- int info = (int)samplerInfo.getLong(CL_SAMPLER_ADDRESSING_MODE);
- return AddressingMode.valueOf(info);
- }
-
- public boolean hasNormalizedCoords() {
- return samplerInfo.getLong(CL_SAMPLER_NORMALIZED_COORDS) == CL_TRUE;
- }
-
- public void release() {
- int ret = cl.clReleaseSampler(ID);
- context.onSamplerReleased(this);
- checkForError(ret, "can not release sampler");
- }
-
- public void close() {
- release();
- }
-
- private class CLSamplerInfoAccessor extends CLInfoAccessor {
-
- @Override
- protected int getInfo(int name, long valueSize, Buffer value, Int64Buffer valueSizeRet) {
- return cl.clGetSamplerInfo(ID, name, valueSize, value, valueSizeRet);
- }
-
- }
-
- public enum FilteringMode {
-
- NEAREST(CL_FILTER_NEAREST),
- LINEAR(CL_FILTER_LINEAR);
-
- /**
- * Value of wrapped OpenCL sampler filtering mode type.
- */
- public final int MODE;
-
- private FilteringMode(int mode) {
- this.MODE = mode;
- }
-
- public static FilteringMode valueOf(int mode) {
- switch(mode) {
- case(CL_FILTER_NEAREST):
- return NEAREST;
- case(CL_FILTER_LINEAR):
- return LINEAR;
- }
- return null;
- }
- }
-
- public enum AddressingMode {
-
- REPEAT(CL_ADDRESS_REPEAT),
- CLAMP_TO_EDGE(CL_ADDRESS_CLAMP_TO_EDGE),
- CLAMP(CL_ADDRESS_CLAMP),
- NONE(CL_ADDRESS_NONE);
-
- /**
- * Value of wrapped OpenCL sampler addressing mode type.
- */
- public final int MODE;
-
- private AddressingMode(int mode) {
- this.MODE = mode;
- }
-
- public static AddressingMode valueOf(int mode) {
- switch(mode) {
- case(CL_ADDRESS_REPEAT):
- return REPEAT;
- case(CL_ADDRESS_CLAMP_TO_EDGE):
- return CLAMP_TO_EDGE;
- case(CL_ADDRESS_CLAMP):
- return CLAMP;
- case(CL_ADDRESS_NONE):
- return NONE;
- }
- return null;
- }
- }
-
-}