-/*
- * $Id$
- *
- * Copyright 2006,2007 Martin Quinson, Malek Cherier All right 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.
- *
- * This contains the declarations of the functions in relation with the java
- * process instance.
- */
-
+/* Functions related to the java process instances. */
+
+/* Copyright (c) 2007, 2009, 2010. 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. */
+
#ifndef MSG_JPROCESS_H
#define MSG_JPROCESS_H
#include <jni.h>
#include "msg/msg.h"
+#include "simix/simix.h"
/**
* This function returns a global reference to the java process instance
*
* @return The global reference to the original java process
* instance.
- */
-jobject
-jprocess_new_global_ref(jobject jprocess,JNIEnv* env);
+ */
+jobject jprocess_new_global_ref(jobject jprocess, JNIEnv * env);
/**
* This function delete a global reference to a java process instance.
* @see jprocess_join()
* @see jprocess_exit()
*/
-void
-jprocess_delete_global_ref(jobject jprocess,JNIEnv* env);
+void jprocess_delete_global_ref(jobject jprocess, JNIEnv * env);
/**
*
*
* @return If the java process is alive the function returns
* true. Otherwise the function returns false.
- */
-jboolean
-jprocess_is_alive(jobject jprocess,JNIEnv* env);
+ */
+jboolean jprocess_is_alive(jobject jprocess, JNIEnv * env);
/**
* This function waits for a java process to terminate.
* NotSuchMethodException.
*
*/
-void
-jprocess_join(jobject jprocess,JNIEnv* env);
+void jprocess_join(jobject jprocess, JNIEnv * env);
/**
* This function starts the specified java process.
* this class is not found the function throws the exception
* NotSuchMethodException.
*/
-void
-jprocess_start(jobject jprocess,JNIEnv* env);
+void jprocess_start(jobject jprocess, JNIEnv * env);
/**
* This function forces the java process to stop.
* this class is not found the function throws the exception
* NotSuchMethodException.
*/
-void
-jprocess_exit(jobject jprocess,JNIEnv* env);
+void jprocess_exit(jobject jprocess, JNIEnv * env);
/**
* This function associated a native process to a java process instance.
* the ClassNotFoundException. If the field bind of
* this class is not found the function throws the exception
* NotSuchFieldException.
- */
-void
-jprocess_bind(jobject jprocess,m_process_t process,JNIEnv* env);
+ */
+void jprocess_bind(jobject jprocess, m_process_t process, JNIEnv * env);
/**
* This function returns a native process from a java process instance.
* this class is not found the function throws the exception
* NotSuchFieldException.
*/
-m_process_t
-jprocess_to_native_process(jobject jprocess,JNIEnv* env);
+m_process_t jprocess_to_native_process(jobject jprocess, JNIEnv * env);
/**
* This function gets the id of the specified java process.
*
* @return The id of the specified java process.
*/
-jlong
-jprocess_get_id(jobject jprocess,JNIEnv* env);
+jlong jprocess_get_id(jobject jprocess, JNIEnv * env);
/**
* This function tests if a java process instance is valid.
* @return If the java process is valid the function returns true.
* Otherwise the function returns false.
*/
-jboolean
-jprocess_is_valid(jobject jprocess,JNIEnv* env);
+jboolean jprocess_is_valid(jobject jprocess, JNIEnv * env);
/**
* This function gets the name of the specified java process.
*
* @return The name of the specified java process.
*/
-jstring
-jprocess_get_name(jobject jprocess,JNIEnv* env);
+jstring jprocess_get_name(jobject jprocess, JNIEnv * env);
/**
* This function yields the specified java process.
* this class is not found the function throws the exception
* NotSuchMethodException.
*/
-void
-jprocess_yield(jobject jprocess,JNIEnv* env);
+void jprocess_yield(jobject jprocess, JNIEnv * env);
/**
* This function locks the mutex of the specified java process.
* this class is not found the function throws the exception
* NotSuchMethodException.
*/
-void
-jprocess_lock_mutex(jobject jprocess,JNIEnv* env);
+void jprocess_lock_mutex(jobject jprocess, JNIEnv * env);
/**
* This function unlocks the mutex of the specified java process.
* this class is not found the function throws the exception
* NotSuchMethodException.
*/
-void
-jprocess_unlock_mutex(jobject jprocess,JNIEnv* env);
+void jprocess_unlock_mutex(jobject jprocess, JNIEnv * env);
/**
* This function signals the condition of the mutex of the specified java process.
* this class is not found the function throws the exception
* NotSuchMethodException.
*/
-void
-jprocess_signal_cond(jobject jprocess,JNIEnv* env);
+void jprocess_signal_cond(jobject jprocess, JNIEnv * env);
/**
* This function waits the condition of the mutex of the specified java process.
* this class is not found the function throws the exception
* NotSuchMethodException.
*/
-void
-jprocess_wait_cond(jobject jprocess,JNIEnv* env);
+void jprocess_wait_cond(jobject jprocess, JNIEnv * env);
+
+void jprocess_schedule(smx_context_t context);
+
+void jprocess_unschedule(smx_context_t context);
-#endif /* !MSG_JPROCESS_H */
+#endif /* !MSG_JPROCESS_H */