Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
New amok module: Host management
[simgrid.git] / include / amok / hostmanagement.h
1 /* $Id$ */
2
3 /* amok host management - servers main loop and remote host stopping        */
4
5 /* Copyright (c) 2006 Martin Quinson. All rights reserved.                  */
6
7 /* This program is free software; you can redistribute it and/or modify it
8  * under the terms of the license (GNU LGPL) which comes with this package. */
9
10 #ifndef AMOK_HOST_MANAGEMENT_H
11 #define AMOK_HOST_MANAGEMENT_H
12
13 #include <gras.h>
14 #include <amok/base.h>
15
16 /** \addtogroup AMOK_hm
17  *  \brief Managing remote servers
18  * 
19  * This module provide the main loop of servers designed to answer to
20  * callbacks. They can furthermore be stopped remotely.
21  * 
22  * @{
23  */
24
25 /* module handling */
26 void amok_hm_init(void);
27 void amok_hm_exit(void);
28
29 void amok_hm_mainloop(double timeOut);
30 void amok_hm_kill_hp(char *name,int port);
31 void amok_hm_kill(gras_socket_t buddy);
32 void amok_hm_kill_sync(gras_socket_t buddy);
33
34 xbt_dynar_t amok_hm_group_new(char *group_name);
35 xbt_dynar_t amok_hm_group_get(gras_socket_t master,char *group_name);
36
37 void        amok_hm_group_join(gras_socket_t master, char *group_name);
38 void        amok_hm_group_leave(gras_socket_t master, char *group_name);
39
40
41 void amok_hm_group_shutdown_local(char *group_name);
42 void amok_hm_group_shutdown_remote(gras_socket_t master, char *group_name);
43
44
45 /** @} */
46 #endif /* AMOK_HOST_MANAGEMENT_H */