X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/7f4f03348bd07609e258eb3b545bdafc2c881847..d20f024dba9ff1e9c8822237caaf963b9e913889:/src/bindings/java/jtrace.cpp diff --git a/src/bindings/java/jtrace.cpp b/src/bindings/java/jtrace.cpp index 342d25837f..02f22f13c4 100644 --- a/src/bindings/java/jtrace.cpp +++ b/src/bindings/java/jtrace.cpp @@ -1,16 +1,12 @@ -/* Java Wrappers to the TRACE API. */ +/* Java bindings of the Trace API. */ -/* Copyright (c) 2012-2015. The SimGrid Team. - * All rights reserved. */ +/* Copyright (c) 2012-2017. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ -// Please note, this file strongly relies on the jmsg.cpp, -// It will be great that a JNI expert gives a look to validate it - Adrien ;) - #include "jtrace.h" -#include +#include "simgrid/instr.h" /* Shut up some errors in eclipse online compiler. I wish such a pimple wouldn't be needed */ #ifndef JNIEXPORT @@ -22,86 +18,80 @@ /* end of eclipse-mandated pimple */ // Define a new category -XBT_LOG_NEW_DEFAULT_SUBCATEGORY (jtrace, bindings, "TRACE for Java(TM)"); +XBT_LOG_NEW_DEFAULT_CATEGORY (jtrace, "TRACE for Java(TM)"); + +extern "C" { -JNIEXPORT void JNICALL -Java_org_simgrid_trace_Trace_hostStateDeclare(JNIEnv * env, jclass cls, jstring js) +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostStateDeclare(JNIEnv * env, jclass cls, jstring js) { const char *s = env->GetStringUTFChars(js, 0); - TRACE_host_state_declare(s); + TRACE_host_state_declare(s); env->ReleaseStringUTFChars(js, s); } -JNIEXPORT void JNICALL -Java_org_simgrid_trace_Trace_hostStateDeclareValue - (JNIEnv *env, jclass cls, jstring js_state, jstring js_value, jstring js_color) +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostStateDeclareValue (JNIEnv *env, jclass cls, jstring js_state, + jstring js_value, jstring js_color) { const char *state = env->GetStringUTFChars(js_state, 0); const char *value = env->GetStringUTFChars(js_value, 0); const char *color = env->GetStringUTFChars(js_color, 0); - TRACE_host_state_declare_value(state, value, color); - + TRACE_host_state_declare_value(state, value, color); + env->ReleaseStringUTFChars(js_state, state); env->ReleaseStringUTFChars(js_value, value); env->ReleaseStringUTFChars(js_color, color); } -JNIEXPORT void JNICALL -Java_org_simgrid_trace_Trace_hostSetState - (JNIEnv *env, jclass cls, jstring js_host, jstring js_state, jstring js_value) +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostSetState (JNIEnv *env, jclass cls, jstring js_host, + jstring js_state, jstring js_value) { const char *host = env->GetStringUTFChars(js_host, 0); const char *state = env->GetStringUTFChars(js_state, 0); const char *value = env->GetStringUTFChars(js_value, 0); - TRACE_host_set_state(host, state, value); - + TRACE_host_set_state(host, state, value); + env->ReleaseStringUTFChars(js_host, host); env->ReleaseStringUTFChars(js_state, state); env->ReleaseStringUTFChars(js_value, value); } -JNIEXPORT void JNICALL -Java_org_simgrid_trace_Trace_hostPushState - (JNIEnv *env, jclass cls, jstring js_host, jstring js_state, jstring js_value) +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostPushState (JNIEnv *env, jclass cls, jstring js_host, + jstring js_state, jstring js_value) { const char *host = env->GetStringUTFChars(js_host, 0); const char *state = env->GetStringUTFChars(js_state, 0); const char *value = env->GetStringUTFChars(js_value, 0); - TRACE_host_push_state(host, state, value); - + TRACE_host_push_state(host, state, value); + env->ReleaseStringUTFChars(js_host, host); env->ReleaseStringUTFChars(js_state, state); env->ReleaseStringUTFChars(js_value, value); } -JNIEXPORT void JNICALL -Java_org_simgrid_trace_Trace_hostPopState - (JNIEnv *env, jclass cls, jstring js_host, jstring js_state) +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostPopState (JNIEnv *env, jclass cls, jstring js_host, + jstring js_state) { const char *host = env->GetStringUTFChars(js_host, 0); const char *state = env->GetStringUTFChars(js_state, 0); - TRACE_host_pop_state(host, state); - + TRACE_host_pop_state(host, state); + env->ReleaseStringUTFChars(js_host, host); env->ReleaseStringUTFChars(js_state, state); } -JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostVariableDeclare - (JNIEnv *env, jclass cls, jstring js_state) +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostVariableDeclare (JNIEnv *env, jclass cls, jstring js_state) { const char *state = env->GetStringUTFChars(js_state, 0); - TRACE_host_variable_declare(state); - env->ReleaseStringUTFChars(js_state, state); } -JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostVariableSet - (JNIEnv *env, jclass cls, jstring js_host, jstring js_state, jdouble value) +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostVariableSet (JNIEnv *env, jclass cls, jstring js_host, + jstring js_state, jdouble value) { const char *host = env->GetStringUTFChars(js_host, 0); const char *state = env->GetStringUTFChars(js_state, 0); @@ -112,8 +102,8 @@ JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostVariableSet env->ReleaseStringUTFChars(js_state, state); } -JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostVariableSub - (JNIEnv *env, jclass cls, jstring js_host, jstring js_state, jdouble value) +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostVariableSub (JNIEnv *env, jclass cls, jstring js_host, + jstring js_state, jdouble value) { const char *host = env->GetStringUTFChars(js_host, 0); const char *state = env->GetStringUTFChars(js_state, 0); @@ -124,10 +114,7 @@ JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostVariableSub env->ReleaseStringUTFChars(js_state, state); } - - -JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_vmVariableDeclare - (JNIEnv *env, jclass cls, jstring js_state) +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_vmVariableDeclare (JNIEnv *env, jclass cls, jstring js_state) { const char *state = env->GetStringUTFChars(js_state, 0); @@ -136,8 +123,8 @@ JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_vmVariableDeclare env->ReleaseStringUTFChars(js_state, state); } -JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_vmVariableSet - (JNIEnv *env, jclass cls, jstring js_vm, jstring js_state, jdouble value) +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_vmVariableSet (JNIEnv *env, jclass cls, jstring js_vm, + jstring js_state, jdouble value) { const char *vm = env->GetStringUTFChars(js_vm, 0); const char *state = env->GetStringUTFChars(js_state, 0); @@ -148,9 +135,9 @@ JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_vmVariableSet env->ReleaseStringUTFChars(js_state, state); } -JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostVariableAdd - (JNIEnv *env, jclass cls, jstring js_host, jstring js_state, jdouble value) { - +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostVariableAdd (JNIEnv *env, jclass cls, jstring js_host, + jstring js_state, jdouble value) +{ const char *host = env->GetStringUTFChars(js_host, 0); const char *state = env->GetStringUTFChars(js_state, 0); @@ -159,3 +146,56 @@ JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_hostVariableAdd env->ReleaseStringUTFChars(js_host, host); env->ReleaseStringUTFChars(js_state, state); } + +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkVariableDeclare (JNIEnv *env, jclass cls, jstring jvar) { + const char *variable = env->GetStringUTFChars(jvar, 0); + TRACE_link_variable_declare (variable); + env->ReleaseStringUTFChars(jvar, variable); +} +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkVariableDeclareWithColor (JNIEnv *env, jclass cls, jstring jvar, jstring jcolor) { + const char *variable = env->GetStringUTFChars(jvar, 0); + const char *color = env->GetStringUTFChars(jcolor, 0); + TRACE_link_variable_declare_with_color(variable,color); + env->ReleaseStringUTFChars(jvar, variable); + env->ReleaseStringUTFChars(jcolor, color); +} +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkVariableSet (JNIEnv *env, jclass cls, jstring jlink, jstring jvar, jdouble jvalue) { + const char *link = env->GetStringUTFChars(jlink, 0); + const char *variable = env->GetStringUTFChars(jvar, 0); + TRACE_link_variable_set(link, variable, jvalue); + env->ReleaseStringUTFChars(jlink, link); + env->ReleaseStringUTFChars(jvar, variable); +} +JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkSrcDstVariableSet + (JNIEnv *env, jclass cls, jstring jsrc, jstring jdst, jstring jvar, jdouble jval) +{ + const char *src = env->GetStringUTFChars(jsrc, 0); + const char *dst = env->GetStringUTFChars(jdst, 0); + const char *variable = env->GetStringUTFChars(jvar, 0); + TRACE_link_srcdst_variable_set(src,dst,variable, jval); + env->ReleaseStringUTFChars(jsrc, src); + env->ReleaseStringUTFChars(jdst, dst); + env->ReleaseStringUTFChars(jvar, variable); +} +/* Missing calls + JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkVariableAdd(JNIEnv *, jclass, jstring, jstring, jdouble) + JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkVariableSub(JNIEnv *env, jclass cls, jstring, jstring, + jdouble) + JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkVariableSetWithTime(JNIEnv *, jclass, jdouble, jstring, + jstring, jdouble) + JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkVariableAddWithTime(JNIEnv *, jclass, jdouble, jstring, + jstring, jdouble) + JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkVariableSubWithTime(JNIEnv *, jclass, jdouble, jstring, + jstring, jdouble) + JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkSrcDstVariableAdd(JNIEnv *, jclass, jstring, jstring, + jstring, jdouble) + JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkSrcDstVariableSub(JNIEnv *, jclass, jstring, jstring, + jstring, jdouble) + JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkSrcDstVariableSetWithTime(JNIEnv *env, jclass cls, jdouble, + jstring, jstring, jstring, jdouble) + JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkSrcdstVariableAddWithTime(JNIEnv *env, jclass cls, jdouble, + jstring, jstring, jstring, jdouble) + JNIEXPORT void JNICALL Java_org_simgrid_trace_Trace_linkSrcDstVariableSubWithTime(JNIEnv *env, jclass cls, jdouble, + jstring, jstring, jstring, jdouble) +*/ +}