Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Define correctly variables for windows.
[simgrid.git] / src / java / jmsg.h
1 /* Java Wrappers to the MSG API.                                            */
2
3 /* Copyright (c) 2007, 2008, 2009, 2010. The SimGrid Team.
4  * All rights reserved.                                                     */
5
6 /* This program is free software; you can redistribute it and/or modify it
7   * under the terms of the license (GNU LGPL) which comes with this package. */
8
9 #ifndef MSG4JAVA_H
10 #define MSG4JAVA_H
11
12 #include <jni.h>
13
14 JavaVM *get_java_VM(void);
15
16 JNIEnv *get_current_thread_env(void);
17
18 /*
19  * Class                simgrid_msg_Msg
20  * Method               processCreate
21  * Signature    (Lsimgrid/msg/Process;Lsimgrid/msg/Host;)V
22  */
23 JNIEXPORT void JNICALL
24 Java_simgrid_msg_MsgNative_processCreate(JNIEnv * env, jclass cls,
25                                          jobject jprocess, jobject jhost);
26
27
28
29 /*
30  * Class                simgrid_msg_Msg
31  * Method               processSuspend
32  * Signature    (Lsimgrid/msg/Process;)V
33  */
34 JNIEXPORT void JNICALL
35 Java_simgrid_msg_MsgNative_processSuspend(JNIEnv * env, jclass cls,
36                                           jobject jprocess);
37
38 /*
39  * Class                simgrid_msg_Msg
40  * Method               processResume
41  * Signature    (Lsimgrid/msg/Process;)V
42  */
43 JNIEXPORT void JNICALL Java_simgrid_msg_MsgNative_processResume
44   (JNIEnv *, jclass, jobject);
45
46 /*
47  * Class                simgrid_msg_Msg
48  * Method               processIsSuspended
49  * Signature    (Lsimgrid/msg/Process;)Z
50  */
51 JNIEXPORT jboolean JNICALL Java_simgrid_msg_MsgNative_processIsSuspended
52   (JNIEnv *, jclass, jobject);
53
54 /*
55  * Class                simgrid_msg_Msg
56  * Method               processKill
57  * Signature    (Lsimgrid/msg/Process;)V
58  */
59 JNIEXPORT void JNICALL Java_simgrid_msg_MsgNative_processKill
60   (JNIEnv *, jclass, jobject);
61
62 /*
63  * Class                simgrid_msg_Msg
64  * Method               processGetHost
65  * Signature    (Lsimgrid/msg/Process;)Lsimgrid/msg/Host;
66  */
67 JNIEXPORT jobject JNICALL Java_simgrid_msg_MsgNative_processGetHost
68   (JNIEnv *, jclass, jobject);
69
70 /*
71  * Class                simgrid_msg_Msg
72  * Method               processFromPID
73  * Signature    (I)Lsimgrid/msg/Process;
74  */
75 JNIEXPORT jobject JNICALL Java_simgrid_msg_MsgNative_processFromPID
76   (JNIEnv *, jclass, jint);
77
78 /*
79  * Class                simgrid_msg_Msg
80  * Method               processGetPID
81  * Signature    (Lsimgrid/msg/Process;)I
82  */
83 JNIEXPORT jint JNICALL Java_simgrid_msg_MsgNative_processGetPID
84   (JNIEnv *, jclass, jobject);
85
86 /*
87  * Class                simgrid_msg_Msg
88  * Method               processGetPPID
89  * Signature    (Lsimgrid/msg/Process;)I
90  */
91 JNIEXPORT jint JNICALL Java_simgrid_msg_MsgNative_processGetPPID
92   (JNIEnv *, jclass, jobject);
93
94 /*
95  * Class                simgrid_msg_Msg
96  * Method               processSelf
97  * Signature    ()Lsimgrid/msg/Process;
98  */
99 JNIEXPORT jobject JNICALL Java_simgrid_msg_MsgNative_processSelf
100   (JNIEnv *, jclass);
101
102 /*
103  * Class                simgrid_msg_Msg
104  * Method               processSelfPID
105  * Signature    ()I
106  */
107 JNIEXPORT jint JNICALL Java_simgrid_msg_MsgNative_processSelfPID
108   (JNIEnv *, jclass);
109
110 /*
111  * Class                simgrid_msg_Msg
112  * Method               processSelfPPID
113  * Signature    ()I
114  */
115 JNIEXPORT jint JNICALL Java_simgrid_msg_MsgNative_processSelfPPID
116   (JNIEnv *, jclass);
117
118 /*
119  * Class                simgrid_msg_Msg
120  * Method               processChangeHost
121  * Signature    (Lsimgrid/msg/Process;Lsimgrid/msg/Host;)V
122  */
123 JNIEXPORT void JNICALL Java_simgrid_msg_MsgNative_processChangeHost
124   (JNIEnv *, jclass, jobject);
125
126 /*
127  * Class                simgrid_msg_Msg
128  * Method               processWaitFor
129  * Signature    (D)V
130  */
131 JNIEXPORT void JNICALL Java_simgrid_msg_MsgNative_processWaitFor
132   (JNIEnv *, jclass, jdouble);
133
134 /*
135  * Class                simgrid_msg_Msg
136  * Method               hostGetByName
137  * Signature    (Ljava/lang/String;)Lsimgrid/msg/Host;
138  */
139 JNIEXPORT jobject JNICALL Java_simgrid_msg_MsgNative_hostGetByName
140   (JNIEnv *, jclass, jstring);
141
142 /*
143  * Class                simgrid_msg_Msg
144  * Method               hostGetName
145  * Signature    (Lsimgrid/msg/Host;)Ljava/lang/String;
146  */
147 JNIEXPORT jstring JNICALL Java_simgrid_msg_MsgNative_hostGetName
148   (JNIEnv *, jclass, jobject);
149
150 /*
151  * Class                simgrid_msg_Msg
152  * Method               hostGetNumber
153  * Signature    ()I
154  */
155 JNIEXPORT jint JNICALL Java_simgrid_msg_MsgNative_hostGetNumber
156   (JNIEnv *, jclass);
157
158 /*
159  * Class                simgrid_msg_Msg
160  * Method               hostSelf
161  * Signature    ()Lsimgrid/msg/Host;
162  */
163 JNIEXPORT jobject JNICALL Java_simgrid_msg_MsgNative_hostSelf
164   (JNIEnv *, jclass);
165
166 /*
167  * Class                simgrid_msg_Msg
168  * Method               hostGetSpeed
169  * Signature    (Lsimgrid/msg/Host;)D
170  */
171 JNIEXPORT jdouble JNICALL Java_simgrid_msg_MsgNative_hostGetSpeed
172   (JNIEnv *, jclass, jobject);
173
174 JNIEXPORT jint JNICALL
175 Java_simgrid_msg_MsgNative_hostGetLoad(JNIEnv * env, jclass cls,
176                                        jobject jhost);
177
178 /*
179  * Class                simgrid_msg_Msg
180  * Method               hostIsAvail
181  * Signature    (Lsimgrid/msg/Host;)Z
182  */
183 JNIEXPORT jboolean JNICALL Java_simgrid_msg_MsgNative_hostIsAvail
184   (JNIEnv *, jclass, jobject);
185
186 /*
187  * Class                simgrid_msg_Msg
188  * Method               taskCreate
189  * Signature    (Lsimgrid/msg/Task;Ljava/lang/String;DD)V
190  */
191 JNIEXPORT void JNICALL Java_simgrid_msg_MsgNative_taskCreate
192   (JNIEnv *, jclass, jobject, jstring, jdouble, jdouble);
193
194 JNIEXPORT void JNICALL
195 Java_simgrid_msg_MsgNative_parallel_taskCreate(JNIEnv *, jclass, jobject,
196                                                jstring, jobjectArray,
197                                                jdoubleArray, jdoubleArray);
198
199 /*
200  * Class                simgrid_msg_Msg
201  * Method               taskGetSender
202  * Signature    (Lsimgrid/msg/Task;)Lsimgrid/msg/Process;
203  */
204 JNIEXPORT jobject JNICALL Java_simgrid_msg_MsgNative_taskGetSender
205   (JNIEnv *, jclass, jobject);
206
207 /*
208  * Class                simgrid_msg_Msg
209  * Method               taskGetSource
210  * Signature    (Lsimgrid/msg/Task;)Lsimgrid/msg/Host;
211  */
212 JNIEXPORT jobject JNICALL Java_simgrid_msg_MsgNative_taskGetSource
213   (JNIEnv *, jclass, jobject);
214
215 /*
216  * Class                simgrid_msg_Msg
217  * Method               taskGetName
218  * Signature    (Lsimgrid/msg/Task;)Ljava/lang/String;
219  */
220 JNIEXPORT jstring JNICALL Java_simgrid_msg_MsgNative_taskGetName
221   (JNIEnv *, jclass, jobject);
222
223 /*
224  * Class                simgrid_msg_Msg
225  * Method               taskCancel
226  * Signature    (Lsimgrid/msg/Task;)V
227  */
228 JNIEXPORT void JNICALL Java_simgrid_msg_MsgNative_taskCancel
229   (JNIEnv *, jclass, jobject);
230
231 /*
232  * Class                simgrid_msg_Msg
233  * Method               taskGetComputeDuration
234  * Signature    (Lsimgrid/msg/Task;)D
235  */
236 JNIEXPORT jdouble JNICALL Java_simgrid_msg_MsgNative_taskGetComputeDuration
237   (JNIEnv *, jclass, jobject);
238
239 /*
240  * Class                simgrid_msg_Msg
241  * Method               taskGetRemainingDuration
242  * Signature    (Lsimgrid/msg/Task;)D
243  */
244 JNIEXPORT jdouble JNICALL Java_simgrid_msg_MsgNative_taskGetRemainingDuration
245   (JNIEnv *, jclass, jobject);
246
247 /*
248  * Class                simgrid_msg_Msg
249  * Method               taskSetPriority
250  * Signature    (Lsimgrid/msg/Task;D)V
251  */
252 JNIEXPORT void JNICALL Java_simgrid_msg_MsgNative_taskSetPriority
253   (JNIEnv *, jclass, jobject, jdouble);
254
255 /*
256  * Class                simgrid_msg_Msg
257  * Method               taskDestroy
258  * Signature    (Lsimgrid/msg/Task;)V
259  */
260 JNIEXPORT void JNICALL Java_simgrid_msg_MsgNative_taskDestroy
261   (JNIEnv *, jclass, jobject);
262
263 /*
264  * Class                simgrid_msg_Msg
265  * Method               taskExecute
266  * Signature    (Lsimgrid/msg/Task;)V
267  */
268 JNIEXPORT void JNICALL Java_simgrid_msg_MsgNative_taskExecute
269   (JNIEnv *, jclass, jobject);
270
271 JNIEXPORT jobject JNICALL
272   Java_simgrid_msg_MsgNative_taskReceive
273   (JNIEnv *, jclass, jstring, jdouble, jobject);
274
275 JNIEXPORT void JNICALL
276   Java_simgrid_msg_MsgNative_taskSend
277   (JNIEnv *, jclass, jstring, jobject, jdouble);
278
279 /*
280  * Class                simgrid_msg_Msg
281  * Method               getErrCode
282  * Signature    ()I
283  */
284 JNIEXPORT jint JNICALL Java_simgrid_msg_Msg_getErrCode(JNIEnv *, jclass);
285
286 /*
287  * Class                simgrid_msg_Msg
288  * Method               getClock
289  * Signature    ()D
290  */
291 JNIEXPORT jdouble JNICALL Java_simgrid_msg_Msg_getClock(JNIEnv *, jclass);
292
293 JNIEXPORT void JNICALL
294   JNICALL Java_simgrid_msg_Msg_run(JNIEnv * env, jclass cls);
295
296 JNIEXPORT void JNICALL
297 Java_simgrid_msg_Msg_init(JNIEnv * env, jclass cls, jobjectArray jargs);
298
299 /*
300  * Class                simgrid_msg_Msg
301  * Method               processKillAll
302  * Signature    (I)I
303  */
304 JNIEXPORT jint JNICALL Java_simgrid_msg_MsgNative_processKillAll
305   (JNIEnv *, jclass, jint);
306
307 /*
308  * Class                simgrid_msg_Msg
309  * Method               processExit
310  * Signature    (Lsimgrid/msg/Process;)V
311  */
312 JNIEXPORT void JNICALL Java_simgrid_msg_MsgNative_processExit
313   (JNIEnv *, jclass, jobject);
314
315 JNIEXPORT void JNICALL Java_simgrid_msg_Msg_info(JNIEnv *, jclass, jstring);
316
317 JNIEXPORT jobjectArray JNICALL
318 Java_simgrid_msg_MsgNative_allHosts(JNIEnv *, jclass);
319
320 JNIEXPORT void JNICALL
321 Java_simgrid_msg_Msg_createEnvironment(JNIEnv * env, jclass cls,
322                                        jstring jplatformFile);
323
324 JNIEXPORT void JNICALL
325 Java_simgrid_msg_MsgNative_selectContextFactory(JNIEnv *, jclass, jstring);
326
327 JNIEXPORT void JNICALL
328 Java_simgrid_msg_MsgNative_taskSendBounded(JNIEnv *, jclass, jstring, jobject,
329                                            jdouble);
330
331 JNIEXPORT jboolean JNICALL
332 Java_simgrid_msg_MsgNative_taskListen(JNIEnv *, jclass, jstring);
333
334 JNIEXPORT jint JNICALL
335 Java_simgrid_msg_MsgNative_taskListenFromHost(JNIEnv *, jclass, jstring,
336                                               jobject);
337
338 JNIEXPORT jint JNICALL
339 Java_simgrid_msg_MsgNative_taskListenFrom(JNIEnv *, jclass, jstring);
340
341 JNIEXPORT void JNICALL
342 Java_simgrid_msg_Msg_deployApplication(JNIEnv * env, jclass cls,
343                                        jstring jdeploymentFile);
344
345 #endif /* !MSG4JAVA_H */