/* Functions related to the java task instances. */
-/* Copyright (c) 2007-2012. The SimGrid Team.
+/* Copyright (c) 2007-2014. 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. */
+ * under the terms of the license (GNU LGPL) which comes with this package. */
#ifndef MSG_JTASK_H
#define MSG_JTASK_H
#include <jni.h>
-#include "msg/msg.h"
+#include "simgrid/msg.h"
-/**
- * This function returns a global reference to the java task instance
- * specified by the parameter jtask.
- *
- * @param jtask The original java task instance.
- * @param env The environment of the current thread.
- *
- * @return The global reference to the original java task
- * instance.
- */
-jobject jtask_new_global_ref(jobject jtask, JNIEnv * env);
-
-/**
- * This function delete a global reference to a java task instance.
- *
- * @param The global refernce to delete.
- * @param env The environment of the current thread.
- */
-void jtask_delete_global_ref(jobject jtask, JNIEnv * env);
/**
* This function associated a native task to a java task instance.
JNIEXPORT void JNICALL
Java_org_simgrid_msg_Task_create
(JNIEnv * env, jobject jtask, jstring jname, jdouble jcomputeDuration, jdouble jmessageSize);
+JNIEXPORT void JNICALL
+Java_org_simgrid_msg_Task_nativeFinalize(JNIEnv * env, jobject jtask);
/*
* Class org_simgrid_msg_Task
* Method parallelCreate
* Method destroy
* Signature (Lsimgrid/msg/Task;)V
*/
-JNIEXPORT void JNICALL Java_org_simgrid_msg_Task_destroy
- (JNIEnv *, jobject);
+/* JNIEXPORT void JNICALL Java_org_simgrid_msg_Task_destroy */
+/* (JNIEnv *, jobject); */
/*
* Class org_simgrid_msg_Task
JNIEXPORT void JNICALL Java_org_simgrid_msg_Task_execute
(JNIEnv *, jobject);
+/*
+ * Class org_simgrid_msg_Task
+ * Method setBound
+ * Signature ()V
+ */
+JNIEXPORT void JNICALL Java_org_simgrid_msg_Task_setBound
+ (JNIEnv *, jobject, jdouble);
+
/*
* Class org_simgrid_msg_Task
* Method getName
(JNIEnv *, jobject);
/*
* Class org_simgrid_msg_Task
- * Method getComputeDuration
+ * Method getFlopsAmount
* Signature ()D
*/
-JNIEXPORT jdouble JNICALL Java_org_simgrid_msg_Task_getComputeDuration
+JNIEXPORT jdouble JNICALL Java_org_simgrid_msg_Task_getFlopsAmount
(JNIEnv *, jobject);
-/*
- * Class org_simgrid_msg_Task
- * Method getRemainingDuration
- * Signature ()D
- */
-JNIEXPORT jdouble JNICALL
-Java_org_simgrid_msg_Task_getRemainingDuration(JNIEnv *, jobject);
/**
* Class org_simgrid_msg_Task
* Method setName
(JNIEnv *, jobject, jdouble);
/**
* Class org_simgrid_msg_Task
- * Method setComputationAmount
+ * Method setComputeDuration
* Signature (D)V
*/
JNIEXPORT void JNICALL
-Java_org_simgrid_msg_Task_setComputeDuration
+Java_org_simgrid_msg_Task_setFlopsAmount
(JNIEnv *env, jobject jtask, jdouble computationAmount);
/**
* Signature (D)V
*/
JNIEXPORT void JNICALL
-Java_org_simgrid_msg_Task_setDataSize
+Java_org_simgrid_msg_Task_setBytesAmount
(JNIEnv *env, jobject jtask, jdouble dataSize);
/**
*/
JNIEXPORT jobject JNICALL
Java_org_simgrid_msg_Task_irecv(JNIEnv * env, jclass cls, jstring jmailbox);
+/**
+ * Class org_simgrid_msg_Task
+ * Method receiveBounded
+ */
+JNIEXPORT jobject JNICALL
+Java_org_simgrid_msg_Task_receiveBounded(JNIEnv * env, jclass cls,
+ jstring jalias, jdouble jtimeout,
+ jobject jhost, jdouble rate);
+/**
+ * Class org_simgrid_msg_Task
+ * Method irecvBounded
+ */
+JNIEXPORT jobject JNICALL
+Java_org_simgrid_msg_Task_irecvBounded(JNIEnv * env, jclass cls,
+ jstring jmailbox, jdouble rate);
/**
* Class org_simgrid_msg_Task
* Method isend
Java_org_simgrid_msg_Task_isend(JNIEnv *env, jobject jtask, jstring jmailbox);
/**
* Class org_simgrid_msg_Task
- * Method isend
- * Signature (Lorg/simgrid/msg/Task;Ljava/lang/String;)Lorg/simgrid/msg/Comm;
+ * Method isendBounded
*/
JNIEXPORT jobject JNICALL
Java_org_simgrid_msg_Task_isendBounded(JNIEnv *env, jobject jtask, jstring jmailbox, jdouble maxrate);