aboutsummaryrefslogtreecommitdiffstats
path: root/src/libgamma_GammaRamps.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libgamma_GammaRamps.c')
-rw-r--r--src/libgamma_GammaRamps.c149
1 files changed, 149 insertions, 0 deletions
diff --git a/src/libgamma_GammaRamps.c b/src/libgamma_GammaRamps.c
index cae50fa..2a12e82 100644
--- a/src/libgamma_GammaRamps.c
+++ b/src/libgamma_GammaRamps.c
@@ -18,16 +18,165 @@
#include "libgamma_GammaRamps.h"
+/**
+ * Create and initialise a gamma ramp in the proper way that allows all adjustment
+ * methods to read from and write to it without causing segmentation violation.
+ *
+ * @param red_size The size of the encoding axis of the red gamma ramp.
+ * @param green_size The size of the encoding axis of the green gamma ramp.
+ * @param blue_size The size of the encoding axis of the blue gamma ramp.
+ * @return Element 0: The address of the native object.
+ * Element 1: The address of the red gamma ramp.
+ * Element 2: The address of the green gamma ramp.
+ * Element 3: The address of the blue gamma ramp.
+ * Element 4: Zero on success, an error code on error.
+ */
jlongArray Java_libgamma_GammaRamps_libgamma_1gamma_1ramps8_1create(JNIEnv *, jclass, jint, jint, jint);
+
+
+/**
+ * Create and initialise a gamma ramp in the proper way that allows all adjustment
+ * methods to read from and write to it without causing segmentation violation.
+ *
+ * @param red_size The size of the encoding axis of the red gamma ramp.
+ * @param green_size The size of the encoding axis of the green gamma ramp.
+ * @param blue_size The size of the encoding axis of the blue gamma ramp.
+ * @return Element 0: The address of the native object.
+ * Element 1: The address of the red gamma ramp.
+ * Element 2: The address of the green gamma ramp.
+ * Element 3: The address of the blue gamma ramp.
+ * Element 4: Zero on success, an error code on error.
+ */
jlongArray Java_libgamma_GammaRamps_libgamma_1gamma_1ramps16_1create(JNIEnv *, jclass, jint, jint, jint);
+
+
+/**
+ * Create and initialise a gamma ramp in the proper way that allows all adjustment
+ * methods to read from and write to it without causing segmentation violation.
+ *
+ * @param red_size The size of the encoding axis of the red gamma ramp.
+ * @param green_size The size of the encoding axis of the green gamma ramp.
+ * @param blue_size The size of the encoding axis of the blue gamma ramp.
+ * @return Element 0: The address of the native object.
+ * Element 1: The address of the red gamma ramp.
+ * Element 2: The address of the green gamma ramp.
+ * Element 3: The address of the blue gamma ramp.
+ * Element 4: Zero on success, an error code on error.
+ */
jlongArray Java_libgamma_GammaRamps_libgamma_1gamma_1ramps32_1create(JNIEnv *, jclass, jint, jint, jint);
+
+
+/**
+ * Create and initialise a gamma ramp in the proper way that allows all adjustment
+ * methods to read from and write to it without causing segmentation violation.
+ *
+ * @param red_size The size of the encoding axis of the red gamma ramp.
+ * @param green_size The size of the encoding axis of the green gamma ramp.
+ * @param blue_size The size of the encoding axis of the blue gamma ramp.
+ * @return Element 0: The address of the native object.
+ * Element 1: The address of the red gamma ramp.
+ * Element 2: The address of the green gamma ramp.
+ * Element 3: The address of the blue gamma ramp.
+ * Element 4: Zero on success, an error code on error.
+ */
jlongArray Java_libgamma_GammaRamps_libgamma_1gamma_1ramps64_1create(JNIEnv *, jclass, jint, jint, jint);
+
+
+/**
+ * Create and initialise a gamma ramp in the proper way that allows all adjustment
+ * methods to read from and write to it without causing segmentation violation.
+ *
+ * @param red_size The size of the encoding axis of the red gamma ramp.
+ * @param green_size The size of the encoding axis of the green gamma ramp.
+ * @param blue_size The size of the encoding axis of the blue gamma ramp.
+ * @return Element 0: The address of the native object.
+ * Element 1: The address of the red gamma ramp.
+ * Element 2: The address of the green gamma ramp.
+ * Element 3: The address of the blue gamma ramp.
+ * Element 4: Zero on success, an error code on error.
+ */
jlongArray Java_libgamma_GammaRamps_libgamma_1gamma_1rampsf_1create(JNIEnv *, jclass, jint, jint, jint);
+
+
+/**
+ * Create and initialise a gamma ramp in the proper way that allows all adjustment
+ * methods to read from and write to it without causing segmentation violation.
+ *
+ * @param red_size The size of the encoding axis of the red gamma ramp.
+ * @param green_size The size of the encoding axis of the green gamma ramp.
+ * @param blue_size The size of the encoding axis of the blue gamma ramp.
+ * @return Element 0: The address of the native object.
+ * Element 1: The address of the red gamma ramp.
+ * Element 2: The address of the green gamma ramp.
+ * Element 3: The address of the blue gamma ramp.
+ * Element 4: Zero on success, an error code on error.
+ */
jlongArray Java_libgamma_GammaRamps_libgamma_1gamma_1rampsd_1create(JNIEnv *, jclass, jint, jint, jint);
+
+
+
+/**
+ * Release resources that are held by a gamma ramp strcuture that
+ * has been allocated by {@link #libgamma_gamma_ramps8_create} or
+ * otherwise initialised in the proper manner, as well as release
+ * the pointer to the structure.
+ *
+ * @param address The gamma ramps.
+ */
void Java_libgamma_GammaRamps_libgamma_1gamma_1ramps8_1free(JNIEnv *, jclass, jlong);
+
+
+/**
+ * Release resources that are held by a gamma ramp strcuture that
+ * has been allocated by {@link #libgamma_gamma_ramps16_create} or
+ * otherwise initialised in the proper manner, as well as release
+ * the pointer to the structure.
+ *
+ * @param address The gamma ramps.
+ */
void Java_libgamma_GammaRamps_libgamma_1gamma_1ramps16_1free(JNIEnv *, jclass, jlong);
+
+
+/**
+ * Release resources that are held by a gamma ramp strcuture that
+ * has been allocated by {@link #libgamma_gamma_ramps32_create} or
+ * otherwise initialised in the proper manner, as well as release
+ * the pointer to the structure.
+ *
+ * @param address The gamma ramps.
+ */
void Java_libgamma_GammaRamps_libgamma_1gamma_1ramps32_1free(JNIEnv *, jclass, jlong);
+
+
+/**
+ * Release resources that are held by a gamma ramp strcuture that
+ * has been allocated by {@link #libgamma_gamma_ramps64_create} or
+ * otherwise initialised in the proper manner, as well as release
+ * the pointer to the structure.
+ *
+ * @param address The gamma ramps.
+ */
void Java_libgamma_GammaRamps_libgamma_1gamma_1ramps64_1free(JNIEnv *, jclass, jlong);
+
+
+/**
+ * Release resources that are held by a gamma ramp strcuture that
+ * has been allocated by {@link #libgamma_gamma_rampsf_create} or
+ * otherwise initialised in the proper manner, as well as release
+ * the pointer to the structure.
+ *
+ * @param address The gamma ramps.
+ */
void Java_libgamma_GammaRamps_libgamma_1gamma_1rampsf_1free(JNIEnv *, jclass, jlong);
+
+
+/**
+ * Release resources that are held by a gamma ramp strcuture that
+ * has been allocated by {@link #libgamma_gamma_rampsd_create} or
+ * otherwise initialised in the proper manner, as well as release
+ * the pointer to the structure.
+ *
+ * @param address The gamma ramps.
+ */
void Java_libgamma_GammaRamps_libgamma_1gamma_1rampsd_1free(JNIEnv *, jclass, jlong);