package com.amd.aparapi.internal.jni; import com.amd.aparapi.Config; import com.amd.aparapi.internal.annotation.UsedByJNICode; /** * This class is intended to be used as a 'proxy' or 'facade' object for Java code to interact with JNI */ public abstract class ConfigJNI{ /** * Value defaults to com.amd.aparapi.config if not overridden by extending classes */ protected static final String propPkgName = Config.class.getPackage().getName(); /** * Allows the user to turn on OpenCL profiling for the JNI/OpenCL layer. * * Usage -Dcom.amd.aparapi.enableProfiling={true|false} * */ @UsedByJNICode public static final boolean enableProfiling = Boolean.getBoolean(propPkgName + ".enableProfiling"); /** * Allows the user to turn on OpenCL profiling for the JNI/OpenCL layer, this information will be written to CSV file * * Usage -Dcom.amd.aparapi.enableProfiling={true|false} * */ @UsedByJNICode public static final boolean enableProfilingCSV = Boolean.getBoolean(propPkgName + ".enableProfilingCSV"); /** * Allows the user to request that verbose JNI messages be dumped to stderr. * * Usage -Dcom.amd.aparapi.enableVerboseJNI={true|false} * */ @UsedByJNICode public static final boolean enableVerboseJNI = Boolean.getBoolean(propPkgName + ".enableVerboseJNI"); /** * Allows the user to request tracking of opencl resources. * * This is really a debugging option to help locate leaking OpenCL resources, this will be dumped to stderr. * * Usage -Dcom.amd.aparapi.enableOpenCLResourceTracking={true|false} * */ @UsedByJNICode public static final boolean enableVerboseJNIOpenCLResourceTracking = Boolean.getBoolean(propPkgName + ".enableVerboseJNIOpenCLResourceTracking"); }