Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
retrive -> retrieve
[simgrid.git] / include / msg / msg.h
index 6cf8df0..cd8b1a1 100644 (file)
@@ -9,17 +9,16 @@
 #define MSG_H
 
 #include "xbt/misc.h"
-#include "xbt/sysdep.h"
 
-BEGIN_DECL()
 #include "msg/datatypes.h"
+SG_BEGIN_DECL()
+
 
 /************************** Global ******************************************/
-void MSG_global_init(void);
+void MSG_config(const char *name, ...);
+void MSG_global_init(int *argc, char **argv);
 void MSG_global_init_args(int *argc, char **argv);
-void MSG_set_verbosity(MSG_outputmode_t mode);
 MSG_error_t MSG_set_channel_number(int number);
-MSG_error_t MSG_set_sharing_policy(MSG_sharing_t mode, double param);
 int MSG_get_channel_number(void);
 MSG_error_t MSG_main(void);
 MSG_error_t MSG_clean(void);
@@ -28,7 +27,6 @@ m_process_code_t MSG_get_registered_function(const char *name);
 void MSG_launch_application(const char *file);
 void MSG_paje_output(const char *filename);
 
-double MSG_getClock(void);
 double MSG_get_clock(void);
 
 /************************** Host handling ***********************************/
@@ -37,7 +35,9 @@ void *MSG_host_get_data(m_host_t host);
 const char *MSG_host_get_name(m_host_t host);
 m_host_t MSG_host_self(void);
 int MSG_get_host_msgload(m_host_t host);
-int MSG_get_msgload(void);
+/* int MSG_get_msgload(void); This function lacks specification; discard it */
+double MSG_get_host_speed(m_host_t h);
+int MSG_host_is_avail (m_host_t h);
 
 void MSG_create_environment(const char *file);
 
@@ -54,8 +54,6 @@ m_process_t MSG_process_create_with_arguments(const char *name,
                                              m_host_t host, int argc, char **argv);
 void MSG_process_kill(m_process_t process);
 int MSG_process_killall(int reset_PIDs);
-MSG_error_t MSG_get_arguments(int *argc, char ***argv);
-MSG_error_t MSG_set_arguments(m_process_t process,int argc, char *argv[]);
 
 MSG_error_t MSG_process_change_host(m_process_t process, m_host_t host);
 
@@ -72,56 +70,50 @@ m_process_t MSG_process_self(void);
 
 MSG_error_t MSG_process_suspend(m_process_t process);
 MSG_error_t MSG_process_resume(m_process_t process);
-int MSG_process_isSuspended(m_process_t process);
-
-MSG_error_t MSG_process_start(m_process_t process);
+int MSG_process_is_suspended(m_process_t process);
 
 /************************** Task handling ************************************/
 
 m_task_t MSG_task_create(const char *name, double compute_duration,
                         double message_size, void *data);
+m_task_t MSG_parallel_task_create(const char *name, 
+                                 int host_nb,
+                                 const m_host_t *host_list,
+                                 double *computation_amount,
+                                 double *communication_amount,
+                                 void *data);
 void *MSG_task_get_data(m_task_t task);
 m_process_t MSG_task_get_sender(m_task_t task);
+m_host_t MSG_task_get_source(m_task_t task);
 const char *MSG_task_get_name(m_task_t task);
-
+MSG_error_t MSG_task_cancel(m_task_t task);
 MSG_error_t MSG_task_destroy(m_task_t task);
 
 MSG_error_t MSG_task_get(m_task_t * task, m_channel_t channel);
+MSG_error_t MSG_task_get_with_time_out(m_task_t * task, m_channel_t channel,
+                                      double max_duration);
+MSG_error_t MSG_task_get_from_host(m_task_t * task, int channel, 
+                                  m_host_t host);
 MSG_error_t MSG_task_put(m_task_t task, m_host_t dest, 
                         m_channel_t channel);
 MSG_error_t MSG_task_put_bounded(m_task_t task,
                                 m_host_t dest, m_channel_t channel,
                                 double max_rate);
 MSG_error_t MSG_task_execute(m_task_t task);
+MSG_error_t MSG_parallel_task_execute(m_task_t task);
+void MSG_task_set_priority(m_task_t task, double priority);
+
 int MSG_task_Iprobe(m_channel_t channel);
 int MSG_task_probe_from(m_channel_t channel);
+int MSG_task_probe_from_host(int channel, m_host_t host);
+MSG_error_t MSG_channel_select_from(m_channel_t channel, double max_duration,
+                                   int *PID);
 MSG_error_t MSG_process_sleep(double nb_sec);
 MSG_error_t MSG_get_errno(void);
 
 double MSG_task_get_compute_duration(m_task_t task);
+double MSG_task_get_remaining_computation(m_task_t task);
 double MSG_task_get_data_size(m_task_t task);
 
-/************************** Deprecated ***************************************/
-/* MSG_error_t MSG_routing_table_init(void); */
-/* MSG_error_t MSG_routing_table_set(m_host_t host1, m_host_t host2, */
-/*                               m_link_t link); */
-/* m_link_t MSG_routing_table_get(m_host_t host1, m_host_t host2); */
-/* m_host_t MSG_host_create(const char *name, */
-/*                     char *trace_file, */
-/*                     long double fixed_cpu, */
-/*                     char* failure_trace, */
-/*                     long double fixed_failure, */
-/*                     void *data); */
-/* m_host_t MSG_host_from_PID(int PID); */
-/* MSG_error_t MSG_host_destroy(m_host_t host); */
-
-/* void MSG_link_set_sharing_value(long double alpha); */
-/* m_link_t MSG_link_create(const char *name, */
-/*                      char *lat_trace_file, long double fixed_latency, */
-/*                      char *bw_trace_file, long double fixed_bandwidth); */
-/* MSG_error_t MSG_link_destroy(m_link_t link); */
-/* m_link_t MSG_link_merge(const char *name, m_link_t src1, m_link_t src2); */
-/* m_link_t MSG_get_link_by_name(const char *name); */
-/* void MSG_tracelink(m_host_t dest, const char* **names, int *count); */
-END_DECL()
+SG_END_DECL()
 #endif