* under the terms of the license (GNU LGPL) which comes with this package. */
#include "jmsg_comm.h"
-#include "jxbt_utilities.h"
-#include "jmsg.h"
+#include "jmsg.hpp"
+#include "jxbt_utilities.hpp"
#include <simgrid/msg.h>
+#include <string>
+
XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(java);
-SG_BEGIN_DECL()
+extern "C" {
static jfieldID jcomm_field_Comm_bind;
static jfieldID jcomm_field_Comm_finished;
}
if (not comm) {
- jxbt_throw_null(env, bprintf("comm is null"));
+ jxbt_throw_null(env, "comm is null");
return JNI_FALSE;
}
JNIEXPORT void JNICALL Java_org_simgrid_msg_Comm_waitCompletion(JNIEnv *env, jobject jcomm, jdouble timeout) {
msg_comm_t comm = (msg_comm_t) (uintptr_t) env->GetLongField(jcomm, jcomm_field_Comm_bind);
if (not comm) {
- jxbt_throw_null(env, bprintf("comm is null"));
+ jxbt_throw_null(env, "comm is null");
return;
}
comms[i] = (msg_comm_t) (uintptr_t) env->GetLongField(jcomm, jcomm_field_Comm_bind);
if (not comms[i]) {
- jxbt_throw_null(env, bprintf("comm at rank %d is null", i));
+ jxbt_throw_null(env, std::string("comm at rank ") + std::to_string(i) + " is null");
return nullptr;
}
xbt_dynar_free(&dyn);
return rank;
}
-
-SG_END_DECL()
+}