#include #include "set_plot.h" JNIEXPORT jdoubleArray JNICALL Java_ru_setcorp_setprotocol_trends_NativePlot_evaluate(JNIEnv *env, jobject self, jint operation, jdoubleArray input) { double values[10], result[4]; jsize n; size_t count; jdoubleArray output; (void)self; if (!input) return NULL; n = (*env)->GetArrayLength(env, input); if (n < 0 || n > 10) return NULL; (*env)->GetDoubleArrayRegion(env, input, 0, n, values); if ((*env)->ExceptionCheck(env)) return NULL; count = set_plot_eval((uint32_t)operation, values, (size_t)n, result, 4); if (!count) return NULL; output = (*env)->NewDoubleArray(env, (jsize)count); if (output) (*env)->SetDoubleArrayRegion(env, output, 0, (jsize)count, result); return output; }