Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Indent the rest of the code (examples, buildtools, doc...) except for examples/SMPI...
authoralegrand <alegrand@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Mon, 11 Oct 2010 09:49:00 +0000 (09:49 +0000)
committeralegrand <alegrand@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Mon, 11 Oct 2010 09:49:00 +0000 (09:49 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@8395 48e7efb5-ca39-0410-a469-dd3cf9ba447f

220 files changed:
buildtools/Cmake/test_prog/prog_AC_CHECK_MCSC.c
buildtools/Cmake/test_prog/prog_GRAS_ARCH.c
buildtools/Cmake/test_prog/prog_GRAS_CHECK_STRUCT_COMPACTION.c
buildtools/Cmake/test_prog/prog_getline.c
buildtools/Cmake/test_prog/prog_max_size.c
buildtools/Cmake/test_prog/prog_mutex_timedlock.c
buildtools/Cmake/test_prog/prog_printf_null.c
buildtools/Cmake/test_prog/prog_sem_init.c
buildtools/Cmake/test_prog/prog_sem_timedwait.c
buildtools/Cmake/test_prog/prog_snprintf.c
buildtools/Cmake/test_prog/prog_stackgrowth.c
buildtools/Cmake/test_prog/prog_stacksetup.c
buildtools/Cmake/test_prog/prog_vsnprintf.c
buildtools/builder6/libgras/libgras.c
buildtools/builder6/simgrid/simgrid.c
buildtools/vc7/cxx/SimGridX.c
buildtools/vc7/simgrid/simgrid.c
buildtools/vc7/simgrid4java/libSimgrid4java.c
doc/gtut-files/01-bones.c
doc/gtut-files/02-simple.c
doc/gtut-files/03-args.c
doc/gtut-files/04-callback.c
doc/gtut-files/05-globals.c
doc/gtut-files/06-logs.c
doc/gtut-files/07-timers.c
doc/gtut-files/08-exceptions.c
doc/gtut-files/09-datatype-dump.c
doc/gtut-files/09-simpledata.c
doc/gtut-files/10-rpc.c
doc/gtut-files/11-explicitwait.c
examples/amok/alnem/alnem.c
examples/amok/alnem/alnem_builder.c
examples/amok/bandwidth/bandwidth.c
examples/amok/saturate/env.c
examples/amok/saturate/saturate.c
examples/gras/all2all/all2all.c
examples/gras/chrono/chrono2.c
examples/gras/console/ping_server.c
examples/gras/mmrpc/mmrpc.c
examples/gras/mmrpc/mmrpc.h
examples/gras/mmrpc/mmrpc_common.c
examples/gras/p2p/can/can.c
examples/gras/p2p/can/can_tests.c
examples/gras/p2p/can/types.h
examples/gras/p2p/chord/chord.c
examples/gras/ping/ping_server.c
examples/gras/pmm/pmm.c
examples/gras/properties/properties.c
examples/gras/replay/replay.c
examples/gras/replay/workload.h
examples/gras/replay/xbt_workload.c
examples/gras/rpc/rpc.c
examples/gras/spawn/spawn_child.c
examples/gras/spawn/spawn_father.c
examples/gras/synchro/philosopher.c
examples/gras/timer/timer.c
examples/msg/actions/actions.c
examples/msg/alias/masterslave_forwarder_with_alias.c
examples/msg/gtnets/gtnets.c
examples/msg/icomms/peer.c
examples/msg/icomms/peer2.c
examples/msg/icomms/peer3.c
examples/msg/masterslave/masterslave_bypass.c
examples/msg/masterslave/masterslave_console.c
examples/msg/masterslave/masterslave_failure.c
examples/msg/masterslave/masterslave_forwarder.c
examples/msg/masterslave/masterslave_mailbox.c
examples/msg/mc/bugged1.c
examples/msg/mc/bugged2.c
examples/msg/mc/bugged3.c
examples/msg/mc/centralized_mutex.c
examples/msg/mc/random_test.c
examples/msg/migration/migration.c
examples/msg/parallel_task/test_ptask.c
examples/msg/priority/priority.c
examples/msg/properties/msg_prop.c
examples/msg/sendrecv/sendrecv.c
examples/msg/trace/test_trace_integration.c
examples/msg/tracing/categories.c
examples/msg/tracing/ms.c
examples/msg/tracing/procmig.c
examples/msg/tracing/tasks.c
examples/msg/tracing/volume.c
examples/simdag/dax/dax_test.c
examples/simdag/dot/dot_test.c
examples/simdag/scheduling/minmin_test.c
examples/simdag/sd_seq_access.c
examples/simdag/sd_test.c
examples/simdag/sd_test2.c
examples/simdag/sd_test_console.c
examples/smpi/allreduce.c
examples/smpi/alltoall2.c
examples/smpi/alltoall_basic.c
examples/smpi/alltoallv.c
examples/smpi/barrier.c
examples/smpi/bcast.c
examples/smpi/bcbench.c
examples/smpi/compute2.c
examples/smpi/compute3.c
examples/smpi/get_processor_name.c
examples/smpi/mvmul.c
examples/smpi/pingpong.c
examples/smpi/reduce.c
examples/smpi/scatter.c
examples/smpi/sendrecv.c
examples/smpi/smpi_traced.c
examples/smpi/ttest01.c
examples/xbt/sem_basic.c
examples/xbt/sem_sched.c
teshsuite/gras/datadesc/datadesc_structs.c
teshsuite/gras/datadesc/datadesc_usage.c
teshsuite/gras/msg_handle/msg_handle.c
teshsuite/msg/get_sender.c
teshsuite/simdag/basic0.c
teshsuite/simdag/basic1.c
teshsuite/simdag/basic2.c
teshsuite/simdag/basic3.c
teshsuite/simdag/basic4.c
teshsuite/simdag/basic5.c
teshsuite/simdag/basic6.c
teshsuite/simdag/network/p2p/test_latency1.c
teshsuite/simdag/network/p2p/test_latency2.c
teshsuite/simdag/network/p2p/test_latency3.c
teshsuite/simdag/network/p2p/test_latency_bound.c
teshsuite/simdag/network/test_reinit_costs.c
teshsuite/simdag/platforms/basic_parsing_test.c
teshsuite/simdag/platforms/is_router_test.c
teshsuite/xbt/log_large_test.c
teshsuite/xbt/parallel_log_crashtest.c
testsuite/simdag/sd_test.c
testsuite/surf/lmm_usage.c
testsuite/surf/surf_usage.c
testsuite/surf/surf_usage2.c
testsuite/surf/trace_usage.c
testsuite/xbt/graphxml_usage.c
testsuite/xbt/heap_bench.c
testsuite/xbt/log_usage.c
tools/gras/stub_generator.c
tools/gras/unix_stub_generator.c
tools/gras/windows_stub_generator.c
tools/tesh/run_context.c
tools/tesh/run_context.h
tools/tesh/tesh.c
tools/tesh/tesh.h
tools/tesh2/include/com.h
tools/tesh2/include/command.h
tools/tesh2/include/context.h
tools/tesh2/include/def.h
tools/tesh2/include/directories.h
tools/tesh2/include/directory.h
tools/tesh2/include/excludes.h
tools/tesh2/include/explode.h
tools/tesh2/include/fstream.h
tools/tesh2/include/fstreams.h
tools/tesh2/include/getpath.h
tools/tesh2/include/is_cmd.h
tools/tesh2/include/reader.h
tools/tesh2/include/readline.h
tools/tesh2/include/runner.h
tools/tesh2/include/str_replace.h
tools/tesh2/include/timer.h
tools/tesh2/include/types.h
tools/tesh2/include/unit.h
tools/tesh2/include/units.h
tools/tesh2/include/variable.h
tools/tesh2/include/writer.h
tools/tesh2/include/xerrno.h
tools/tesh2/include/xsignal.h
tools/tesh2/src/command.c
tools/tesh2/src/context.c
tools/tesh2/src/directories.c
tools/tesh2/src/directory.c
tools/tesh2/src/excludes.c
tools/tesh2/src/explode.c
tools/tesh2/src/fstream.c
tools/tesh2/src/fstreams.c
tools/tesh2/src/getpath.c
tools/tesh2/src/is_cmd.c
tools/tesh2/src/main.c
tools/tesh2/src/reader.c
tools/tesh2/src/readline.c
tools/tesh2/src/runner.c
tools/tesh2/src/str_replace.c
tools/tesh2/src/timer.c
tools/tesh2/src/unit.c
tools/tesh2/src/units.c
tools/tesh2/src/variable.c
tools/tesh2/src/writer.c
tools/tesh2/src/xerrno.c
tools/tesh2/src/xsignal.c
tools/tesh2/w32/include/dirent.h
tools/tesh2/w32/include/getopt.h
tools/tesh2/w32/src/Cat.c
tools/tesh2/w32/src/dirent.c
tools/tesh2/w32/src/getopt.c
win32_test_app/include/TBuffer.h
win32_test_app/include/TDefs.h
win32_test_app/include/TErrno.h
win32_test_app/include/TStream.h
win32_test_app/include/TTestCaseContext.h
win32_test_app/include/TTestRunner.h
win32_test_app/include/TTestSuite.h
win32_test_app/include/TThreadDynarray.h
win32_test_app/include/TTime.h
win32_test_app/src/TBuffer.c
win32_test_app/src/TErrno.c
win32_test_app/src/TStream.c
win32_test_app/src/TTestCaseContext.c
win32_test_app/src/TTestRunner.c
win32_test_app/src/TTestSuite.c
win32_test_app/src/TThreadDynarray.c
win32_test_app/src/TTime.c
win32_test_app/src/Test.c
win32_testsuite/borland/builder6/realistic/gras/datadesc_usage/datadesc_structs.c
win32_testsuite/borland/builder6/realistic/gras/datadesc_usage/datadesc_usage.c
win32_testsuite/borland/builder6/simulation/surf/trace_usage/trace_usage.c
win32_testsuite/borland/builder6/simulation/xbt/context_usage/context_usage.c
win32_testsuite/borland/builder6/simulation/xbt/graphxml_usage/graphxml_usage.c
win32_testsuite/borland/builder6/simulation/xbt/heap_bench/heap_bench.c
win32_testsuite/borland/builder6/simulation/xbt/log_usage/log_usage.c

index 2fc26ed..59d5289 100644 (file)
@@ -8,10 +8,10 @@
 #include <stdlib.h>
 
 #ifdef _XBT_WIN32
-       #include "win32_ucontext.h"
-       #include "win32_ucontext.c"
+#include "win32_ucontext.h"
+#include "win32_ucontext.c"
 #else
-       #include <ucontext.h>
+#include <ucontext.h>
 #endif
 
 void child(void);
@@ -23,43 +23,43 @@ ucontext_t uc_main;
 
 void child(void)
 {
-    if (swapcontext(&uc_child, &uc_main) != 0)
-        exit(2);
+  if (swapcontext(&uc_child, &uc_main) != 0)
+    exit(2);
 }
 
 int main(int argc, char *argv[])
 {
-    FILE *fp;
-    void *stack;
+  FILE *fp;
+  void *stack;
 
-    /* the default is that it fails */
-    if ((fp = fopen("conftestval", "w")) == NULL)
-        exit(3);
-    fprintf(fp, "no\n");
-    fclose(fp);
+  /* the default is that it fails */
+  if ((fp = fopen("conftestval", "w")) == NULL)
+    exit(3);
+  fprintf(fp, "no\n");
+  fclose(fp);
 
-    /* configure a child user-space context */
-    if ((stack = malloc(64*1024)) == NULL)
-        exit(4);
-    if (getcontext(&uc_child) != 0)
-        exit(5);
-    uc_child.uc_link = NULL;
-    uc_child.uc_stack.ss_sp = (char *)stack+(32*1024);
-    uc_child.uc_stack.ss_size = 32*1024;
-    uc_child.uc_stack.ss_flags = 0;
-    makecontext(&uc_child, child, 0);
+  /* configure a child user-space context */
+  if ((stack = malloc(64 * 1024)) == NULL)
+    exit(4);
+  if (getcontext(&uc_child) != 0)
+    exit(5);
+  uc_child.uc_link = NULL;
+  uc_child.uc_stack.ss_sp = (char *) stack + (32 * 1024);
+  uc_child.uc_stack.ss_size = 32 * 1024;
+  uc_child.uc_stack.ss_flags = 0;
+  makecontext(&uc_child, child, 0);
 
-    /* switch into the user context */
-    if (swapcontext(&uc_main, &uc_child) != 0)
-        exit(6);
+  /* switch into the user context */
+  if (swapcontext(&uc_main, &uc_child) != 0)
+    exit(6);
 
-    /* Fine, child came home */
-    if ((fp = fopen("conftestval", "w")) == NULL)
-        exit(7);
-    fprintf(fp, "yes\n");
-    fclose(fp);
+  /* Fine, child came home */
+  if ((fp = fopen("conftestval", "w")) == NULL)
+    exit(7);
+  fprintf(fp, "yes\n");
+  fclose(fp);
 
-    /* die successfully */
-    exit(0);
-       return 1;
+  /* die successfully */
+  exit(0);
+  return 1;
 }
index 52b03af..00b6dff 100644 (file)
@@ -9,49 +9,72 @@
 #include <sys/types.h>
 #include <stdio.h>
 
-int main (void)
+int main(void)
 {
 
-       int c = sizeof(char);
-       int si = sizeof(short int);
-       int i = sizeof(int);
-       int li = sizeof(long int);
-       int lli = sizeof(long long int);
-       int f = sizeof(float);
-       int v = sizeof(void *);
-       int vv = sizeof(void (*) (void));
-       /*printf("char : %d\n",c);
-       printf("short int : %d\n",si);
-       printf("int : %d\n",i);
-       printf("long int : %d\n",li);
-       printf("long long int : %d\n",lli);
-       printf("float : %d\n",f);
-       printf("void * : %d\n",v);
-       printf("void (*) (void) : %d\n",vv);*/
+  int c = sizeof(char);
+  int si = sizeof(short int);
+  int i = sizeof(int);
+  int li = sizeof(long int);
+  int lli = sizeof(long long int);
+  int f = sizeof(float);
+  int v = sizeof(void *);
+  int vv = sizeof(void (*)(void));
+  /*printf("char : %d\n",c);
+     printf("short int : %d\n",si);
+     printf("int : %d\n",i);
+     printf("long int : %d\n",li);
+     printf("long long int : %d\n",lli);
+     printf("float : %d\n",f);
+     printf("void * : %d\n",v);
+     printf("void (*) (void) : %d\n",vv); */
 
-       struct s0 {char c0; char i0;};
-       struct s1 {char c1; short int i1;};
-       struct s2 {char c2; int i2;};
-       struct s3 {char c3; long int i3;};
-       struct s4 {char c4; long long int i4;};
-       struct s5 {char c5; double i5;};
-       struct s6 {char c6; void * i6;};
-       int res0=sizeof(struct s0)-sizeof(char);
-       int res1=sizeof(struct s1)-sizeof(short int);
-       int res2=sizeof(struct s2)-sizeof(int);
-       int res3=sizeof(struct s3)-sizeof(long int);
-       int res4=sizeof(struct s4)-sizeof(long long int);
-       int res5=sizeof(struct s5)-sizeof(double);
-       int res6=sizeof(struct s6)-sizeof(void *);
-       /*printf("struct-char : %d\n",res0);
-       printf("struct-short int : %d\n",res1); 
-       printf("struct-int : %d\n",res2);       
-       printf("struct-long int : %d\n",res3);  
-       printf("struct-long long int : %d\n",res4);     
-       printf("struct-double : %d\n",res5);    
-       printf("struct-void * : %d\n",res6);*/
+  struct s0 {
+    char c0;
+    char i0;
+  };
+  struct s1 {
+    char c1;
+    short int i1;
+  };
+  struct s2 {
+    char c2;
+    int i2;
+  };
+  struct s3 {
+    char c3;
+    long int i3;
+  };
+  struct s4 {
+    char c4;
+    long long int i4;
+  };
+  struct s5 {
+    char c5;
+    double i5;
+  };
+  struct s6 {
+    char c6;
+    void *i6;
+  };
+  int res0 = sizeof(struct s0) - sizeof(char);
+  int res1 = sizeof(struct s1) - sizeof(short int);
+  int res2 = sizeof(struct s2) - sizeof(int);
+  int res3 = sizeof(struct s3) - sizeof(long int);
+  int res4 = sizeof(struct s4) - sizeof(long long int);
+  int res5 = sizeof(struct s5) - sizeof(double);
+  int res6 = sizeof(struct s6) - sizeof(void *);
+  /*printf("struct-char : %d\n",res0);
+     printf("struct-short int : %d\n",res1);      
+     printf("struct-int : %d\n",res2);    
+     printf("struct-long int : %d\n",res3);       
+     printf("struct-long long int : %d\n",res4);  
+     printf("struct-double : %d\n",res5); 
+     printf("struct-void * : %d\n",res6); */
 
-       printf("_C:%d/%d:_I:%d/%d:%d/%d:%d/%d:%d/%d:_P:%d/%d:%d/%d:_D:4/%d:8/%d:",c,res0,si,res1,i,res2,li,res3,lli,res4,v,res6,vv,res6,f,res5);
-       return 1;
+  printf
+      ("_C:%d/%d:_I:%d/%d:%d/%d:%d/%d:%d/%d:_P:%d/%d:%d/%d:_D:4/%d:8/%d:",
+       c, res0, si, res1, i, res2, li, res3, lli, res4, v, res6, vv, res6,
+       f, res5);
+  return 1;
 }
-
index 059941d..865eeaf 100644 (file)
@@ -5,62 +5,68 @@
  * under the terms of the license (GNU LGPL) which comes with this package. */
 
 #include <sys/types.h>
-#include <stddef.h> /* offsetof() */
+#include <stddef.h>             /* offsetof() */
 #include <stdio.h>
 
-int main (void)
+int main(void)
 {
 
-struct s0 {char c0; double d0;};
-struct s1 {double d1; int i1; char c1;};
-struct s2 {double d2; int i2; char c2[6];};
-struct s3 {double d3; int a3; int b3;}; 
+  struct s0 {
+    char c0;
+    double d0;
+  };
+  struct s1 {
+    double d1;
+    int i1;
+    char c1;
+  };
+  struct s2 {
+    double d2;
+    int i2;
+    char c2[6];
+  };
+  struct s3 {
+    double d3;
+    int a3;
+    int b3;
+  };
 
-int gras_struct_packed;
-int gras_struct_compact;
-int gras_array_straddle_struct;
-int gras_compact_struct;
+  int gras_struct_packed;
+  int gras_struct_compact;
+  int gras_array_straddle_struct;
+  int gras_compact_struct;
 
-       if (sizeof(struct s0) == sizeof(double)+sizeof(char))
-       {
-               gras_struct_packed=1;
-       }
-       else
-       {
-               gras_struct_packed=0;
-       }
-       if (offsetof(struct s1,c1) == sizeof(double)+sizeof(int))
-       {
-               gras_struct_compact=1;
-       }
-       else
-       {
-               gras_struct_compact=0;
-       }
-       if (offsetof(struct s2,c2) == sizeof(double)+sizeof(int))
-       {
-               gras_array_straddle_struct=1;
-       }
-       else
-       {
-               gras_array_straddle_struct=0;
-       }
-       if (offsetof(struct s3,b3) == sizeof(double)+sizeof(int))
-       {
-               gras_compact_struct=1;
-       }
-       else
-       {
-               gras_compact_struct=0;
-       }
+  if (sizeof(struct s0) == sizeof(double) + sizeof(char)) {
+    gras_struct_packed = 1;
+  } else {
+    gras_struct_packed = 0;
+  }
+  if (offsetof(struct s1, c1) == sizeof(double) + sizeof(int)) {
+    gras_struct_compact = 1;
+  } else {
+    gras_struct_compact = 0;
+  }
+  if (offsetof(struct s2, c2) == sizeof(double) + sizeof(int)) {
+    gras_array_straddle_struct = 1;
+  } else {
+    gras_array_straddle_struct = 0;
+  }
+  if (offsetof(struct s3, b3) == sizeof(double) + sizeof(int)) {
+    gras_compact_struct = 1;
+  } else {
+    gras_compact_struct = 0;
+  }
 
 
-       if(gras_struct_packed == 0 && gras_struct_compact == 1) printf("GRAS_STRUCT_COMPACT ");
+  if (gras_struct_packed == 0 && gras_struct_compact == 1)
+    printf("GRAS_STRUCT_COMPACT ");
 
-       if(gras_array_straddle_struct == 1) printf("GRAS_ARRAY_STRADDLE_STRUCT ");
+  if (gras_array_straddle_struct == 1)
+    printf("GRAS_ARRAY_STRADDLE_STRUCT ");
 
-       if(gras_compact_struct == 1) printf("GRAS_COMPACT_STRUCT ");
+  if (gras_compact_struct == 1)
+    printf("GRAS_COMPACT_STRUCT ");
 
-return 1;
+  return 1;
 
 }
index 81a257f..0c4780c 100644 (file)
@@ -6,9 +6,10 @@
 
 #define _GNU_SOURCE
 #include <stdio.h>
-int main(void){
-   FILE * fp;
-   char * line = NULL;
-   size_t len = 0;
-   getline(&line, &len, fp);
+int main(void)
+{
+  FILE *fp;
+  char *line = NULL;
+  size_t len = 0;
+  getline(&line, &len, fp);
 }
index d89e76d..021c5d5 100644 (file)
 #include <sys/types.h>
 #include <stdio.h>
 
-int main (void)
+int main(void)
 {
 
-       int c = sizeof(char);
-       int si = sizeof(short int);
-       int i = sizeof(int);
-       int li = sizeof(long int);
-       int lli = sizeof(long long int);
-       int f = sizeof(float);
-       int v = sizeof(void *);
-       int vv = sizeof(void (*) (void));
-       int t[8] = {c,si,i,li,lli,f,v,vv};
-       
-       int max = t[0];
-
-       for (i = 1; i < 8; i++)
-       { 
-               if (t[i] > max) max = t[i];
-
-       } 
-       printf("%d",max);
-       return 1;
+  int c = sizeof(char);
+  int si = sizeof(short int);
+  int i = sizeof(int);
+  int li = sizeof(long int);
+  int lli = sizeof(long long int);
+  int f = sizeof(float);
+  int v = sizeof(void *);
+  int vv = sizeof(void (*)(void));
+  int t[8] = { c, si, i, li, lli, f, v, vv };
+
+  int max = t[0];
+
+  for (i = 1; i < 8; i++) {
+    if (t[i] > max)
+      max = t[i];
+
+  }
+  printf("%d", max);
+  return 1;
 }
-
index c3eb72d..1b0664a 100644 (file)
@@ -6,9 +6,9 @@
 
 #include <pthread.h>
 
-void main (void)
+void main(void)
 {
-       pthread_mutex_t s;
-       const struct timespec t;
-       sem_timedlock(&s, &t);
+  pthread_mutex_t s;
+  const struct timespec t;
+  sem_timedlock(&s, &t);
 }
index 473d6c5..00277d4 100644 (file)
@@ -5,4 +5,4 @@
  * under the terms of the license (GNU LGPL) which comes with this package. */
 
 #include <stdio.h>
-printf("%s",NULL);
+printf("%s", NULL);
index f4d3038..0fe001f 100644 (file)
@@ -8,6 +8,6 @@
 
 void main(void)
 {
-       sem_t s;
-       sem_init(&s);
+  sem_t s;
+  sem_init(&s);
 }
index 58876f6..994d9ad 100644 (file)
@@ -8,7 +8,7 @@
 
 int main()
 {
-       sem_t *s;
-       const struct timespec * t;
-       sem_timedwait(s, t);
+  sem_t *s;
+  const struct timespec *t;
+  sem_timedwait(s, t);
 }
index a33c846..60f2403 100644 (file)
@@ -8,14 +8,18 @@
 
 int main(void)
 {
-    char bufs[5] = { 'x', 'x', 'x', '\0', '\0' };
-    char bufd[5] = { 'x', 'x', 'x', '\0', '\0' };
-    int i;
-    i = snprintf (bufs, 2, "%s", "111");
-    if (strcmp (bufs, "1")) exit (1);
-    if (i != 3) exit (1);
-    i = snprintf (bufd, 2, "%d", 111);
-    if (strcmp (bufd, "1")) exit (1);
-    if (i != 3) exit (1);
-    exit(0);
+  char bufs[5] = { 'x', 'x', 'x', '\0', '\0' };
+  char bufd[5] = { 'x', 'x', 'x', '\0', '\0' };
+  int i;
+  i = snprintf(bufs, 2, "%s", "111");
+  if (strcmp(bufs, "1"))
+    exit(1);
+  if (i != 3)
+    exit(1);
+  i = snprintf(bufd, 2, "%d", 111);
+  if (strcmp(bufd, "1"))
+    exit(1);
+  if (i != 3)
+    exit(1);
+  exit(0);
 }
index c1a9e78..f0f2f1a 100644 (file)
@@ -9,22 +9,23 @@
 static int iterate = 10;
 static int growsdown(int *x)
 {
-    auto int y;
-    y = (x > &y);
-    if (--iterate > 0)
-        y = growsdown(&y);
-    if (y != (x > &y))
-        exit(1);
-    return y;
+  auto int y;
+  y = (x > &y);
+  if (--iterate > 0)
+    y = growsdown(&y);
+  if (y != (x > &y))
+    exit(1);
+  return y;
 }
+
 int main(int argc, char *argv[])
 {
-    FILE *f;
-    auto int x;
-    if ((f = fopen("conftestval", "w")) == NULL)
-        exit(1);
-    fprintf(f, "%s\n", growsdown(&x) ? "down" : "up");;
-    fclose(f);
-    exit(0);
-       return 1;
+  FILE *f;
+  auto int x;
+  if ((f = fopen("conftestval", "w")) == NULL)
+    exit(1);
+  fprintf(f, "%s\n", growsdown(&x) ? "down" : "up");;
+  fclose(f);
+  exit(0);
+  return 1;
 }
index 8bffd64..66dcba0 100644 (file)
@@ -9,8 +9,8 @@
 #endif
 
 #ifdef _XBT_WIN32
-       #include "win32_ucontext.h"
-       #include "win32_ucontext.c"
+#include "win32_ucontext.h"
+#include "win32_ucontext.c"
 #endif
 
 #include <stdio.h>
 
 #if defined(TEST_makecontext)
 #ifdef _XBT_WIN32
-       #include "win32_ucontext.h"
+#include "win32_ucontext.h"
 #else
-       #include <ucontext.h>
+#include <ucontext.h>
 #endif
 
 #endif
 union alltypes {
-    long   l;
-    double d;
-    void  *vp;
-    void (*fp)(void);
-    char  *cp;
+  long l;
+  double d;
+  void *vp;
+  void (*fp) (void);
+  char *cp;
 };
-static volatile char *handler_addr = (char *)0xDEAD;
+static volatile char *handler_addr = (char *) 0xDEAD;
 #if defined(TEST_sigstack) || defined(TEST_sigaltstack)
 static volatile int handler_done = 0;
 void handler(int sig)
 {
-    char garbage[1024];
-    int i;
-    auto int dummy;
-    for (i = 0; i < 1024; i++)
-        garbage[i] = 'X';
-    handler_addr = (char *)&dummy;
-    handler_done = 1;
-    return;
+  char garbage[1024];
+  int i;
+  auto int dummy;
+  for (i = 0; i < 1024; i++)
+    garbage[i] = 'X';
+  handler_addr = (char *) &dummy;
+  handler_done = 1;
+  return;
 }
 #endif
 #if defined(TEST_makecontext)
@@ -57,96 +57,95 @@ static ucontext_t uc_handler;
 static ucontext_t uc_main;
 void handler(void)
 {
-    char garbage[1024];
-    int i;
-    auto int dummy;
-    for (i = 0; i < 1024; i++)
-        garbage[i] = 'X';
-    handler_addr = (char *)&dummy;
-    swapcontext(&uc_handler, &uc_main);
-    return;
+  char garbage[1024];
+  int i;
+  auto int dummy;
+  for (i = 0; i < 1024; i++)
+    garbage[i] = 'X';
+  handler_addr = (char *) &dummy;
+  swapcontext(&uc_handler, &uc_main);
+  return;
 }
 #endif
 int main(int argc, char *argv[])
 {
-    FILE *f;
-    char *skaddr;
-    char *skbuf;
-    int sksize;
-    char result[1024];
-    int i;
-    sksize = 32768;
-    skbuf = (char *)malloc(sksize*2+2*sizeof(union alltypes));
-    if (skbuf == NULL)
-        exit(1);
-    for (i = 0; i < sksize*2+2*sizeof(union alltypes); i++)
-        skbuf[i] = 'A';
-    skaddr = skbuf+sizeof(union alltypes);
+  FILE *f;
+  char *skaddr;
+  char *skbuf;
+  int sksize;
+  char result[1024];
+  int i;
+  sksize = 32768;
+  skbuf = (char *) malloc(sksize * 2 + 2 * sizeof(union alltypes));
+  if (skbuf == NULL)
+    exit(1);
+  for (i = 0; i < sksize * 2 + 2 * sizeof(union alltypes); i++)
+    skbuf[i] = 'A';
+  skaddr = skbuf + sizeof(union alltypes);
 #if defined(TEST_sigstack) || defined(TEST_sigaltstack)
-    {
-        struct sigaction sa;
+  {
+    struct sigaction sa;
 #if defined(TEST_sigstack)
-        struct sigstack ss;
+    struct sigstack ss;
 #elif defined(TEST_sigaltstack) && defined(HAVE_STACK_T)
-        stack_t ss;
+    stack_t ss;
 #else
-        struct sigaltstack ss;
+    struct sigaltstack ss;
 #endif
 #if defined(TEST_sigstack)
-        ss.ss_sp      = (void *)(skaddr + sksize);
-        ss.ss_onstack = 0;
-        if (sigstack(&ss, NULL) < 0)
-            exit(1);
+    ss.ss_sp = (void *) (skaddr + sksize);
+    ss.ss_onstack = 0;
+    if (sigstack(&ss, NULL) < 0)
+      exit(1);
 #elif defined(TEST_sigaltstack)
-        ss.ss_sp    = (void *)(skaddr + sksize);
-        ss.ss_size  = sksize;
-        ss.ss_flags = 0;
-        if (sigaltstack(&ss, NULL) < 0)
-            exit(1);
+    ss.ss_sp = (void *) (skaddr + sksize);
+    ss.ss_size = sksize;
+    ss.ss_flags = 0;
+    if (sigaltstack(&ss, NULL) < 0)
+      exit(1);
 #endif
-        memset((void *)&sa, 0, sizeof(struct sigaction));
-        sa.sa_handler = handler;
-        sa.sa_flags = SA_ONSTACK;
-        sigemptyset(&sa.sa_mask);
-        sigaction(SIGUSR1, &sa, NULL);
-        kill(getpid(), SIGUSR1);
-        while (!handler_done)
-            /*nop*/;
-    }
+    memset((void *) &sa, 0, sizeof(struct sigaction));
+    sa.sa_handler = handler;
+    sa.sa_flags = SA_ONSTACK;
+    sigemptyset(&sa.sa_mask);
+    sigaction(SIGUSR1, &sa, NULL);
+    kill(getpid(), SIGUSR1);
+    while (!handler_done)
+      /*nop */ ;
+  }
 #endif
 #if defined(TEST_makecontext)
-    {
-        if (getcontext(&uc_handler) != 0)
-            exit(1);
-        uc_handler.uc_link = NULL;
-        uc_handler.uc_stack.ss_sp    = (void *)(skaddr + sksize);
-        uc_handler.uc_stack.ss_size  = sksize;
-        uc_handler.uc_stack.ss_flags = 0;
-        makecontext(&uc_handler, handler, 0);
-        swapcontext(&uc_main, &uc_handler);
-    }
+  {
+    if (getcontext(&uc_handler) != 0)
+      exit(1);
+    uc_handler.uc_link = NULL;
+    uc_handler.uc_stack.ss_sp = (void *) (skaddr + sksize);
+    uc_handler.uc_stack.ss_size = sksize;
+    uc_handler.uc_stack.ss_flags = 0;
+    makecontext(&uc_handler, handler, 0);
+    swapcontext(&uc_main, &uc_handler);
+  }
 #endif
-    if (handler_addr == (char *)0xDEAD)
-        exit(1);
-    if (handler_addr < skaddr+sksize) {
-        /* stack was placed into lower area */
-        if (*(skaddr+sksize) != 'A')
-             sprintf(result, "(skaddr)+(sksize)-%d,(sksize)-%d",
-                     sizeof(union alltypes), sizeof(union alltypes));
-        else
-             strcpy(result, "(skaddr)+(sksize),(sksize)");
-    }
-    else {
-        /* stack was placed into higher area */
-        if (*(skaddr+sksize*2) != 'A')
-            sprintf(result, "(skaddr),(sksize)-%d", sizeof(union alltypes));
-        else
-            strcpy(result, "(skaddr),(sksize)");
-    }
-    if ((f = fopen("conftestval", "w")) == NULL)
-        exit(1);
-    fprintf(f, "%s\n", result);
-    fclose(f);
-    exit(0);
-       return 1;
+  if (handler_addr == (char *) 0xDEAD)
+    exit(1);
+  if (handler_addr < skaddr + sksize) {
+    /* stack was placed into lower area */
+    if (*(skaddr + sksize) != 'A')
+      sprintf(result, "(skaddr)+(sksize)-%d,(sksize)-%d",
+              sizeof(union alltypes), sizeof(union alltypes));
+    else
+      strcpy(result, "(skaddr)+(sksize),(sksize)");
+  } else {
+    /* stack was placed into higher area */
+    if (*(skaddr + sksize * 2) != 'A')
+      sprintf(result, "(skaddr),(sksize)-%d", sizeof(union alltypes));
+    else
+      strcpy(result, "(skaddr),(sksize)");
+  }
+  if ((f = fopen("conftestval", "w")) == NULL)
+    exit(1);
+  fprintf(f, "%s\n", result);
+  fclose(f);
+  exit(0);
+  return 1;
 }
index 30f4a9d..26e1db9 100644 (file)
@@ -7,26 +7,30 @@
 #include <stdio.h>
 #include <stdarg.h>
 
-int my_vsnprintf (char *buf, const char *tmpl, ...)
+int my_vsnprintf(char *buf, const char *tmpl, ...)
 {
-    int i;
-    va_list args;
-    va_start (args, tmpl);
-    i = vsnprintf (buf, 2, tmpl, args);
-    va_end (args);
-    return i;
+  int i;
+  va_list args;
+  va_start(args, tmpl);
+  i = vsnprintf(buf, 2, tmpl, args);
+  va_end(args);
+  return i;
 }
 
 int main(void)
 {
-    char bufs[5] = { 'x', 'x', 'x', '\0', '\0' };
-    char bufd[5] = { 'x', 'x', 'x', '\0', '\0' };
-    int i;
-    i = my_vsnprintf (bufs, "%s", "111");
-    if (strcmp (bufs, "1")) exit (1);
-    if (i != 3) exit (1);
-    i = my_vsnprintf (bufd, "%d", 111);
-    if (strcmp (bufd, "1")) exit (1);
-    if (i != 3) exit (1);
-    exit(0);
+  char bufs[5] = { 'x', 'x', 'x', '\0', '\0' };
+  char bufd[5] = { 'x', 'x', 'x', '\0', '\0' };
+  int i;
+  i = my_vsnprintf(bufs, "%s", "111");
+  if (strcmp(bufs, "1"))
+    exit(1);
+  if (i != 3)
+    exit(1);
+  i = my_vsnprintf(bufd, "%d", 111);
+  if (strcmp(bufd, "1"))
+    exit(1);
+  if (i != 3)
+    exit(1);
+  exit(0);
 }
index cf253ee..dcf146c 100644 (file)
 //---------------------------------------------------------------------------
 
 #pragma argsused
-int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
+int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason,
+                         void *lpReserved)
 {
-       return 1;
+  return 1;
 }
+
 //---------------------------------------------------------------------------
index 16c8e2a..dcf146c 100644 (file)
 //---------------------------------------------------------------------------
 
 #pragma argsused
-int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)
+int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason,
+                         void *lpReserved)
 {
-    return 1;
+  return 1;
 }
+
 //---------------------------------------------------------------------------
\ No newline at end of file
index 7f50312..41e4702 100644 (file)
@@ -1,11 +1,11 @@
 #include <windows.h>\r
 \r
 #include <xbt/log.h>\r
-\r
-/* logs */\r
+    \r
+/* logs */ \r
 // XBT_LOG_NEW_DEFAULT_CATEGORY(SimGridX,"SimGrid for cxx");\r
-\r
-int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)\r
-{\r
-    return 1;\r
-}
\ No newline at end of file
+\rint WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason,
+                          void *lpReserved) \r
+{
+  \rreturn 1;
+\r}
index c2a6fe5..b896056 100644 (file)
@@ -1,7 +1,6 @@
 #include <windows.h>\r
-\r
-\r
-int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)\r
-{\r
-    return 1;\r
-}
\ No newline at end of file
+\r \rint WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason,
+                            void *lpReserved) \r
+{
+  \rreturn 1;
+\r}
index c2a6fe5..b896056 100644 (file)
@@ -1,7 +1,6 @@
 #include <windows.h>\r
-\r
-\r
-int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved)\r
-{\r
-    return 1;\r
-}
\ No newline at end of file
+\r \rint WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason,
+                            void *lpReserved) \r
+{
+  \rreturn 1;
+\r}
index ea9a3c0..97fea93 100644 (file)
@@ -6,20 +6,22 @@
 
 #include <gras.h>
 
-int client(int argc, char *argv[]) {
-  gras_init(&argc,argv);
+int client(int argc, char *argv[])
+{
+  gras_init(&argc, argv);
 
   /* Your own code for the client process */
-  
+
   gras_exit();
   return 0;
 }
 
-int server(int argc, char *argv[]) {
-  gras_init(&argc,argv);
+int server(int argc, char *argv[])
+{
+  gras_init(&argc, argv);
 
   /* Your own code for the server process */
-  
+
   gras_exit();
   return 0;
 }
index ded8811..269414c 100644 (file)
@@ -7,39 +7,44 @@
 #include <stdio.h>
 #include <gras.h>
 
-int server(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
-  gras_socket_t toclient; /* socket used to write to the client */
-  
-  gras_init(&argc,argv);
+int server(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
+  gras_socket_t toclient;       /* socket used to write to the client */
+
+  gras_init(&argc, argv);
 
   gras_msgtype_declare("hello", NULL);
   mysock = gras_socket_server(12345);
 
-  gras_msg_wait(60, "hello", &toclient, NULL /* no payload */);
-  
-  fprintf(stderr,"Cool, we received the message from %s:%d.\n",
-         gras_socket_peer_name(toclient), gras_socket_peer_port(toclient));
-  
+  gras_msg_wait(60, "hello", &toclient, NULL /* no payload */ );
+
+  fprintf(stderr, "Cool, we received the message from %s:%d.\n",
+          gras_socket_peer_name(toclient),
+          gras_socket_peer_port(toclient));
+
   gras_exit();
   return 0;
 }
-int client(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
-  gras_socket_t toserver; /* socket used to write to the server */
 
-  gras_init(&argc,argv);
+int client(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
+  gras_socket_t toserver;       /* socket used to write to the server */
+
+  gras_init(&argc, argv);
 
   gras_msgtype_declare("hello", NULL);
   mysock = gras_socket_server_range(1024, 10000, 0, 0);
-  
-  fprintf(stderr,"Client ready; listening on %d\n", gras_socket_my_port(mysock));
-  
-  gras_os_sleep(1.5); /* sleep 1 second and half */
+
+  fprintf(stderr, "Client ready; listening on %d\n",
+          gras_socket_my_port(mysock));
+
+  gras_os_sleep(1.5);           /* sleep 1 second and half */
   toserver = gras_socket_client("Jacquelin", 12345);
-  
-  gras_msg_send(toserver,"hello", NULL);
-  fprintf(stderr,"That's it, we sent the data to the server\n");
+
+  gras_msg_send(toserver, "hello", NULL);
+  fprintf(stderr, "That's it, we sent the data to the server\n");
 
   gras_exit();
   return 0;
index 19070e7..06d6f1a 100644 (file)
@@ -7,39 +7,45 @@
 #include <stdio.h>
 #include <gras.h>
 
-int server(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
-  gras_socket_t toclient; /* socket used to write to the client */
-  
-  gras_init(&argc,argv);
+int server(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
+  gras_socket_t toclient;       /* socket used to write to the client */
+
+  gras_init(&argc, argv);
 
   gras_msgtype_declare("hello", NULL);
   mysock = gras_socket_server(atoi(argv[1]));
 
-  gras_msg_wait(60, "hello", &toclient, NULL /* no payload */);
-  
-  fprintf(stderr,"Cool, we received the message from %s:%d.\n",
-         gras_socket_peer_name(toclient), gras_socket_peer_port(toclient));
-  
+  gras_msg_wait(60, "hello", &toclient, NULL /* no payload */ );
+
+  fprintf(stderr, "Cool, we received the message from %s:%d.\n",
+          gras_socket_peer_name(toclient),
+          gras_socket_peer_port(toclient));
+
   gras_exit();
   return 0;
 }
-int client(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
-  gras_socket_t toserver; /* socket used to write to the server */
 
-  gras_init(&argc,argv);
+int client(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
+  gras_socket_t toserver;       /* socket used to write to the server */
+
+  gras_init(&argc, argv);
 
   gras_msgtype_declare("hello", NULL);
   mysock = gras_socket_server_range(1024, 10000, 0, 0);
-  
-  fprintf(stderr,"Client ready; listening on %d\n", gras_socket_my_port(mysock));
-  
-  gras_os_sleep(1.5); /* sleep 1 second and half */
+
+  fprintf(stderr, "Client ready; listening on %d\n",
+          gras_socket_my_port(mysock));
+
+  gras_os_sleep(1.5);           /* sleep 1 second and half */
   toserver = gras_socket_client(argv[1], atoi(argv[2]));
-  
-  gras_msg_send(toserver,"hello", NULL);
-  fprintf(stderr,"That's it, we sent the data to the server on %s\n", gras_socket_peer_name(toserver));
+
+  gras_msg_send(toserver, "hello", NULL);
+  fprintf(stderr, "That's it, we sent the data to the server on %s\n",
+          gras_socket_peer_name(toserver));
 
   gras_exit();
   return 0;
index 956f6b5..1e4c45f 100644 (file)
@@ -7,46 +7,51 @@
 #include <stdio.h>
 #include <gras.h>
 
-int server_hello_cb(gras_msg_cb_ctx_t ctx, void *payload) {
+int server_hello_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
   gras_socket_t client = gras_msg_cb_ctx_from(ctx);
 
-  fprintf(stderr,"Cool, we received the message from %s:%d.\n",
-         gras_socket_peer_name(client), gras_socket_peer_port(client));
-  
+  fprintf(stderr, "Cool, we received the message from %s:%d.\n",
+          gras_socket_peer_name(client), gras_socket_peer_port(client));
+
   return 0;
-} /* end_of_callback */
+}                               /* end_of_callback */
+
+int server(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
 
-int server(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
-  
-  gras_init(&argc,argv);
+  gras_init(&argc, argv);
 
   gras_msgtype_declare("hello", NULL);
   mysock = gras_socket_server(atoi(argv[1]));
-   
-  gras_cb_register("hello",&server_hello_cb);   
+
+  gras_cb_register("hello", &server_hello_cb);
   gras_msg_handle(60);
-    
+
   gras_exit();
   return 0;
 }
 
-int client(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
-  gras_socket_t toserver; /* socket used to write to the server */
+int client(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
+  gras_socket_t toserver;       /* socket used to write to the server */
 
-  gras_init(&argc,argv);
+  gras_init(&argc, argv);
 
   gras_msgtype_declare("hello", NULL);
   mysock = gras_socket_server_range(1024, 10000, 0, 0);
-  
-  fprintf(stderr,"Client ready; listening on %d\n", gras_socket_my_port(mysock));
-  
-  gras_os_sleep(1.5); /* sleep 1 second and half */
+
+  fprintf(stderr, "Client ready; listening on %d\n",
+          gras_socket_my_port(mysock));
+
+  gras_os_sleep(1.5);           /* sleep 1 second and half */
   toserver = gras_socket_client(argv[1], atoi(argv[2]));
-  
-  gras_msg_send(toserver,"hello", NULL);
-  fprintf(stderr,"That's it, we sent the data to the server on %s\n", gras_socket_peer_name(toserver));
+
+  gras_msg_send(toserver, "hello", NULL);
+  fprintf(stderr, "That's it, we sent the data to the server on %s\n",
+          gras_socket_peer_name(toserver));
 
   gras_exit();
   return 0;
index a21233d..4751176 100644 (file)
@@ -8,77 +8,84 @@
 #include <gras.h>
 
 typedef struct {
-   int killed;
+  int killed;
 } server_data_t;
-   
 
-int server_kill_cb(gras_msg_cb_ctx_t ctx, void *payload) {
+
+int server_kill_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
   gras_socket_t client = gras_msg_cb_ctx_from(ctx);
-  server_data_t *globals=(server_data_t*)gras_userdata_get();
-   
-  fprintf(stderr,"Argh, killed by %s:%d! Bye folks...\n",
-         gras_socket_peer_name(client), gras_socket_peer_port(client));
-  
+  server_data_t *globals = (server_data_t *) gras_userdata_get();
+
+  fprintf(stderr, "Argh, killed by %s:%d! Bye folks...\n",
+          gras_socket_peer_name(client), gras_socket_peer_port(client));
+
   globals->killed = 1;
-   
+
   return 0;
-} /* end_of_kill_callback */
+}                               /* end_of_kill_callback */
 
-int server_hello_cb(gras_msg_cb_ctx_t ctx, void *payload) {
+int server_hello_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
   gras_socket_t client = gras_msg_cb_ctx_from(ctx);
 
-  fprintf(stderr,"Cool, we received the message from %s:%d.\n",
-         gras_socket_peer_name(client), gras_socket_peer_port(client));
-  
+  fprintf(stderr, "Cool, we received the message from %s:%d.\n",
+          gras_socket_peer_name(client), gras_socket_peer_port(client));
+
   return 0;
-} /* end_of_hello_callback */
+}                               /* end_of_hello_callback */
 
-int server(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
+int server(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
   server_data_t *globals;
-  
-  gras_init(&argc,argv);
 
-  globals=gras_userdata_new(server_data_t);
-  globals->killed=0;
+  gras_init(&argc, argv);
+
+  globals = gras_userdata_new(server_data_t);
+  globals->killed = 0;
 
   gras_msgtype_declare("hello", NULL);
   gras_msgtype_declare("kill", NULL);
   mysock = gras_socket_server(atoi(argv[1]));
-   
-  gras_cb_register("hello",&server_hello_cb);   
-  gras_cb_register("kill",&server_kill_cb);
+
+  gras_cb_register("hello", &server_hello_cb);
+  gras_cb_register("kill", &server_kill_cb);
 
   while (!globals->killed) {
-     gras_msg_handle(-1); /* blocking */
+    gras_msg_handle(-1);        /* blocking */
   }
-    
+
   gras_exit();
   return 0;
 }
 
-int client(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
-  gras_socket_t toserver; /* socket used to write to the server */
+int client(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
+  gras_socket_t toserver;       /* socket used to write to the server */
 
-  gras_init(&argc,argv);
+  gras_init(&argc, argv);
 
   gras_msgtype_declare("hello", NULL);
   gras_msgtype_declare("kill", NULL);
   mysock = gras_socket_server_range(1024, 10000, 0, 0);
-  
-  fprintf(stderr,"Client ready; listening on %d\n", gras_socket_my_port(mysock));
-  
-  gras_os_sleep(1.5); /* sleep 1 second and half */
+
+  fprintf(stderr, "Client ready; listening on %d\n",
+          gras_socket_my_port(mysock));
+
+  gras_os_sleep(1.5);           /* sleep 1 second and half */
   toserver = gras_socket_client(argv[1], atoi(argv[2]));
-  
-  gras_msg_send(toserver,"hello", NULL);
-  fprintf(stderr,"we sent the data to the server on %s. Let's do it again for fun\n", gras_socket_peer_name(toserver));
-  gras_msg_send(toserver,"hello", NULL);
-   
-  fprintf(stderr,"Ok. Enough. Have a rest, and then kill the server\n");
-  gras_os_sleep(5); /* sleep 1 second and half */
-  gras_msg_send(toserver,"kill", NULL);
+
+  gras_msg_send(toserver, "hello", NULL);
+  fprintf(stderr,
+          "we sent the data to the server on %s. Let's do it again for fun\n",
+          gras_socket_peer_name(toserver));
+  gras_msg_send(toserver, "hello", NULL);
+
+  fprintf(stderr, "Ok. Enough. Have a rest, and then kill the server\n");
+  gras_os_sleep(5);             /* sleep 1 second and half */
+  gras_msg_send(toserver, "kill", NULL);
 
   gras_exit();
   return 0;
index f0acfb7..9ab0443 100644 (file)
@@ -6,80 +6,85 @@
 
 #include <gras.h>
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(test,"My little example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(test, "My little example");
 
 typedef struct {
-   int killed;
+  int killed;
 } server_data_t;
-   
 
-int server_kill_cb(gras_msg_cb_ctx_t ctx, void *payload) {
+
+int server_kill_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
   gras_socket_t client = gras_msg_cb_ctx_from(ctx);
-  server_data_t *globals=(server_data_t*)gras_userdata_get();
-   
+  server_data_t *globals = (server_data_t *) gras_userdata_get();
+
   CRITICAL2("Argh, killed by %s:%d! Bye folks...",
-       gras_socket_peer_name(client), gras_socket_peer_port(client));
-  
+            gras_socket_peer_name(client), gras_socket_peer_port(client));
+
   globals->killed = 1;
-   
+
   return 0;
-} /* end_of_kill_callback */
+}                               /* end_of_kill_callback */
 
-int server_hello_cb(gras_msg_cb_ctx_t ctx, void *payload) {
+int server_hello_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
   gras_socket_t client = gras_msg_cb_ctx_from(ctx);
 
   INFO2("Cool, we received the message from %s:%d.",
-       gras_socket_peer_name(client), gras_socket_peer_port(client));
-  
+        gras_socket_peer_name(client), gras_socket_peer_port(client));
+
   return 0;
-} /* end_of_hello_callback */
+}                               /* end_of_hello_callback */
 
-int server(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
+int server(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
   server_data_t *globals;
-  
-  gras_init(&argc,argv);
 
-  globals=gras_userdata_new(server_data_t*);
-  globals->killed=0;
+  gras_init(&argc, argv);
+
+  globals = gras_userdata_new(server_data_t *);
+  globals->killed = 0;
 
   gras_msgtype_declare("hello", NULL);
   gras_msgtype_declare("kill", NULL);
   mysock = gras_socket_server(atoi(argv[1]));
-   
-  gras_cb_register("hello",&server_hello_cb);   
-  gras_cb_register("kill",&server_kill_cb);
+
+  gras_cb_register("hello", &server_hello_cb);
+  gras_cb_register("kill", &server_kill_cb);
 
   while (!globals->killed) {
-     gras_msg_handle(-1); /* blocking */
+    gras_msg_handle(-1);        /* blocking */
   }
-    
+
   gras_exit();
   return 0;
 }
 
-int client(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
-  gras_socket_t toserver; /* socket used to write to the server */
+int client(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
+  gras_socket_t toserver;       /* socket used to write to the server */
 
-  gras_init(&argc,argv);
+  gras_init(&argc, argv);
 
   gras_msgtype_declare("hello", NULL);
   gras_msgtype_declare("kill", NULL);
   mysock = gras_socket_server_range(1024, 10000, 0, 0);
-  
+
   VERB1("Client ready; listening on %d", gras_socket_my_port(mysock));
-  
-  gras_os_sleep(1.5); /* sleep 1 second and half */
+
+  gras_os_sleep(1.5);           /* sleep 1 second and half */
   toserver = gras_socket_client(argv[1], atoi(argv[2]));
-  
-  gras_msg_send(toserver,"hello", NULL);
-  INFO1("we sent the data to the server on %s. Let's do it again for fun", gras_socket_peer_name(toserver));
-  gras_msg_send(toserver,"hello", NULL);
-   
+
+  gras_msg_send(toserver, "hello", NULL);
+  INFO1("we sent the data to the server on %s. Let's do it again for fun",
+        gras_socket_peer_name(toserver));
+  gras_msg_send(toserver, "hello", NULL);
+
   INFO0("Ok. Enough. Have a rest, and then kill the server");
-  gras_os_sleep(5); /* sleep 1 second and half */
-  gras_msg_send(toserver,"kill", NULL);
+  gras_os_sleep(5);             /* sleep 1 second and half */
+  gras_msg_send(toserver, "kill", NULL);
 
   gras_exit();
   return 0;
index cb5ad51..6ddb67d 100644 (file)
@@ -6,54 +6,57 @@
 
 #include <gras.h>
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(test,"My little example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(test, "My little example");
 
 /* *********************** Server *********************** */
 typedef struct {
-   int killed;
-} server_data_t;   
+  int killed;
+} server_data_t;
 
-int server_kill_cb(gras_msg_cb_ctx_t ctx, void *payload) {
+int server_kill_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
   gras_socket_t client = gras_msg_cb_ctx_from(ctx);
-  server_data_t *globals=(server_data_t*)gras_userdata_get();
-   
+  server_data_t *globals = (server_data_t *) gras_userdata_get();
+
   CRITICAL2("Argh, killed by %s:%d! Bye folks...",
-       gras_socket_peer_name(client), gras_socket_peer_port(client));
-  
+            gras_socket_peer_name(client), gras_socket_peer_port(client));
+
   globals->killed = 1;
-   
+
   return 0;
-} /* end_of_kill_callback */
+}                               /* end_of_kill_callback */
 
-int server_hello_cb(gras_msg_cb_ctx_t ctx, void *payload) {
+int server_hello_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
   gras_socket_t client = gras_msg_cb_ctx_from(ctx);
 
   INFO2("Cool, we received the message from %s:%d.",
-       gras_socket_peer_name(client), gras_socket_peer_port(client));
-  
+        gras_socket_peer_name(client), gras_socket_peer_port(client));
+
   return 0;
-} /* end_of_hello_callback */
+}                               /* end_of_hello_callback */
 
-int server(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
+int server(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
   server_data_t *globals;
-  
-  gras_init(&argc,argv);
 
-  globals=gras_userdata_new(server_data_t*);
-  globals->killed=0;
+  gras_init(&argc, argv);
+
+  globals = gras_userdata_new(server_data_t *);
+  globals->killed = 0;
 
   gras_msgtype_declare("hello", NULL);
   gras_msgtype_declare("kill", NULL);
   mysock = gras_socket_server(atoi(argv[1]));
-   
-  gras_cb_register("hello",&server_hello_cb);   
-  gras_cb_register("kill",&server_kill_cb);
+
+  gras_cb_register("hello", &server_hello_cb);
+  gras_cb_register("kill", &server_kill_cb);
 
   while (!globals->killed) {
-     gras_msg_handle(60);
+    gras_msg_handle(60);
   }
-    
+
   gras_exit();
   return 0;
 }
@@ -61,59 +64,61 @@ int server(int argc, char *argv[]) {
 /* *********************** Client *********************** */
 /* client_data */
 typedef struct {
-   gras_socket_t toserver;
-   int done;
+  gras_socket_t toserver;
+  int done;
 } client_data_t;
 
-void client_do_hello(void) {
-  client_data_t *globals=(client_data_t*)gras_userdata_get();
-   
-  gras_msg_send(globals->toserver,"hello", NULL);
+
+void client_do_hello(void)
+{
+  client_data_t *globals = (client_data_t *) gras_userdata_get();
+
+  gras_msg_send(globals->toserver, "hello", NULL);
   INFO0("Hello sent to server");
-} /* end_of_client_do_hello */
+}                               /* end_of_client_do_hello */
+
+void client_do_stop(void)
+{
+  client_data_t *globals = (client_data_t *) gras_userdata_get();
 
-void client_do_stop(void) {
-  client_data_t *globals=(client_data_t*)gras_userdata_get();
-   
-  gras_msg_send(globals->toserver,"kill", NULL);
+  gras_msg_send(globals->toserver, "kill", NULL);
   INFO0("Kill sent to server");
-   
-  gras_timer_cancel_repeat(0.5,client_do_hello);
+
+  gras_timer_cancel_repeat(0.5, client_do_hello);
+
   globals->done = 1;
   INFO0("Break the client's while loop");
-} /* end_of_client_do_stop */
+}                               /* end_of_client_do_stop */
 
-int client(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
+int client(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
   client_data_t *globals;
 
-  gras_init(&argc,argv);
+  gras_init(&argc, argv);
 
   gras_msgtype_declare("hello", NULL);
   gras_msgtype_declare("kill", NULL);
   mysock = gras_socket_server_range(1024, 10000, 0, 0);
-  
+
   VERB1("Client ready; listening on %d", gras_socket_my_port(mysock));
-  
-  globals=gras_userdata_new(client_data_t*);
+
+  globals = gras_userdata_new(client_data_t *);
   globals->done = 0;
-  
-  gras_os_sleep(1.5); /* sleep 1 second and half */
+
+  gras_os_sleep(1.5);           /* sleep 1 second and half */
   globals->toserver = gras_socket_client(argv[1], atoi(argv[2]));
-   
+
   INFO0("Programming the repetitive action with a frequency of 0.5 sec");
-  gras_timer_repeat(0.5,client_do_hello);
-  
+  gras_timer_repeat(0.5, client_do_hello);
+
   INFO0("Programming the delayed action in 5 secs");
-  gras_timer_delay(5,client_do_stop);
-  
+  gras_timer_delay(5, client_do_stop);
+
   while (!globals->done) {
-     gras_msg_handle(60);
+    gras_msg_handle(60);
   }
 
   gras_exit();
   return 0;
 }
-
index 6b90168..19d663e 100644 (file)
@@ -6,86 +6,93 @@
 
 #include <gras.h>
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(test,"My little example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(test, "My little example");
 
 typedef struct {
-   int killed;
+  int killed;
 } server_data_t;
-   
 
-int server_kill_cb(gras_msg_cb_ctx_t ctx, void *payload) {
+
+int server_kill_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
   gras_socket_t client = gras_msg_cb_ctx_from(ctx);
-  server_data_t *globals=(server_data_t*)gras_userdata_get();
-   
+  server_data_t *globals = (server_data_t *) gras_userdata_get();
+
   CRITICAL2("Argh, killed by %s:%d! Bye folks, I'm out of here...",
-       gras_socket_peer_name(client), gras_socket_peer_port(client));
-  
+            gras_socket_peer_name(client), gras_socket_peer_port(client));
+
   globals->killed = 1;
-   
+
   return 0;
-} /* end_of_kill_callback */
+}                               /* end_of_kill_callback */
 
-int server(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
+int server(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
   server_data_t *globals;
-  
-  gras_init(&argc,argv);
 
-  globals=gras_userdata_new(server_data_t*);
-  globals->killed=0;
+  gras_init(&argc, argv);
+
+  globals = gras_userdata_new(server_data_t *);
+  globals->killed = 0;
 
   gras_msgtype_declare("kill", NULL);
-  gras_cb_register("kill",&server_kill_cb);
-   
-  if (argc>1 && !strcmp(argv[1],"--cheat")) {
-     mysock = gras_socket_server(9999);
-     INFO0("Hi! hi! I'm not in the search range, but in 9999...");
+  gras_cb_register("kill", &server_kill_cb);
+
+  if (argc > 1 && !strcmp(argv[1], "--cheat")) {
+    mysock = gras_socket_server(9999);
+    INFO0("Hi! hi! I'm not in the search range, but in 9999...");
   } else {
-     mysock = gras_socket_server((rand() % 10) + 3000);   
-     INFO1("Ok, I'm hidden on port %d. Hope for the best.", gras_socket_my_port(mysock));
-  } 
-   
+    mysock = gras_socket_server((rand() % 10) + 3000);
+    INFO1("Ok, I'm hidden on port %d. Hope for the best.",
+          gras_socket_my_port(mysock));
+  }
+
   while (!globals->killed) {
-     gras_msg_handle(-1); /* blocking */
+    gras_msg_handle(-1);        /* blocking */
   }
-    
+
   gras_exit();
   return 0;
 }
 
-int client(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
-  gras_socket_t toserver; /* socket used to write to the server */
-  int found;              /* whether we found peer */
-  int port;               /* where we think that the server is */
+int client(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
+  gras_socket_t toserver;       /* socket used to write to the server */
+  int found;                    /* whether we found peer */
+  int port;                     /* where we think that the server is */
   xbt_ex_t e;
 
-  gras_init(&argc,argv);
+  gras_init(&argc, argv);
 
   gras_msgtype_declare("kill", NULL);
   mysock = gras_socket_server_range(1024, 10000, 0, 0);
-  
+
   VERB0("Run little server, run. I'll get you. (sleep 1.5 sec)");
   gras_os_sleep(1.5);
-   
-  for (port=3000, found=0; port<3010 && !found; port++) {
-     TRY {
-       toserver = gras_socket_client(argv[1], port);
-       gras_msg_send(toserver,"kill", NULL);
-       gras_socket_close(toserver);
-       found = 1;
-       INFO1("Yeah! I found the server on %d! It's eradicated by now.",port);
-     } CATCH(e) {
-       xbt_ex_free(e);
-     }
-     if (!found)
-       INFO1("Damn, the server is not on %d",port);
-  } /* end_of_loop */
-   
-  if(!found) 
-     THROW0(not_found_error, 0, "Damn, I failed to find the server! I cannot survive this humilliation.");
-  
-     
+
+  for (port = 3000, found = 0; port < 3010 && !found; port++) {
+    TRY {
+      toserver = gras_socket_client(argv[1], port);
+      gras_msg_send(toserver, "kill", NULL);
+      gras_socket_close(toserver);
+      found = 1;
+      INFO1("Yeah! I found the server on %d! It's eradicated by now.",
+            port);
+    }
+    CATCH(e) {
+      xbt_ex_free(e);
+    }
+    if (!found)
+      INFO1("Damn, the server is not on %d", port);
+  }                             /* end_of_loop */
+
+  if (!found)
+    THROW0(not_found_error, 0,
+           "Damn, I failed to find the server! I cannot survive this humilliation.");
+
+
   gras_exit();
   return 0;
 }
index 3d871a3..8124064 100644 (file)
 extern const char *_gras_procname;
 
 /* This is a private data of gras/Datadesc we want to explore */
-xbt_set_t gras_datadesc_set_local=NULL;
+xbt_set_t gras_datadesc_set_local = NULL;
 
-int main(int argc, char *argv[]) {
+int main(int argc, char *argv[])
+{
   xbt_set_elm_t elm;
   xbt_set_cursor_t cursor;
-  gras_init(&argc,argv);
-   
+  gras_init(&argc, argv);
+
   xbt_set_foreach(gras_datadesc_set_local, cursor, elm) {
-     printf("%s\n",elm->name);
+    printf("%s\n", elm->name);
   }
-   
-   
+
+
   gras_exit();
   return 0;
 }
index 7ba96df..a170ee4 100644 (file)
@@ -6,91 +6,97 @@
 
 #include <gras.h>
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(test,"My little example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(test, "My little example");
 
 typedef struct {
-   int killed;
+  int killed;
 } server_data_t;
-   
 
-int server_kill_cb(gras_msg_cb_ctx_t ctx, void *payload) {
-  double delay = *(double*)payload;
+
+int server_kill_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
+  double delay = *(double *) payload;
   gras_socket_t client = gras_msg_cb_ctx_from(ctx);
-  server_data_t *globals=(server_data_t*)gras_userdata_get();
-   
+  server_data_t *globals = (server_data_t *) gras_userdata_get();
+
   CRITICAL3("Argh, %s:%d gave me %.2f seconds before suicide!",
-       gras_socket_peer_name(client), gras_socket_peer_port(client),delay);
+            gras_socket_peer_name(client), gras_socket_peer_port(client),
+            delay);
   gras_os_sleep(delay);
   CRITICAL0("Bye folks...");
-   
-   
+
+
   globals->killed = 1;
-   
+
   return 0;
-} /* end_of_kill_callback */
+}                               /* end_of_kill_callback */
 
-int server_hello_cb(gras_msg_cb_ctx_t ctx, void *payload) {
-  char *msg=*(char**)payload;
+int server_hello_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
+  char *msg = *(char **) payload;
   gras_socket_t client = gras_msg_cb_ctx_from(ctx);
 
   INFO3("Cool, we received a message from %s:%d. Here it is: \"%s\"",
-       gras_socket_peer_name(client), gras_socket_peer_port(client),
-       msg);
-  
+        gras_socket_peer_name(client), gras_socket_peer_port(client), msg);
+
   return 0;
-} /* end_of_hello_callback */
+}                               /* end_of_hello_callback */
 
-void message_declaration(void) {
+void message_declaration(void)
+{
   gras_msgtype_declare("kill", gras_datadesc_by_name("double"));
   gras_msgtype_declare("hello", gras_datadesc_by_name("string"));
 }
 
 
-int server(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
+int server(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
   server_data_t *globals;
-  
-  gras_init(&argc,argv);
 
-  globals=gras_userdata_new(server_data_t*);
-  globals->killed=0;
+  gras_init(&argc, argv);
+
+  globals = gras_userdata_new(server_data_t *);
+  globals->killed = 0;
 
   message_declaration();
   mysock = gras_socket_server(atoi(argv[1]));
-   
-  gras_cb_register("hello",&server_hello_cb);   
-  gras_cb_register("kill",&server_kill_cb);
+
+  gras_cb_register("hello", &server_hello_cb);
+  gras_cb_register("kill", &server_kill_cb);
 
   while (!globals->killed) {
-     gras_msg_handle(-1); /* blocking */
+    gras_msg_handle(-1);        /* blocking */
   }
-    
+
   gras_exit();
   return 0;
 }
 
-int client(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
-  gras_socket_t toserver; /* socket used to write to the server */
+int client(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
+  gras_socket_t toserver;       /* socket used to write to the server */
 
-  gras_init(&argc,argv);
+  gras_init(&argc, argv);
 
   message_declaration();
   mysock = gras_socket_server_range(1024, 10000, 0, 0);
-  
+
   VERB1("Client ready; listening on %d", gras_socket_my_port(mysock));
-  
-  gras_os_sleep(1.5); /* sleep 1 second and half */
+
+  gras_os_sleep(1.5);           /* sleep 1 second and half */
   toserver = gras_socket_client(argv[1], atoi(argv[2]));
-  
-  char *hello_payload="Nice to meet you";
-  gras_msg_send(toserver,"hello", &hello_payload);
-  INFO1("we sent the hello to the server on %s.", gras_socket_peer_name(toserver));
-   
-  double kill_payload=0.5;
-  gras_msg_send(toserver,"kill", &kill_payload);
+
+  char *hello_payload = "Nice to meet you";
+  gras_msg_send(toserver, "hello", &hello_payload);
+  INFO1("we sent the hello to the server on %s.",
+        gras_socket_peer_name(toserver));
+
+  double kill_payload = 0.5;
+  gras_msg_send(toserver, "kill", &kill_payload);
   INFO0("Gave the server more 0.5 second to live");
-   
+
   gras_exit();
   return 0;
 }
index 1e8e64d..9cc423a 100644 (file)
 #include <stdlib.h>
 #include <gras.h>
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(test,"My little example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(test, "My little example");
 
 typedef struct {
-   int done;
+  int done;
 } server_data_t;
-int server_done_cb(gras_msg_cb_ctx_t ctx, void *payload) {
-  server_data_t *globals=(server_data_t*)gras_userdata_get();
+int server_done_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
+  server_data_t *globals = (server_data_t *) gras_userdata_get();
   globals->done = 1;
   INFO0("Server done");
-   
+
   return 0;
-} /* end_of_done_callback */
+}                               /* end_of_done_callback */
+
+void message_declaration(void)
+{
+  gras_msgtype_declare_rpc("convert a2i", gras_datadesc_by_name("string"),
+                           gras_datadesc_by_name("long"));
+  gras_msgtype_declare_rpc("convert i2a", gras_datadesc_by_name("long"),
+                           gras_datadesc_by_name("string"));
 
-void message_declaration(void) {
-  gras_msgtype_declare_rpc("convert a2i", gras_datadesc_by_name("string"), gras_datadesc_by_name("long"));
-  gras_msgtype_declare_rpc("convert i2a", gras_datadesc_by_name("long"), gras_datadesc_by_name("string"));
   /* the other message allowing the client to stop the server after use */
-  gras_msgtype_declare("done", NULL); 
+  gras_msgtype_declare("done", NULL);
 }
 
-int server_convert_i2a_cb(gras_msg_cb_ctx_t ctx, void *payload) {
-  long data = *(long*)payload;
+int server_convert_i2a_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
+  long data = *(long *) payload;
   char *result;
   char *p;
 
-  INFO1("Convert %ld to string",data);  
-  result = bprintf("%ld", data);   
-  INFO2("%ld converted to string: %s",data,result);
-   
-  gras_msg_rpcreturn(60,ctx,&result);
+  INFO1("Convert %ld to string", data);
+  result = bprintf("%ld", data);
+  INFO2("%ld converted to string: %s", data, result);
+
+  gras_msg_rpcreturn(60, ctx, &result);
   free(result);
   return 0;
-} /* end_of_convert_callback */
+}                               /* end_of_convert_callback */
 
-int server_convert_a2i_cb(gras_msg_cb_ctx_t ctx, void *payload) {
-  char *string = *(char**)payload;
+int server_convert_a2i_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
+  char *string = *(char **) payload;
   long result;
   char *p;
 
-  INFO1("Convert %s to long",string);
+  INFO1("Convert %s to long", string);
   result = strtol(string, &p, 10);
-   
+
   if (*p != '\0')
-     THROW2(arg_error,0,"Error while converting %s: this does not seem to be a valid number (problem at '%s')",string,p);
-             
-  gras_msg_rpcreturn(60,ctx,&result);
+    THROW2(arg_error, 0,
+           "Error while converting %s: this does not seem to be a valid number (problem at '%s')",
+           string, p);
+
+  gras_msg_rpcreturn(60, ctx, &result);
   return 0;
-} /* end_of_convert_callback */
+}                               /* end_of_convert_callback */
 
 
-int server(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
+int server(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
   server_data_t *globals;
-  
-  gras_init(&argc,argv);
 
-  globals=gras_userdata_new(server_data_t*);
-  globals->done=0;
+  gras_init(&argc, argv);
+
+  globals = gras_userdata_new(server_data_t *);
+  globals->done = 0;
 
   message_declaration();
   mysock = gras_socket_server(atoi(argv[1]));
-   
-  gras_cb_register("convert a2i",&server_convert_a2i_cb);
-  gras_cb_register("convert i2a",&server_convert_i2a_cb);
-  gras_cb_register("done",&server_done_cb);
+
+  gras_cb_register("convert a2i", &server_convert_a2i_cb);
+  gras_cb_register("convert i2a", &server_convert_i2a_cb);
+  gras_cb_register("done", &server_done_cb);
 
   while (!globals->done) {
-     gras_msg_handle(-1); /* blocking */
+    gras_msg_handle(-1);        /* blocking */
   }
-    
+
   gras_exit();
   return 0;
 }
 
-int client(int argc, char *argv[]) {
-  gras_socket_t mysock;   /* socket on which I listen */
-  gras_socket_t toserver; /* socket used to write to the server */
+int client(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
+  gras_socket_t toserver;       /* socket used to write to the server */
 
-  gras_init(&argc,argv);
+  gras_init(&argc, argv);
 
   message_declaration();
   mysock = gras_socket_server_range(1024, 10000, 0, 0);
-  
+
   VERB1("Client ready; listening on %d", gras_socket_my_port(mysock));
-  
-  gras_os_sleep(1.5); /* sleep 1 second and half */
+
+  gras_os_sleep(1.5);           /* sleep 1 second and half */
   toserver = gras_socket_client(argv[1], atoi(argv[2]));
-  
-  long long_to_convert=4321;
+
+  long long_to_convert = 4321;
   char *string_result;
   INFO1("Ask to convert %ld", long_to_convert);
-  gras_msg_rpccall(toserver, 60, "convert i2a", &long_to_convert, &string_result);
-  INFO2("The server says that %ld is equal to \"%s\".", long_to_convert, string_result);
+  gras_msg_rpccall(toserver, 60, "convert i2a", &long_to_convert,
+                   &string_result);
+  INFO2("The server says that %ld is equal to \"%s\".", long_to_convert,
+        string_result);
   free(string_result);
-   
-  char *string_to_convert="1234";
+
+  char *string_to_convert = "1234";
   long long_result;
   INFO1("Ask to convert %s", string_to_convert);
-  gras_msg_rpccall(toserver, 60, "convert a2i", &string_to_convert, &long_result);
-  INFO2("The server says that \"%s\" is equal to %d.", string_to_convert, long_result);
-   
+  gras_msg_rpccall(toserver, 60, "convert a2i", &string_to_convert,
+                   &long_result);
+  INFO2("The server says that \"%s\" is equal to %d.", string_to_convert,
+        long_result);
+
   xbt_ex_t e;
   string_to_convert = "azerty";
   TRY {
-     gras_msg_rpccall(toserver, 60, "convert a2i", &string_to_convert, &long_result);
+    gras_msg_rpccall(toserver, 60, "convert a2i", &string_to_convert,
+                     &long_result);
   } CATCH(e) {
-     INFO1("The server refuses to convert %s. Here is the received exception:",string_to_convert);
-     xbt_ex_display(&e);
-     xbt_ex_free(e);
-     INFO0("Again, previous exception was excepted");
-  }            
-   
-  gras_msg_send(toserver,"done", NULL);
+    INFO1
+        ("The server refuses to convert %s. Here is the received exception:",
+         string_to_convert);
+    xbt_ex_display(&e);
+    xbt_ex_free(e);
+    INFO0("Again, previous exception was excepted");
+  }
+
+  gras_msg_send(toserver, "done", NULL);
   INFO0("Stopped the server");
-   
+
   gras_exit();
   return 0;
 }
index 05146d3..4923f8d 100644 (file)
 #include <stdlib.h>
 #include <gras.h>
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(test,"My little example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(test, "My little example");
 
-void message_declaration(void) {
+void message_declaration(void)
+{
   gras_msgtype_declare("request", NULL);
   gras_msgtype_declare("grant", NULL);
   gras_msgtype_declare("release", NULL);
 }
 
 typedef struct {
-   int process_in_CS;
-   xbt_dynar_t waiting_queue;
+  int process_in_CS;
+  xbt_dynar_t waiting_queue;
 } server_data_t;
 
-int server_request_cb(gras_msg_cb_ctx_t ctx, void *payload) {
-  server_data_t *globals=(server_data_t*)gras_userdata_get();
+int server_request_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
+  server_data_t *globals = (server_data_t *) gras_userdata_get();
   gras_socket_t s = gras_msg_cb_ctx_from(ctx);
+
   if (globals->process_in_CS) {
-     xbt_dynar_push(globals->waiting_queue, &s);
-     INFO2("put %s:%d in waiting queue",gras_socket_peer_name(s),gras_socket_peer_port(s));
-  } else {     
-     globals->process_in_CS = 1;
-     INFO2("grant %s:%d since nobody wanted it",gras_socket_peer_name(s),gras_socket_peer_port(s));
-     gras_msg_send(s, "grant", NULL);     
+    xbt_dynar_push(globals->waiting_queue, &s);
+    INFO2("put %s:%d in waiting queue", gras_socket_peer_name(s),
+          gras_socket_peer_port(s));
+  } else {
+    globals->process_in_CS = 1;
+    INFO2("grant %s:%d since nobody wanted it", gras_socket_peer_name(s),
+          gras_socket_peer_port(s));
+    gras_msg_send(s, "grant", NULL);
   }
   return 0;
-} /* end_of_request_callback */
+}                               /* end_of_request_callback */
+
+int server_release_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
+  server_data_t *globals = (server_data_t *) gras_userdata_get();
 
-int server_release_cb(gras_msg_cb_ctx_t ctx, void *payload) {
-  server_data_t *globals=(server_data_t*)gras_userdata_get();
-   
   if (xbt_dynar_length(globals->waiting_queue)) {
-     gras_socket_t s;
-     xbt_dynar_pop(globals->waiting_queue, &s);
-     
-     INFO2("grant %s:%d since token released",gras_socket_peer_name(s),gras_socket_peer_port(s));
-     gras_msg_send(s, "grant", NULL);
+    gras_socket_t s;
+    xbt_dynar_pop(globals->waiting_queue, &s);
+
+    INFO2("grant %s:%d since token released", gras_socket_peer_name(s),
+          gras_socket_peer_port(s));
+    gras_msg_send(s, "grant", NULL);
   } else {
-     globals->process_in_CS = 0;
+    globals->process_in_CS = 0;
   }
-   
+
   return 0;
-} /* end_of_release_callback */
+}                               /* end_of_release_callback */
 
-int server(int argc, char *argv[]) { 
-  gras_socket_t mysock;   /* socket on which I listen */
+int server(int argc, char *argv[])
+{
+  gras_socket_t mysock;         /* socket on which I listen */
   server_data_t *globals;
   int i;
-  
-  gras_init(&argc,argv);
+
+  gras_init(&argc, argv);
   mysock = gras_socket_server(atoi(argv[1]));
 
-  globals=gras_userdata_new(server_data_t);
-  globals->process_in_CS=0;
-  globals->waiting_queue=xbt_dynar_new( sizeof(gras_socket_t), NULL /* not closing sockets */);
+  globals = gras_userdata_new(server_data_t);
+  globals->process_in_CS = 0;
+  globals->waiting_queue =
+      xbt_dynar_new(sizeof(gras_socket_t),
+                    NULL /* not closing sockets */ );
 
-  message_declaration();   
-  gras_cb_register("request",&server_request_cb);
-  gras_cb_register("release",&server_release_cb);
+  message_declaration();
+  gras_cb_register("request", &server_request_cb);
+  gras_cb_register("release", &server_release_cb);
+
+  for (i = 0; i < 20; i++)      /* 5 requests of each process, 2 processes, 2 messages per request */
+    gras_msg_handle(-1);
 
-  for (i=0; i<20; i++)  /* 5 requests of each process, 2 processes, 2 messages per request */
-    gras_msg_handle(-1); 
-    
   gras_exit();
   return 0;
-} /* end_of_server */
-
-void lock(gras_socket_t toserver) {
-   gras_msg_send(toserver,"request",NULL);
-   gras_msg_wait(-1, "grant",NULL,NULL);
-   INFO0("Granted by server");
-} /* end_of_lock */
-
-void unlock(gras_socket_t toserver) {
-   INFO0("Release the token");
-   gras_msg_send(toserver,"release",NULL);
-} /* end_of_unlock */
-
-int client(int argc, char *argv[]) {
+}                               /* end_of_server */
+
+void lock(gras_socket_t toserver)
+{
+  gras_msg_send(toserver, "request", NULL);
+  gras_msg_wait(-1, "grant", NULL, NULL);
+  INFO0("Granted by server");
+}                               /* end_of_lock */
+
+void unlock(gras_socket_t toserver)
+{
+  INFO0("Release the token");
+  gras_msg_send(toserver, "release", NULL);
+}                               /* end_of_unlock */
+
+int client(int argc, char *argv[])
+{
   int i;
-  gras_socket_t mysock;   /* socket on which I listen */
-  gras_socket_t toserver; /* socket used to write to the server */
+  gras_socket_t mysock;         /* socket on which I listen */
+  gras_socket_t toserver;       /* socket used to write to the server */
 
-  gras_init(&argc,argv);
+  gras_init(&argc, argv);
 
   mysock = gras_socket_server_range(1024, 10000, 0, 0);
-  
+
   VERB1("Client ready; listening on %d", gras_socket_my_port(mysock));
-  
-  gras_os_sleep(1.5); /* sleep 1 second and half */
+
+  gras_os_sleep(1.5);           /* sleep 1 second and half */
   message_declaration();
   toserver = gras_socket_client(argv[1], atoi(argv[2]));
 
-  for (i=0;i<5; i++) {
-     gras_os_sleep(0.1);
-     lock(toserver);
-     gras_os_sleep(0.1);
-     unlock(toserver);
+  for (i = 0; i < 5; i++) {
+    gras_os_sleep(0.1);
+    lock(toserver);
+    gras_os_sleep(0.1);
+    unlock(toserver);
   }
   gras_exit();
   return 0;
index 720318f..9bcb87f 100644 (file)
@@ -14,7 +14,7 @@
 
 #include <gras.h>
 
-#include <tbx_graph.h> /* alvin's graph toolbox (+ reconstruction algorithm) */
+#include <tbx_graph.h>          /* alvin's graph toolbox (+ reconstruction algorithm) */
 
 /* **********************************************************************
  * Sensor code
@@ -26,14 +26,17 @@ typedef struct {
 } sensor_data_t;
 
 /* Function prototypes */
-int sensor (int argc,char *argv[]);
+int sensor(int argc, char *argv[]);
 
-int sensor (int argc,char *argv[]) {
+int sensor(int argc, char *argv[])
+{
   xbt_error_t errcode;
-  sensor_data_t *g=gras_userdata_new(sensor_data_t);  
+  sensor_data_t *g = gras_userdata_new(sensor_data_t);
 
-  if ((errcode=gras_sock_server_open(4000,4000,&(g->sock)))) { 
-    fprintf(stderr,"Sensor: Error %s encountered while opening the server socket\n",xbt_error_name(errcode));
+  if ((errcode = gras_sock_server_open(4000, 4000, &(g->sock)))) {
+    fprintf(stderr,
+            "Sensor: Error %s encountered while opening the server socket\n",
+            xbt_error_name(errcode));
     return 1;
   }
 
@@ -43,13 +46,13 @@ int sensor (int argc,char *argv[]) {
   }
 
   while (1) {
-    if ((errcode=gras_msg_handle(3600.0)) && errcode != timeout_error) {
-      fprintf(stderr,"Sensor: Error '%s' while handling message\n",
-             xbt_error_name(errcode));
+    if ((errcode = gras_msg_handle(3600.0)) && errcode != timeout_error) {
+      fprintf(stderr, "Sensor: Error '%s' while handling message\n",
+              xbt_error_name(errcode));
     }
   }
 
-  gras_sleep(5,0);
+  gras_sleep(5, 0);
   return gras_sock_close(g->sock);
 }
 
@@ -63,7 +66,7 @@ typedef struct {
 } maestro_data_t;
 
 /* Function prototypes */
-int maestro (int argc,char *argv[]);
+int maestro(int argc, char *argv[]);
 
 #define MAXHOSTS 100
 
@@ -73,33 +76,38 @@ int maestro (int argc,char *argv[]);
                                                 TBX_Graph_nodeSearch(graph,b),\
                                                 TBX_Graph_nodeSearch(graph,v))
 
-int maestro(int argc,char *argv[]) {
-  int bufSize=32 * 1024;
-  int expSize= 1024 * 1024;
-  int msgSize=expSize;
-  int satSize=msgSize * 100;
-  double dummy,beginSim;
+int maestro(int argc, char *argv[])
+{
+  int bufSize = 32 * 1024;
+  int expSize = 1024 * 1024;
+  int msgSize = expSize;
+  int satSize = msgSize * 100;
+  double dummy, beginSim;
   xbt_error_t errcode;
-  maestro_data_t *g=gras_userdata_new(maestro_data_t);
+  maestro_data_t *g = gras_userdata_new(maestro_data_t);
 
   double bw[MAXHOSTS][MAXHOSTS];
   double bw_sat[MAXHOSTS][MAXHOSTS];
 
-  int a,b,c,d,begin;
+  int a, b, c, d, begin;
 
-  TBX_Graph_t graph = TBX_Graph_newGraph("Essai",0,NULL); /* a dummy graph containing all hosts */
+  TBX_Graph_t graph = TBX_Graph_newGraph("Essai", 0, NULL);     /* a dummy graph containing all hosts */
   TBX_FIFO_t host_fifo = TBX_FIFO_newFIFO();
-  TBX_InterfTable_t interf = NULL; /* the measured interferences */
-  TBX_Graph_t builded_graph = NULL; /* the graph builded from the interferences */
+  TBX_InterfTable_t interf = NULL;      /* the measured interferences */
+  TBX_Graph_t builded_graph = NULL;     /* the graph builded from the interferences */
 
   /* basics setups */
-  if (argc>MAXHOSTS) {
-    fprintf(stderr,"You gave more than %d sensors for this experiment. Increase the MAX HOSTS constant in alnem code to be bigger than this number.\n",argc);
+  if (argc > MAXHOSTS) {
+    fprintf(stderr,
+            "You gave more than %d sensors for this experiment. Increase the MAX HOSTS constant in alnem code to be bigger than this number.\n",
+            argc);
     return 1;
   }
 
-  if ((errcode=gras_sock_server_open(4000,5000,&(g->sock)))) { 
-    fprintf(stderr,"MAESTRO: Error %s encountered while opening the server socket\n",xbt_error_name(errcode));
+  if ((errcode = gras_sock_server_open(4000, 5000, &(g->sock)))) {
+    fprintf(stderr,
+            "MAESTRO: Error %s encountered while opening the server socket\n",
+            xbt_error_name(errcode));
     return 1;
   }
 
@@ -108,109 +116,125 @@ int maestro(int argc,char *argv[]) {
     return 1;
   }
 
-  for (a=1; a<argc; a++) {
-    TBX_FIFO_insert(host_fifo,TBX_Graph_newNode(graph,argv[a], NULL));
+  for (a = 1; a < argc; a++) {
+    TBX_FIFO_insert(host_fifo, TBX_Graph_newNode(graph, argv[a], NULL));
   }
   TBX_Graph_fixNodeNumbering(graph);
-  interf=TBX_Graph_newInterfTable(host_fifo);
-  TBX_Graph_graphInterfTableInit(graph,interf);
+  interf = TBX_Graph_newInterfTable(host_fifo);
+  TBX_Graph_graphInterfTableInit(graph, interf);
 
   /* measure the bandwidths */
-  begin=time(NULL);
-  beginSim=gras_time();
-  for (a=1; a<argc; a++) {
-    for (b=1; b<argc; b++) {
-      int test=0;
-       
-      if (a==b) continue;
-      fprintf(stderr,"BW XP(%s %s)=",argv[a],argv[b]); 
-      while ((errcode=grasbw_request(argv[a],4000,argv[b],4000,bufSize,expSize,msgSize,
-                                 &dummy,&(bw[a][b]))) && (errcode == timeout_error)) {
-        test++;
-        if (test==10) {
-           fprintf(stderr,"MAESTRO: 10 Timeouts; giving up\n");
-           return 1;
-        }
+  begin = time(NULL);
+  beginSim = gras_time();
+  for (a = 1; a < argc; a++) {
+    for (b = 1; b < argc; b++) {
+      int test = 0;
+
+      if (a == b)
+        continue;
+      fprintf(stderr, "BW XP(%s %s)=", argv[a], argv[b]);
+      while ((errcode =
+              grasbw_request(argv[a], 4000, argv[b], 4000, bufSize,
+                             expSize, msgSize, &dummy, &(bw[a][b])))
+             && (errcode == timeout_error)) {
+        test++;
+        if (test == 10) {
+          fprintf(stderr, "MAESTRO: 10 Timeouts; giving up\n");
+          return 1;
+        }
       }
       if (errcode) {
-       fprintf(stderr,"MAESTRO: Error %s encountered while doing the test\n",xbt_error_name(errcode));
-       return 1;
+        fprintf(stderr,
+                "MAESTRO: Error %s encountered while doing the test\n",
+                xbt_error_name(errcode));
+        return 1;
       }
-      fprintf(stderr,"%f Mb/s in %f sec\n",bw[a][b],dummy);
+      fprintf(stderr, "%f Mb/s in %f sec\n", bw[a][b], dummy);
     }
   }
-  fprintf(stderr,"Did all BW tests in %ld sec (%.2f simulated sec)\n",
-         time(NULL)-begin,gras_time()-beginSim);
-      
+  fprintf(stderr, "Did all BW tests in %ld sec (%.2f simulated sec)\n",
+          time(NULL) - begin, gras_time() - beginSim);
+
   /* saturation tests */
-  for (a=1; a<argc; a++) {
-    for (b=1; b<argc; b++) {
-      for (c=1 ;c<argc; c++) {
-       INTERF(graph,interf,argv[a],argv[c],argv[b],argv[c])= 1;
+  for (a = 1; a < argc; a++) {
+    for (b = 1; b < argc; b++) {
+      for (c = 1; c < argc; c++) {
+        INTERF(graph, interf, argv[a], argv[c], argv[b], argv[c]) = 1;
       }
     }
   }
-         
-  for (a=1; a<argc; a++) {
-    for (b=1; b<argc; b++) {
-      if (a==b) continue;
-       
-      if ((errcode=grasbw_saturate_start(argv[a],4000,argv[b],4000,satSize,360000000))) {
-       fprintf(stderr,"MAESTRO: Error %s encountered while starting saturation\n",
-               xbt_error_name(errcode));
-       return -1;
+
+  for (a = 1; a < argc; a++) {
+    for (b = 1; b < argc; b++) {
+      if (a == b)
+        continue;
+
+      if ((errcode =
+           grasbw_saturate_start(argv[a], 4000, argv[b], 4000, satSize,
+                                 360000000))) {
+        fprintf(stderr,
+                "MAESTRO: Error %s encountered while starting saturation\n",
+                xbt_error_name(errcode));
+        return -1;
       }
-      gras_sleep(1,0);
-
-      begin=time(NULL);
-      beginSim=gras_time();
-      for (c=1 ;c<argc; c++) {
-       if (a==c || b==c) continue;
-
-       for (d=1 ;d<argc; d++) {
-         if (a==d || b==d || c==d) continue;
-         
-         if ((errcode=grasbw_request(argv[c],4000,argv[d],4000,bufSize,expSize,msgSize,
-                                     &dummy,&(bw_sat[c][d])))) {
-           fprintf(stderr,"MAESTRO: Error %s encountered in test\n",xbt_error_name(errcode));
-           return 1;
-         }
-         fprintf(stderr, "MAESTRO[%.2f sec]: SATURATED BW XP(%s %s // %s %s) => %f (%f vs %f)%s\n",
-                 gras_time(),
-                 argv[c],argv[d],argv[a],argv[b],
-                 bw_sat[c][d]/bw[c][d],bw[c][d],bw_sat[c][d],
-
-                 (bw_sat[c][d]/bw[c][d] < 0.75) ? " THERE IS SOME INTERFERENCE !!!":"");
-         INTERF(graph,interf,argv[c],argv[d],argv[a],argv[b])= 
-           (bw_sat[c][d]/bw[c][d] < 0.75) ? 1 : 0;
-       }
+      gras_sleep(1, 0);
+
+      begin = time(NULL);
+      beginSim = gras_time();
+      for (c = 1; c < argc; c++) {
+        if (a == c || b == c)
+          continue;
+
+        for (d = 1; d < argc; d++) {
+          if (a == d || b == d || c == d)
+            continue;
+
+          if ((errcode =
+               grasbw_request(argv[c], 4000, argv[d], 4000, bufSize,
+                              expSize, msgSize, &dummy,
+                              &(bw_sat[c][d])))) {
+            fprintf(stderr, "MAESTRO: Error %s encountered in test\n",
+                    xbt_error_name(errcode));
+            return 1;
+          }
+          fprintf(stderr,
+                  "MAESTRO[%.2f sec]: SATURATED BW XP(%s %s // %s %s) => %f (%f vs %f)%s\n",
+                  gras_time(), argv[c], argv[d], argv[a], argv[b],
+                  bw_sat[c][d] / bw[c][d], bw[c][d], bw_sat[c][d],
+                  (bw_sat[c][d] / bw[c][d] <
+                   0.75) ? " THERE IS SOME INTERFERENCE !!!" : "");
+          INTERF(graph, interf, argv[c], argv[d], argv[a], argv[b]) =
+              (bw_sat[c][d] / bw[c][d] < 0.75) ? 1 : 0;
+        }
       }
 
-      if ((errcode=grasbw_saturate_stop(argv[a],4000,argv[b],4000))) {
-       fprintf(stderr,"MAESTRO: Error %s encountered while stopping saturation\n",
-               xbt_error_name(errcode));
-       return -1;
+      if ((errcode = grasbw_saturate_stop(argv[a], 4000, argv[b], 4000))) {
+        fprintf(stderr,
+                "MAESTRO: Error %s encountered while stopping saturation\n",
+                xbt_error_name(errcode));
+        return -1;
       }
-      fprintf(stderr,"Did an iteration on saturation pair in %ld sec (%.2f simulated sec)\n",
-             time(NULL)-begin, gras_time()-beginSim);
+      fprintf(stderr,
+              "Did an iteration on saturation pair in %ld sec (%.2f simulated sec)\n",
+              time(NULL) - begin, gras_time() - beginSim);
     }
   }
 
   /* reconstruct the graph */
   TBX_Graph_interferenceTableDump(interf);
-  TBX_Graph_interferenceTableSave(interf,"interference.dat");
-  begin=time(NULL);
+  TBX_Graph_interferenceTableSave(interf, "interference.dat");
+  begin = time(NULL);
   fprintf(stderr, "MAESTRO: Reconstruct the graph... ");
   builded_graph = TBX_Graph_exploreInterference(interf);
   TBX_Graph_exportToGraphViz(builded_graph, "toto.dot");
-  fprintf(stderr, "done (took %d sec)",(int)time(NULL));
+  fprintf(stderr, "done (took %d sec)", (int) time(NULL));
 
   /* end */
-  TBX_Graph_freeGraph(graph,NULL,NULL,NULL);
-  TBX_Graph_freeGraph(builded_graph,NULL,NULL,NULL);
+  TBX_Graph_freeGraph(graph, NULL, NULL, NULL);
+  TBX_Graph_freeGraph(builded_graph, NULL, NULL, NULL);
   TBX_Graph_freeInterfTable(interf);
 
-  gras_sleep(5,0);
-  exit(0); /* FIXME: There is a bug in MSG preventing me from terminating this server properly */
+  gras_sleep(5, 0);
+  exit(0);                      /* FIXME: There is a bug in MSG preventing me from terminating this server properly */
   return gras_sock_close(g->sock);
 }
index 8fa78e7..26341f1 100644 (file)
 #include <stdio.h>
 #include <stdlib.h>
 
-#include <tbx_graph.h> /* alvin's graph toolbox (+ reconstruction algorithm) */
+#include <tbx_graph.h>          /* alvin's graph toolbox (+ reconstruction algorithm) */
 
-int main(int argc,char *argv[]) {
-  TBX_Graph_t graph; /* a dummy graph containing all hosts */
+int main(int argc, char *argv[])
+{
+  TBX_Graph_t graph;            /* a dummy graph containing all hosts */
   TBX_FIFO_t host_fifo;
-  TBX_InterfTable_t interf; /* the measured interferences */
-  TBX_Graph_t builded_graph; /* the graph builded from the interferences */
+  TBX_InterfTable_t interf;     /* the measured interferences */
+  TBX_Graph_t builded_graph;    /* the graph builded from the interferences */
 
   if (argc != 2) {
-    fprintf(stderr,"alnem_builder: USAGE:\n");
-    fprintf(stderr,"  alnem_builder interference_file\n");
-    exit (1);
+    fprintf(stderr, "alnem_builder: USAGE:\n");
+    fprintf(stderr, "  alnem_builder interference_file\n");
+    exit(1);
   }
 
-  if (TBX_Graph_interferenceTableRead (argv[1],&graph,&interf,&host_fifo)) {
-    fprintf(stderr,"Can't read the interference data, aborting\n");
-    exit (1);
+  if (TBX_Graph_interferenceTableRead
+      (argv[1], &graph, &interf, &host_fifo)) {
+    fprintf(stderr, "Can't read the interference data, aborting\n");
+    exit(1);
   }
 
   builded_graph = TBX_Graph_exploreInterference(interf);
index 1090b5f..e5d5de9 100644 (file)
@@ -11,7 +11,8 @@
 #include "amok/bandwidth.h"
 #include "amok/peermanagement.h"
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(Bandwidth, "Messages specific to this example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(Bandwidth,
+                             "Messages specific to this example");
 
 /* **********************************************************************
  * Sensor code
@@ -110,19 +111,21 @@ int maestro(int argc, char *argv[])
   peer = gras_socket_client(h1->name, h1->port);
 
   INFO0("Test the BW between me and one of the sensors");
-  amok_bw_test(peer, buf_size, msg_size, msg_amount, min_duration, &sec, &bw);
+  amok_bw_test(peer, buf_size, msg_size, msg_amount, min_duration, &sec,
+               &bw);
   INFO7
-    ("Experience between me and %s:%d (initially %d msgs of %d bytes, maybe modified to fill the pipe at least %.1fs) took %f sec, achieving %f kb/s",
-     h1->name, h1->port, msg_amount, msg_size, min_duration, sec,
-     ((double) bw) / 1024.0);
-
-  INFO4("Test the BW between %s:%d and %s:%d", h1->name, h1->port, h2->name,
-        h2->port);
-  amok_bw_request(h1->name, h1->port, h2->name, h2->port, buf_size, msg_size,
-                  msg_amount, min_duration, &sec, &bw);
+      ("Experience between me and %s:%d (initially %d msgs of %d bytes, maybe modified to fill the pipe at least %.1fs) took %f sec, achieving %f kb/s",
+       h1->name, h1->port, msg_amount, msg_size, min_duration, sec,
+       ((double) bw) / 1024.0);
+
+  INFO4("Test the BW between %s:%d and %s:%d", h1->name, h1->port,
+        h2->name, h2->port);
+  amok_bw_request(h1->name, h1->port, h2->name, h2->port, buf_size,
+                  msg_size, msg_amount, min_duration, &sec, &bw);
   INFO6
-    ("Experience between %s:%d and %s:%d took took %f sec, achieving %f kb/s",
-     h1->name, h1->port, h2->name, h2->port, sec, ((double) bw) / 1024.0);
+      ("Experience between %s:%d and %s:%d took took %f sec, achieving %f kb/s",
+       h1->name, h1->port, h2->name, h2->port, sec,
+       ((double) bw) / 1024.0);
 
   /* Game is over, friends */
   amok_pm_group_shutdown("bandwidth");
index 45abca5..9309cba 100644 (file)
 #include "amok/bandwidth.h"
 #include "amok/hostmanagement.h"
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(saturate,"Messages specific to this example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(saturate,
+                             "Messages specific to this example");
 
-static void env_hosttohost_bw(int argc, char*argv[]) {
+static void env_hosttohost_bw(int argc, char *argv[])
+{
 
   /* where are the sensors */
-  xbt_dynar_t hosts = xbt_dynar_new(sizeof(xbt_host_t),&free_host);
+  xbt_dynar_t hosts = xbt_dynar_new(sizeof(xbt_host_t), &free_host);
   int nb_hosts;
 
   /* results */
@@ -30,108 +32,114 @@ static void env_hosttohost_bw(int argc, char*argv[]) {
   int i;
   xbt_host_t h1;
 
-  gras_socket_t peer; /* socket to sensor */
+  gras_socket_t peer;           /* socket to sensor */
 
-  /* wait to ensure that all server sockets are there before starting the experiment */        
+  /* wait to ensure that all server sockets are there before starting the experiment */
   gras_os_sleep(0.5);
 
   /* Get the sensor location from argc/argv */
-  for (i=1; i<argc-1; i+=2){
-    xbt_host_t host=xbt_new(s_xbt_host_t,1);
-    host->name=strdup(argv[i]);
-    host->port=atoi(argv[i+1]);
-    INFO2("New sensor: %s:%d",host->name,host->port);
-    xbt_dynar_push(hosts,&host);
+  for (i = 1; i < argc - 1; i += 2) {
+    xbt_host_t host = xbt_new(s_xbt_host_t, 1);
+    host->name = strdup(argv[i]);
+    host->port = atoi(argv[i + 1]);
+    INFO2("New sensor: %s:%d", host->name, host->port);
+    xbt_dynar_push(hosts, &host);
   }
   nb_hosts = xbt_dynar_length(hosts);
 
   INFO0(">>> start Test1: ENV end to end mesurements");
 
-  xbt_dynar_foreach(hosts,i,h1) {
-        peer = gras_socket_client(h1->name,h1->port);
-       amok_bw_test(peer,buf_size,exp_size,msg_size,min_duration,&sec,&bw);
-       INFO6("Bandwidth between me and %s:%d (%d bytes in msgs of %d bytes) took %f sec, achieving %.3f kb/s",
-       h1->name,h1->port,
-       exp_size,msg_size,
-       sec,((double)bw)/1024.0);
+  xbt_dynar_foreach(hosts, i, h1) {
+    peer = gras_socket_client(h1->name, h1->port);
+    amok_bw_test(peer, buf_size, exp_size, msg_size, min_duration, &sec,
+                 &bw);
+    INFO6
+        ("Bandwidth between me and %s:%d (%d bytes in msgs of %d bytes) took %f sec, achieving %.3f kb/s",
+         h1->name, h1->port, exp_size, msg_size, sec,
+         ((double) bw) / 1024.0);
   }
 
-  xbt_dynar_map(hosts,kill_buddy_dynar);
+  xbt_dynar_map(hosts, kill_buddy_dynar);
   xbt_dynar_free(&hosts);
 
 }
+
 /********************************************************************************************/
-static void env_Pairwisehost_bw(int argc, char*argv[]) {
+static void env_Pairwisehost_bw(int argc, char *argv[])
+{
   xbt_ex_t e;
 
   /* where are the sensors */
-  xbt_dynar_t hosts = xbt_dynar_new(sizeof(xbt_host_t),&free_host);
+  xbt_dynar_t hosts = xbt_dynar_new(sizeof(xbt_host_t), &free_host);
   int nb_hosts;
 
   /* getting the name of maestro for the saturation and the concurrent bandwidth measurements  */
-  char* host_test=argv[0];
+  char *host_test = argv[0];
 
   /* results */
   double sec, bw;
 
   /* iterators */
-  int i,j;
-  xbt_host_t h1,h2;
+  int i, j;
+  xbt_host_t h1, h2;
 
   /* socket to sensor */
   gras_socket_t peer;
 
-  /* wait to ensure that all server sockets are there before starting the experiment */        
+  /* wait to ensure that all server sockets are there before starting the experiment */
   gras_os_sleep(0.5);
 
-  INFO1(">>>>>< le maestro est: %s ",argv[0]);
+  INFO1(">>>>>< le maestro est: %s ", argv[0]);
   /* Get the sensor location from argc/argv */
-  for (i=1; i<argc-1; i+=2){
-    xbt_host_t host=xbt_new(s_xbt_host_t,1);
-    host->name=strdup(argv[i]);
-    host->port=atoi(argv[i+1]);
-    INFO2("New sensor: %s:%d",host->name,host->port);
-    xbt_dynar_push(hosts,&host);
+  for (i = 1; i < argc - 1; i += 2) {
+    xbt_host_t host = xbt_new(s_xbt_host_t, 1);
+    host->name = strdup(argv[i]);
+    host->port = atoi(argv[i + 1]);
+    INFO2("New sensor: %s:%d", host->name, host->port);
+    xbt_dynar_push(hosts, &host);
   }
   nb_hosts = xbt_dynar_length(hosts);
 
   INFO0(">>> start Test2: ENV pairwise host bandwidth mesurements");
- xbt_dynar_foreach(hosts,i,h1) {
-
-      TRY {
-       amok_bw_saturate_start(h1->name,h1->port,
-                              host_test,h1->port,//"Ginette"
-                              msg_size,120); // sturation of the link with msg_size to compute a concurent bandwidth MA //MB
-      } CATCH(e) {
-       RETHROW0("Cannot ask hosts to saturate the link: %s");
-      }
-     // gras_os_sleep(1.0);
-
-       xbt_dynar_foreach(hosts,j,h2) {
-        if (i==j) continue;
-
-        peer = gras_socket_client(h2->name,h2->port);
-       amok_bw_test(peer,buf_size,exp_size,msg_size,min_duration,&sec,&bw);
-       INFO6("Bandwidth between me and %s // measurement between me and %s (%d bytes in msgs of %d bytes) took %f sec, achieving %.3f kb/s",
-       h2->name,h1->name,
-       exp_size,msg_size,
-       sec,((double)bw)/1024.0);
-
+  xbt_dynar_foreach(hosts, i, h1) {
+
+    TRY {
+      amok_bw_saturate_start(h1->name, h1->port, host_test, h1->port,   //"Ginette"
+                             msg_size, 120);    // sturation of the link with msg_size to compute a concurent bandwidth MA //MB
+    }
+    CATCH(e) {
+      RETHROW0("Cannot ask hosts to saturate the link: %s");
+    }
+    // gras_os_sleep(1.0);
+
+    xbt_dynar_foreach(hosts, j, h2) {
+      if (i == j)
+        continue;
+
+      peer = gras_socket_client(h2->name, h2->port);
+      amok_bw_test(peer, buf_size, exp_size, msg_size, min_duration, &sec,
+                   &bw);
+      INFO6
+          ("Bandwidth between me and %s // measurement between me and %s (%d bytes in msgs of %d bytes) took %f sec, achieving %.3f kb/s",
+           h2->name, h1->name, exp_size, msg_size, sec,
+           ((double) bw) / 1024.0);
+
+    }
+    amok_bw_saturate_stop(h1->name, h1->port, NULL, NULL);
   }
-       amok_bw_saturate_stop(h1->name,h1->port,NULL,NULL);
-}
-  xbt_dynar_map(hosts,kill_buddy_dynar);
+  xbt_dynar_map(hosts, kill_buddy_dynar);
   xbt_dynar_free(&hosts);
 
 }
 
-int maestro(int argc,char *argv[]) {
+int maestro(int argc, char *argv[])
+{
 
-  gras_init(&argc,argv);
+  gras_init(&argc, argv);
   amok_bw_init();
   amok_hm_init();
 
-  gras_socket_server(3333); /* only so that messages from the transport layer in gras identify us */
+  gras_socket_server(3333);     /* only so that messages from the transport layer in gras identify us */
 
   //env_Pairwisehost_bw(argc,argv);
   //env_hosttohost_bw(argc,argv);
index 8d4a537..1b77417 100644 (file)
@@ -16,7 +16,8 @@
 #include "amok/bandwidth.h"
 #include "amok/peermanagement.h"
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(saturate, "Messages specific to this example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(saturate,
+                             "Messages specific to this example");
 
 /* **********************************************************************
  * Sensor code
@@ -83,8 +84,8 @@ static double XP(const char *bw1, const char *bw2,
   amok_bw_request(bw1, 4000, bw2, 4000,
                   buf_size, msg_size, msg_amount, min_duration, &sec_sat,
                   &bw_sat);
-  INFO6("BW(%s,%s//%s,%s) => %f sec, achieving %f Mb/s", bw1, bw2, sat1, sat2,
-        sec, bw / 1024.0 / 1024.0);
+  INFO6("BW(%s,%s//%s,%s) => %f sec, achieving %f Mb/s", bw1, bw2, sat1,
+        sat2, sec, bw / 1024.0 / 1024.0);
 
   amok_bw_saturate_stop(sat1, 4000, NULL, NULL);
 
@@ -252,10 +253,12 @@ static void full_fledged_saturation(int argc, char *argv[])
       amok_bw_saturate_stop(h1->name, h1->port, &time1, &bw1);
 
       INFO2
-        ("Did an iteration on saturation pair in %ld sec (%.2f simulated sec)",
-         (long int) (time(NULL) - begin), gras_os_time() - begin_simulated);
-      INFO2("the duration of the experiment >>>>> %.3f sec (%.3f bandwidth)",
-            time1, bw1);
+          ("Did an iteration on saturation pair in %ld sec (%.2f simulated sec)",
+           (long int) (time(NULL) - begin),
+           gras_os_time() - begin_simulated);
+      INFO2
+          ("the duration of the experiment >>>>> %.3f sec (%.3f bandwidth)",
+           time1, bw1);
     }
   }
   free(bw_sat);
index 4c58b72..8e5d607 100644 (file)
@@ -57,8 +57,8 @@ int receiver(int argc, char *argv[])
     free(data);
 
     INFO3("Got Data from %s:%d (still %d to go)",
-          gras_socket_peer_name(expeditor), gras_socket_peer_port(expeditor),
-          todo);
+          gras_socket_peer_name(expeditor),
+          gras_socket_peer_port(expeditor), todo);
 
   }
 
@@ -86,7 +86,8 @@ int sender(int argc, char *argv[])
 
 
   /* xbt_dynar for peers */
-  xbt_dynar_t peers = xbt_dynar_new(sizeof(xbt_peer_t), &xbt_peer_free_voidp);
+  xbt_dynar_t peers =
+      xbt_dynar_new(sizeof(xbt_peer_t), &xbt_peer_free_voidp);
 
   /* Init the GRAS infrastructure and declare my globals */
   gras_init(&argc, argv);
index 7816fd2..5a0e1fd 100644 (file)
@@ -9,54 +9,54 @@
 #include "gras.h"
 #include "xbt/log.h"
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(Chrono,"Messages specific to this example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(Chrono, "Messages specific to this example");
 
 #include <cblas.h>
 void cblas_dgemm(const enum CBLAS_ORDER Order,
-                const enum CBLAS_TRANSPOSE TransA,
-                const enum CBLAS_TRANSPOSE TransB, const int M,
-                const int N, const int K, const double alpha,
-                const double *A, const int lda, const double *B,
-                const int ldb, const double beta, double *C,
-                const int ldc);
+                 const enum CBLAS_TRANSPOSE TransA,
+                 const enum CBLAS_TRANSPOSE TransB, const int M,
+                 const int N, const int K, const double alpha,
+                 const double *A, const int lda, const double *B,
+                 const int ldb, const double beta, double *C,
+                 const int ldc);
 
 
 /* Function prototypes */
 static int mat_mult(int n)
 {
-  int i,j,k,l;
-  double *A,*B,*C;
+  int i, j, k, l;
+  double *A, *B, *C;
   double start = 0.0;
   double now = 0.0;
 
-  A = malloc(n*n*sizeof(double));
-  B = malloc(n*n*sizeof(double));
-  C = malloc(n*n*sizeof(double));
+  A = malloc(n * n * sizeof(double));
+  B = malloc(n * n * sizeof(double));
+  C = malloc(n * n * sizeof(double));
 
-  start=now=gras_os_time();
+  start = now = gras_os_time();
 
-  INFO1("Matrix size: %d",n);
+  INFO1("Matrix size: %d", n);
 /*   INFO1("Before computation: %lg", start); */
 
-  for(l=0; l<40; l++) {
-    now=gras_os_time();
+  for (l = 0; l < 40; l++) {
+    now = gras_os_time();
     GRAS_BENCH_ONCE_RUN_ONCE_BEGIN();
-    for(i=0; i<n; i++)
-      for(j=0; j<n; j++) {
-       A[i*n+j]=2/n;
-       B[i*n+j]=1/n;
-       C[i*n+j]=0.0;
+    for (i = 0; i < n; i++)
+      for (j = 0; j < n; j++) {
+        A[i * n + j] = 2 / n;
+        B[i * n + j] = 1 / n;
+        C[i * n + j] = 0.0;
       }
 
     cblas_dgemm(CblasRowMajor,
-               CblasNoTrans, CblasNoTrans, n, n, n,
-               1.0, A, n, B, n, 0.0, C, n);    
+                CblasNoTrans, CblasNoTrans, n, n, n,
+                1.0, A, n, B, n, 0.0, C, n);
     GRAS_BENCH_ONCE_RUN_ONCE_END();
-    now=gras_os_time()-now;
+    now = gras_os_time() - now;
 /*     INFO2("Iteration %d : %lg ", l, now); */
   }
 
-  now=gras_os_time()-start;
+  now = gras_os_time() - start;
   INFO1("Duration: %lg ", now);
 
   free(A);
@@ -64,7 +64,7 @@ static int mat_mult(int n)
   free(C);
 }
 
-int multiplier (int argc,char *argv[])
+int multiplier(int argc, char *argv[])
 {
   gras_init(&argc, argv);
 
index 11a9ccc..03e0317 100644 (file)
@@ -33,7 +33,8 @@ static int server_cb_ping_handler(gras_msg_cb_ctx_t ctx, void *payload)
   /* 3. Log which client connected */
   INFO3(">>>>>>>> Got message PING(%d) from %s:%d <<<<<<<<",
         msg,
-        gras_socket_peer_name(expeditor), gras_socket_peer_port(expeditor));
+        gras_socket_peer_name(expeditor),
+        gras_socket_peer_port(expeditor));
 
   /* 4. Change the value of the msg variable */
   msg = 4321;
@@ -93,7 +94,8 @@ int server(int argc, char *argv[])
 
   /* 7. Housekeeping */
   if (!globals->endcondition)
-    WARN0("An error occured, the endcondition was not set by the callback");
+    WARN0
+        ("An error occured, the endcondition was not set by the callback");
 
   /* 8. Free the allocated resources, and shut GRAS down */
   gras_socket_close(globals->sock);
index d1d3565..bfad502 100644 (file)
 #include "xbt/matrix.h"
 #include "mmrpc.h"
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(MatMult,"Messages specific to this example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(MatMult, "Messages specific to this example");
 
 /* register messages which may be sent and their payload
    (common to client and server) */
-void mmrpc_register_messages(void) {
+void mmrpc_register_messages(void)
+{
   gras_datadesc_type_t matrix_type, request_type;
 
-  matrix_type=gras_datadesc_matrix(gras_datadesc_by_name("double"),
-                                  NULL);
-  request_type=gras_datadesc_array_fixed("s_matrix_t(double)[2]",matrix_type,2);
-  
+  matrix_type = gras_datadesc_matrix(gras_datadesc_by_name("double"),
+                                     NULL);
+  request_type =
+      gras_datadesc_array_fixed("s_matrix_t(double)[2]", matrix_type, 2);
+
   gras_msgtype_declare("answer", matrix_type);
   gras_msgtype_declare("request", request_type);
 }
 
 typedef xbt_matrix_t request_t[2];
-static int server_cb_request_handler(gras_msg_cb_ctx_t ctx, 
-                                    void *payload_data) {
+static int server_cb_request_handler(gras_msg_cb_ctx_t ctx,
+                                     void *payload_data)
+{
+
+  gras_socket_t expeditor = gras_msg_cb_ctx_from(ctx);
 
-  gras_socket_t expeditor=gras_msg_cb_ctx_from(ctx);
-                            
   /* 1. Get the payload into the data variable */
-  xbt_matrix_t *request = (xbt_matrix_t*)payload_data;
+  xbt_matrix_t *request = (xbt_matrix_t *) payload_data;
   xbt_matrix_t result;
-  
+
   /* 2. Do the computation */
   result = xbt_matrix_double_new_mult(request[0], request[1]);
 
@@ -46,124 +49,129 @@ static int server_cb_request_handler(gras_msg_cb_ctx_t ctx,
   xbt_matrix_free(request[1]);
   xbt_matrix_free(result);
   gras_socket_close(expeditor);
-   
+
   return 0;
-} /* end_of_server_cb_request_handler */
+}                               /* end_of_server_cb_request_handler */
 
-int server (int argc,char *argv[]) {
-  xbt_ex_t e; 
-  gras_socket_t sock=NULL;
+int server(int argc, char *argv[])
+{
+  xbt_ex_t e;
+  gras_socket_t sock = NULL;
   int port = 4000;
-  
+
   /* 1. Init the GRAS infrastructure */
-  gras_init(&argc,argv);
-   
+  gras_init(&argc, argv);
+
   /* 2. Get the port I should listen on from the command line, if specified */
   if (argc == 2) {
-    port=atoi(argv[1]);
+    port = atoi(argv[1]);
   }
 
   /* 3. Create my master socket */
   INFO1("Launch server (port=%d)", port);
   TRY {
     sock = gras_socket_server(port);
-  } CATCH(e) {
+  }
+  CATCH(e) {
     RETHROW0("Unable to establish a server socket: %s");
   }
 
   /* 4. Register the known messages and payloads. */
   mmrpc_register_messages();
-   
+
   /* 5. Register my callback */
-  gras_cb_register("request",&server_cb_request_handler);
+  gras_cb_register("request", &server_cb_request_handler);
 
   /* 6. Wait up to 10 minutes for an incomming message to handle */
   gras_msg_handle(600.0);
-   
+
   /* 7. Free the allocated resources, and shut GRAS down */
   gras_socket_close(sock);
   gras_exit();
-   
+
   INFO0("Done.");
   return 0;
-} /* end_of_server */
+}                               /* end_of_server */
 
 
-int client(int argc,char *argv[]) {
-  xbt_ex_t e; 
-  gras_socket_t toserver=NULL; /* peer */
+int client(int argc, char *argv[])
+{
+  xbt_ex_t e;
+  gras_socket_t toserver = NULL;        /* peer */
 
   gras_socket_t from;
   xbt_matrix_t request[2], answer;
 
-  int i,j;
+  int i, j;
 
   const char *host = "127.0.0.1";
-        int   port = 4000;
+  int port = 4000;
 
   /* 1. Init the GRAS's infrastructure */
   gras_init(&argc, argv);
-   
+
   /* 2. Get the server's address. The command line override defaults when specified */
   if (argc == 3) {
-    host=argv[1];
-    port=atoi(argv[2]);
-  } 
+    host = argv[1];
+    port = atoi(argv[2]);
+  }
+
+  INFO2("Launch client (server on %s:%d)", host, port);
 
-  INFO2("Launch client (server on %s:%d)",host,port);
-   
   /* 3. Wait for the server startup */
   gras_os_sleep(1);
-   
+
   /* 4. Create a socket to speak to the server */
   TRY {
-    toserver=gras_socket_client(host,port);
-  } CATCH(e) {
+    toserver = gras_socket_client(host, port);
+  }
+  CATCH(e) {
     RETHROW0("Unable to connect to the server: %s");
   }
-  INFO2("Connected to %s:%d.",host,port);    
+  INFO2("Connected to %s:%d.", host, port);
 
 
   /* 5. Register the messages (before use) */
   mmrpc_register_messages();
 
   /* 6. Keep the user informed of what's going on */
-  INFO2(">>>>>>>> Connected to server which is on %s:%d <<<<<<<<", 
-       gras_socket_peer_name(toserver),gras_socket_peer_port(toserver));
+  INFO2(">>>>>>>> Connected to server which is on %s:%d <<<<<<<<",
+        gras_socket_peer_name(toserver), gras_socket_peer_port(toserver));
 
   /* 7. Prepare and send the request to the server */
 
-  request[0] = xbt_matrix_double_new_id(MATSIZE,MATSIZE);
-  request[1] = xbt_matrix_double_new_rand(MATSIZE,MATSIZE);
+  request[0] = xbt_matrix_double_new_id(MATSIZE, MATSIZE);
+  request[1] = xbt_matrix_double_new_rand(MATSIZE, MATSIZE);
 
   /*
-  xbt_matrix_dump(request[0],"C:sent0",0,xbt_matrix_dump_display_double);
-  xbt_matrix_dump(request[1],"C:sent1",0,xbt_matrix_dump_display_double);
-  */
+     xbt_matrix_dump(request[0],"C:sent0",0,xbt_matrix_dump_display_double);
+     xbt_matrix_dump(request[1],"C:sent1",0,xbt_matrix_dump_display_double);
+   */
 
   gras_msg_send(toserver, "request", &request);
 
   xbt_matrix_free(request[0]);
 
   INFO2(">>>>>>>> Request sent to %s:%d <<<<<<<<",
-       gras_socket_peer_name(toserver),gras_socket_peer_port(toserver));
+        gras_socket_peer_name(toserver), gras_socket_peer_port(toserver));
 
   /* 8. Wait for the answer from the server, and deal with issues */
-  gras_msg_wait(6000,"answer",&from,&answer);
+  gras_msg_wait(6000, "answer", &from, &answer);
 
   /*
-  xbt_matrix_dump(answer,"C:answer",0,xbt_matrix_dump_display_double);
-  */
-  for (i=0; i<MATSIZE; i++) 
-    for (j=0; i<MATSIZE; i++) 
-      xbt_assert4(xbt_matrix_get_as(answer,i,j,double)==xbt_matrix_get_as(request[1],i,j,double),
-                 "Answer does not match expectations. Found %f at cell %d,%d instead of %f",
-                 xbt_matrix_get_as(answer,i,j,double),i,j,
-                 xbt_matrix_get_as(request[1],i,j,double));
+     xbt_matrix_dump(answer,"C:answer",0,xbt_matrix_dump_display_double);
+   */
+  for (i = 0; i < MATSIZE; i++)
+    for (j = 0; i < MATSIZE; i++)
+      xbt_assert4(xbt_matrix_get_as(answer, i, j, double) ==
+                  xbt_matrix_get_as(request[1], i, j, double),
+                  "Answer does not match expectations. Found %f at cell %d,%d instead of %f",
+                  xbt_matrix_get_as(answer, i, j, double), i, j,
+                  xbt_matrix_get_as(request[1], i, j, double));
 
   /* 9. Keep the user informed of what's going on, again */
-  INFO2(">>>>>>>> Got answer from %s:%d (values are right) <<<<<<<<", 
-       gras_socket_peer_name(from),gras_socket_peer_port(from));
+  INFO2(">>>>>>>> Got answer from %s:%d (values are right) <<<<<<<<",
+        gras_socket_peer_name(from), gras_socket_peer_port(from));
 
   /* 10. Free the allocated resources, and shut GRAS down */
   xbt_matrix_free(request[1]);
@@ -172,4 +180,4 @@ int client(int argc,char *argv[]) {
   gras_exit();
   INFO0("Done.");
   return 0;
-} /* end_of_client */
+}                               /* end_of_client */
index 13f5e0f..3f08bc8 100644 (file)
@@ -21,4 +21,4 @@ void mmrpc_register_messages(void);
 int server(int argc, char *argv[]);
 int client(int argc, char *argv[]);
 
-#endif /* MMRPC_H */
+#endif                          /* MMRPC_H */
index 5b0beaf..a488470 100644 (file)
@@ -16,9 +16,10 @@ void mmrpc_register_messages(void)
 {
   gras_datadesc_type_t matrix_type, request_type;
 
-  matrix_type = gras_datadesc_matrix(gras_datadesc_by_name("double"), NULL);
+  matrix_type =
+      gras_datadesc_matrix(gras_datadesc_by_name("double"), NULL);
   request_type =
-    gras_datadesc_array_fixed("s_matrix_t(double)[2]", matrix_type, 2);
+      gras_datadesc_array_fixed("s_matrix_t(double)[2]", matrix_type, 2);
 
   gras_msgtype_declare("answer", matrix_type);
   gras_msgtype_declare("request", request_type);
index a9b9141..4c359f0 100644 (file)
 #include "xbt/sysdep.h"
 #include "gras.h"
 
-#include "can_tests.c"                                               
+#include "can_tests.c"
 //#include "types.h" // header alone containing the typedef struct of a node // include can_tests.c must be OFF.
 
 //XBT_LOG_NEW_DEFAULT_CATEGORY(can,"Messages specific to this example"); // include can_tests.c must be OFF.
 
 //extern char *_gras_this_type_symbol_does_not_exist__s_nuke;
-int node_nuke_handler(gras_msg_cb_ctx_t ctx,void *payload_data);
+int node_nuke_handler(gras_msg_cb_ctx_t ctx, void *payload_data);
 
 // struct of a "get_successor" message, when a node look after the area in which he want to be.
-GRAS_DEFINE_TYPE(s_get_suc,
-       struct s_get_suc{
-               int xId;
-               int yId;
-               char host[1024];
-               int port;       
-       };
-);
+GRAS_DEFINE_TYPE(s_get_suc, struct s_get_suc {
+                 int xId; int yId; char host[1024]; int port;};);
+
 typedef struct s_get_suc get_suc_t;
 
 // struct of a "response_successor" message, hen a node receive the information of his new area.
-GRAS_DEFINE_TYPE(s_rep_suc,
-       struct s_rep_suc{
-               int x1; // Xmin
-               int x2; // Xmax
-               int y1; // Ymin
-               int y2; // Ymax
-
-               char north_host[1024];
-               int north_port;
-               char south_host[1024];
-               int south_port;
-               char east_host[1024];
-               int east_port;
-               char west_host[1024];
-               int west_port;
-       };
-);
+GRAS_DEFINE_TYPE(s_rep_suc, struct s_rep_suc {
+                 int x1;        // Xmin
+                 int x2;        // Xmax
+                 int y1;        // Ymin
+                 int y2;        // Ymax
+                 char north_host[1024];
+                 int north_port;
+                 char south_host[1024];
+                 int south_port;
+                 char east_host[1024];
+                 int east_port; char west_host[1024]; int west_port;};);
 typedef struct s_rep_suc rep_suc_t;
 
-int node(int argc,char **argv);
+int node(int argc, char **argv);
 
 // registering messages types
-static void register_messages(){
-       gras_msgtype_declare("can_get_suc",gras_datadesc_by_symbol(s_get_suc));
-       gras_msgtype_declare("can_rep_suc",gras_datadesc_by_symbol(s_rep_suc));
-       gras_msgtype_declare("can_nuke",gras_datadesc_by_symbol(s_nuke));// can_test.c message // include can_tests.c must be ON.
+static void register_messages()
+{
+  gras_msgtype_declare("can_get_suc", gras_datadesc_by_symbol(s_get_suc));
+  gras_msgtype_declare("can_rep_suc", gras_datadesc_by_symbol(s_rep_suc));
+  gras_msgtype_declare("can_nuke", gras_datadesc_by_symbol(s_nuke));    // can_test.c message // include can_tests.c must be ON.
 }
 
 
 // a forwarding function for a "get_suc" message.
-static void forward_get_suc(get_suc_t msg, char host[1024], int port){
-       gras_socket_t temp_sock=NULL;
-       xbt_ex_t e; // the error variable used in TRY.. CATCH tokens.
-       //INFO2("Transmiting message to %s:%d",host,port);      
-       TRY{
-               temp_sock=gras_socket_client(host,port);
-       }CATCH(e){
-               RETHROW0("Unable to connect!: %s");
-       }
-       TRY{
-               gras_msg_send(temp_sock,"can_get_suc",&msg);
-       }CATCH(e){
-               RETHROW0("Unable to send!: %s");
-       }
-       INFO3("Forwarding a get_successor message to %s for (%d;%d)",host,msg.xId,msg.yId);
-       gras_socket_close(temp_sock);
+static void forward_get_suc(get_suc_t msg, char host[1024], int port)
+{
+  gras_socket_t temp_sock = NULL;
+  xbt_ex_t e;                   // the error variable used in TRY.. CATCH tokens.
+  //INFO2("Transmiting message to %s:%d",host,port);      
+  TRY {
+    temp_sock = gras_socket_client(host, port);
+  } CATCH(e) {
+    RETHROW0("Unable to connect!: %s");
+  }
+  TRY {
+    gras_msg_send(temp_sock, "can_get_suc", &msg);
+  } CATCH(e) {
+    RETHROW0("Unable to send!: %s");
+  }
+  INFO3("Forwarding a get_successor message to %s for (%d;%d)", host,
+        msg.xId, msg.yId);
+  gras_socket_close(temp_sock);
 }
 
 // the handling function of a "get_suc" message (what do a node when he receive a "get_suc" message.
-static int node_get_suc_handler(gras_msg_cb_ctx_t ctx,void *payload_data){
-        gras_socket_t expeditor=gras_msg_cb_ctx_from(ctx);
-       get_suc_t *incoming=(get_suc_t*)payload_data;
-       xbt_ex_t e; // the error variable used in TRY.. CATCH tokens.
-       node_data_t *globals=(node_data_t*)gras_userdata_get();
-       gras_socket_t temp_sock=NULL;
-       INFO3("Received a get_successor message from %s for (%d;%d)",gras_socket_peer_name(expeditor),incoming->xId,incoming->yId);
-       //INFO4("My area is [%d;%d;%d;%d]",globals->x1,globals->x2,globals->y1,globals->y2);
-       if(incoming->xId<globals->x1) // test if the message must be forwarded to a neighbour.
-               forward_get_suc(*incoming, globals->west_host, globals->west_port);
-       else if(incoming->xId>globals->x2)
-               forward_get_suc(*incoming, globals->east_host, globals->east_port);
-       else if(incoming->yId<globals->y1)
-               forward_get_suc(*incoming, globals->south_host, globals->south_port);
-       else if(incoming->yId>globals->y2)
-               forward_get_suc(*incoming, globals->north_host, globals->north_port);
-       else{ // if the message must not be forwarded, then the area is splitted in half and one half is assignated to the new node.
-               rep_suc_t outgoing;
-               int validate=0;
-               INFO4("Spliting my area between me (%d;%d) and the inserting node (%d;%d)!",
-                     globals->xId,globals->yId,incoming->xId,incoming->yId);
-               if((globals->x2-globals->x1)>(globals->y2-globals->y1)){ // the height of the area is smaller than its width.
-                 if(incoming->xId<globals->xId){ // the new node is west from the actual node.
-                       outgoing.x1=globals->x1;
-                       outgoing.x2=(incoming->xId+globals->xId)/2;
-                       outgoing.y1=globals->y1;
-                       outgoing.y2=globals->y2;
-                       strcpy(outgoing.north_host,globals->north_host);
-                       outgoing.north_port=globals->north_port;
-                       strcpy(outgoing.south_host,globals->south_host);
-                       outgoing.south_port=globals->south_port;
-                       strcpy(outgoing.east_host,globals->host);
-                       outgoing.east_port=globals->port;
-                       strcpy(outgoing.west_host,globals->west_host);
-                       outgoing.west_port=globals->west_port;
-
-                       globals->x1=(incoming->xId+globals->xId)/2;
-                       strcpy(globals->west_host,incoming->host);
-                       globals->west_port=incoming->port;
-                       validate=1;
-                 }
-                 else if(incoming->xId>globals->xId){ // the new node is east from the actual node.
-                       outgoing.x1=(incoming->xId+globals->xId)/2;
-                       outgoing.x2=globals->x2;
-                       outgoing.y1=globals->y1;
-                       outgoing.y2=globals->y2;
-                       strcpy(outgoing.north_host,globals->north_host);
-                       outgoing.north_port=globals->north_port;
-                       strcpy(outgoing.south_host,globals->south_host);
-                       outgoing.south_port=globals->south_port;
-                       strcpy(outgoing.east_host,globals->east_host);
-                       outgoing.east_port=globals->east_port;
-                       strcpy(outgoing.west_host,globals->host);
-                       outgoing.west_port=globals->port;
-
-                       globals->x2=(incoming->xId+globals->xId)/2;
-                       strcpy(globals->east_host,incoming->host);
-                       globals->east_port=incoming->port;
-                       validate=1;                     
-                 }
-               }
-               else{
-                  if(incoming->yId<globals->yId){ // the new node is south from the actual node.
-                       outgoing.y1=globals->y1;
-                       outgoing.y2=(incoming->yId+globals->yId)/2;
-                       outgoing.y1=globals->y1;
-                       outgoing.x2=globals->x2;
-                       strcpy(outgoing.east_host,globals->east_host);
-                       outgoing.east_port=globals->east_port;
-                       strcpy(outgoing.west_host,globals->west_host);
-                       outgoing.west_port=globals->west_port;
-                       strcpy(outgoing.north_host,globals->host);
-                       outgoing.north_port=globals->port;
-                       strcpy(outgoing.south_host,globals->south_host);
-                       outgoing.south_port=globals->south_port;
-
-                       globals->y1=(incoming->yId+globals->yId)/2;
-                       strcpy(globals->south_host,incoming->host);
-                       globals->south_port=incoming->port;
-                       validate=1;                     
-                  }
-                  else if(incoming->yId>globals->yId){ // the new node is north from the actual node.
-                       outgoing.y1=(incoming->yId+globals->yId)/2;
-                       outgoing.y2=globals->y2;
-                       outgoing.x1=globals->x1;
-                       outgoing.x2=globals->x2;
-                       strcpy(outgoing.east_host,globals->east_host);
-                       outgoing.east_port=globals->east_port;
-                       strcpy(outgoing.west_host,globals->west_host);
-                       outgoing.west_port=globals->west_port;
-                       strcpy(outgoing.north_host,globals->north_host);
-                       outgoing.north_port=globals->north_port;
-                       strcpy(outgoing.south_host,globals->host);
-                       outgoing.south_port=globals->port;
-
-                       globals->y2=(incoming->yId+globals->yId)/2;
-                       strcpy(globals->north_host,incoming->host);
-                       globals->north_port=incoming->port;
-                       validate=1;                     
-                  }
-               }
-               if(validate==1){ // the area for the new node has been defined, then send theses informations to the new node.
-                       INFO2("Sending environment informations to node %s:%d",incoming->host,incoming->port);
-
-                       TRY{
-                               temp_sock=gras_socket_client(incoming->host,incoming->port);
-                       }CATCH(e){
-                               RETHROW0("Unable to connect to the node wich has requested for an area!: %s");
-                       }
-                       TRY{
-                               gras_msg_send(temp_sock,"can_rep_suc",&outgoing);
-                               INFO0("Environment informations sent!");
-                       }CATCH(e){
-                               RETHROW2("%s:Timeout sending environment informations to %s: %s",globals->host,gras_socket_peer_name(expeditor));
-                       }
-                       gras_socket_close(temp_sock);
-               }
-               else // we have a problem!
-                       INFO0("An error occurded!!!!!!!!!!!!!");
-
-       }
-       gras_socket_close(expeditor); // spare
-       TRY{
-         gras_msg_handle(10000.0); // wait a bit in case of someone want to ask me for something.
-       }CATCH(e){
-       INFO4("My area is [%d;%d;%d;%d]",globals->x1,globals->x2,globals->y1,globals->y2);
-         //INFO0("Closing node, all has been done!");
-       }
-   return 0;
+static int node_get_suc_handler(gras_msg_cb_ctx_t ctx, void *payload_data)
+{
+  gras_socket_t expeditor = gras_msg_cb_ctx_from(ctx);
+  get_suc_t *incoming = (get_suc_t *) payload_data;
+  xbt_ex_t e;                   // the error variable used in TRY.. CATCH tokens.
+  node_data_t *globals = (node_data_t *) gras_userdata_get();
+  gras_socket_t temp_sock = NULL;
+  INFO3("Received a get_successor message from %s for (%d;%d)",
+        gras_socket_peer_name(expeditor), incoming->xId, incoming->yId);
+  //INFO4("My area is [%d;%d;%d;%d]",globals->x1,globals->x2,globals->y1,globals->y2);
+  if (incoming->xId < globals->x1)      // test if the message must be forwarded to a neighbour.
+    forward_get_suc(*incoming, globals->west_host, globals->west_port);
+  else if (incoming->xId > globals->x2)
+    forward_get_suc(*incoming, globals->east_host, globals->east_port);
+  else if (incoming->yId < globals->y1)
+    forward_get_suc(*incoming, globals->south_host, globals->south_port);
+  else if (incoming->yId > globals->y2)
+    forward_get_suc(*incoming, globals->north_host, globals->north_port);
+  else {                        // if the message must not be forwarded, then the area is splitted in half and one half is assignated to the new node.
+    rep_suc_t outgoing;
+    int validate = 0;
+    INFO4
+        ("Spliting my area between me (%d;%d) and the inserting node (%d;%d)!",
+         globals->xId, globals->yId, incoming->xId, incoming->yId);
+    if ((globals->x2 - globals->x1) > (globals->y2 - globals->y1)) {    // the height of the area is smaller than its width.
+      if (incoming->xId < globals->xId) {       // the new node is west from the actual node.
+        outgoing.x1 = globals->x1;
+        outgoing.x2 = (incoming->xId + globals->xId) / 2;
+        outgoing.y1 = globals->y1;
+        outgoing.y2 = globals->y2;
+        strcpy(outgoing.north_host, globals->north_host);
+        outgoing.north_port = globals->north_port;
+        strcpy(outgoing.south_host, globals->south_host);
+        outgoing.south_port = globals->south_port;
+        strcpy(outgoing.east_host, globals->host);
+        outgoing.east_port = globals->port;
+        strcpy(outgoing.west_host, globals->west_host);
+        outgoing.west_port = globals->west_port;
+
+        globals->x1 = (incoming->xId + globals->xId) / 2;
+        strcpy(globals->west_host, incoming->host);
+        globals->west_port = incoming->port;
+        validate = 1;
+      } else if (incoming->xId > globals->xId) {        // the new node is east from the actual node.
+        outgoing.x1 = (incoming->xId + globals->xId) / 2;
+        outgoing.x2 = globals->x2;
+        outgoing.y1 = globals->y1;
+        outgoing.y2 = globals->y2;
+        strcpy(outgoing.north_host, globals->north_host);
+        outgoing.north_port = globals->north_port;
+        strcpy(outgoing.south_host, globals->south_host);
+        outgoing.south_port = globals->south_port;
+        strcpy(outgoing.east_host, globals->east_host);
+        outgoing.east_port = globals->east_port;
+        strcpy(outgoing.west_host, globals->host);
+        outgoing.west_port = globals->port;
+
+        globals->x2 = (incoming->xId + globals->xId) / 2;
+        strcpy(globals->east_host, incoming->host);
+        globals->east_port = incoming->port;
+        validate = 1;
+      }
+    } else {
+      if (incoming->yId < globals->yId) {       // the new node is south from the actual node.
+        outgoing.y1 = globals->y1;
+        outgoing.y2 = (incoming->yId + globals->yId) / 2;
+        outgoing.y1 = globals->y1;
+        outgoing.x2 = globals->x2;
+        strcpy(outgoing.east_host, globals->east_host);
+        outgoing.east_port = globals->east_port;
+        strcpy(outgoing.west_host, globals->west_host);
+        outgoing.west_port = globals->west_port;
+        strcpy(outgoing.north_host, globals->host);
+        outgoing.north_port = globals->port;
+        strcpy(outgoing.south_host, globals->south_host);
+        outgoing.south_port = globals->south_port;
+
+        globals->y1 = (incoming->yId + globals->yId) / 2;
+        strcpy(globals->south_host, incoming->host);
+        globals->south_port = incoming->port;
+        validate = 1;
+      } else if (incoming->yId > globals->yId) {        // the new node is north from the actual node.
+        outgoing.y1 = (incoming->yId + globals->yId) / 2;
+        outgoing.y2 = globals->y2;
+        outgoing.x1 = globals->x1;
+        outgoing.x2 = globals->x2;
+        strcpy(outgoing.east_host, globals->east_host);
+        outgoing.east_port = globals->east_port;
+        strcpy(outgoing.west_host, globals->west_host);
+        outgoing.west_port = globals->west_port;
+        strcpy(outgoing.north_host, globals->north_host);
+        outgoing.north_port = globals->north_port;
+        strcpy(outgoing.south_host, globals->host);
+        outgoing.south_port = globals->port;
+
+        globals->y2 = (incoming->yId + globals->yId) / 2;
+        strcpy(globals->north_host, incoming->host);
+        globals->north_port = incoming->port;
+        validate = 1;
+      }
+    }
+    if (validate == 1) {        // the area for the new node has been defined, then send theses informations to the new node.
+      INFO2("Sending environment informations to node %s:%d",
+            incoming->host, incoming->port);
+
+      TRY {
+        temp_sock = gras_socket_client(incoming->host, incoming->port);
+      }
+      CATCH(e) {
+        RETHROW0
+            ("Unable to connect to the node wich has requested for an area!: %s");
+      }
+      TRY {
+        gras_msg_send(temp_sock, "can_rep_suc", &outgoing);
+        INFO0("Environment informations sent!");
+      }
+      CATCH(e) {
+        RETHROW2("%s:Timeout sending environment informations to %s: %s",
+                 globals->host, gras_socket_peer_name(expeditor));
+      }
+      gras_socket_close(temp_sock);
+    } else                      // we have a problem!
+      INFO0("An error occurded!!!!!!!!!!!!!");
+
+  }
+  gras_socket_close(expeditor); // spare
+  TRY {
+    gras_msg_handle(10000.0);   // wait a bit in case of someone want to ask me for something.
+  }
+  CATCH(e) {
+    INFO4("My area is [%d;%d;%d;%d]", globals->x1, globals->x2,
+          globals->y1, globals->y2);
+    //INFO0("Closing node, all has been done!");
+  }
+  return 0;
 }
 
 
 
 
 
-int node(int argc,char **argv){
-       node_data_t *globals=NULL;
-       xbt_ex_t e; // the error variable used in TRY.. CATCH tokens.
-       gras_socket_t temp_sock=NULL;
-
-       rep_suc_t rep_suc_msg;
-
-       get_suc_t get_suc_msg; // building the "get_suc" message.
-       gras_socket_t temp_sock2=NULL;
-
-       INFO0("Starting");
-
-       /* 1. Init the GRAS infrastructure and declare my globals */
-       gras_init(&argc,argv);
-       gras_os_sleep((15-gras_os_getpid())*20); // wait a bit.
-       
-       globals=gras_userdata_new(node_data_t);
-
-       globals->xId=atoi(argv[1]); // x coordinate of the node.
-       globals->yId=atoi(argv[2]); // y coordinate of the node.
-       globals->port=atoi(argv[3]); // node port
-       globals->sock=gras_socket_server(globals->port); // node socket.
-       snprintf(globals->host,1024,gras_os_myname()); // node name.
-       globals->version=0; // node version (used for fun)
-
-       /* 2. Inserting the Node */
-       INFO2("Inserting node %s:%d",globals->host,globals->port);
-       if(argc==4){ // the node is a server, then he has the whole area.
-               globals->x1=0;
-               globals->x2=1000;
-               globals->y1=0;
-               globals->y2=1000;
-       }else{ // asking for an area.
-               INFO1("Contacting %s so as to request for an area",argv[4]);
-
-               TRY{
-                       temp_sock=gras_socket_client(argv[4],atoi(argv[5]));
-               }CATCH(e){
-                       RETHROW0("Unable to connect known host to request for an area!: %s");
-               }
-
-
-               get_suc_msg.xId=globals->xId;
-               get_suc_msg.yId=globals->yId;
-               strcpy(get_suc_msg.host,globals->host);
-               get_suc_msg.port=globals->port;
-               TRY{ // asking.
-                       gras_msg_send(temp_sock,"can_get_suc",&get_suc_msg);
-               }CATCH(e){
-                       gras_socket_close(temp_sock);
-                       RETHROW0("Unable to contact known host to get an area!: %s");
-               }
-               gras_socket_close(temp_sock);
-
-
-
-               TRY{ // waiting for a reply.
-                       INFO0("Waiting for reply!");
-                       gras_msg_wait(6000,"can_rep_suc",&temp_sock2,&rep_suc_msg);
-               }CATCH(e){
-                       RETHROW1("%s: Error waiting for an area:%s",globals->host);
-               }
-
-               // retreiving the data of the response.
-               globals->x1=rep_suc_msg.x1;
-               globals->x2=rep_suc_msg.x2;
-               globals->y1=rep_suc_msg.y1;
-               globals->y2=rep_suc_msg.y2;
-               strcpy(globals->north_host,rep_suc_msg.north_host);
-               globals->north_port=rep_suc_msg.north_port;
-               strcpy(globals->south_host,rep_suc_msg.south_host);
-               globals->south_port=rep_suc_msg.south_port;
-               strcpy(globals->east_host,rep_suc_msg.east_host);
-               globals->east_port=rep_suc_msg.east_port;
-               strcpy(globals->west_host,rep_suc_msg.west_host);
-               globals->west_port=rep_suc_msg.west_port;
-
-               gras_socket_close(temp_sock); // spare
-       }
-       INFO2("Node %s:%d inserted",globals->host,globals->port);
-
-       // associating messages to handlers.
-       register_messages();
-       gras_cb_register("can_get_suc",&node_get_suc_handler);
-       gras_cb_register("can_nuke",&node_nuke_handler);// can_test.c handler // include can_tests.c must be ON.
-       
-       TRY{
-         gras_msg_handle(10000.0); // waiting.. in case of someone has something to say.
-       }CATCH(e){
-               INFO4("My area is [%d;%d;%d;%d]",globals->x1,globals->x2,globals->y1,globals->y2);
-         //INFO0("Closing node, all has been done!");
-       }
-
-       gras_socket_close(globals->sock); // spare.
-       free(globals); // spare.
-       //gras_exit();
-       return(0);
+int node(int argc, char **argv)
+{
+  node_data_t *globals = NULL;
+  xbt_ex_t e;                   // the error variable used in TRY.. CATCH tokens.
+  gras_socket_t temp_sock = NULL;
+
+  rep_suc_t rep_suc_msg;
+
+  get_suc_t get_suc_msg;        // building the "get_suc" message.
+  gras_socket_t temp_sock2 = NULL;
+
+  INFO0("Starting");
+
+  /* 1. Init the GRAS infrastructure and declare my globals */
+  gras_init(&argc, argv);
+  gras_os_sleep((15 - gras_os_getpid()) * 20);  // wait a bit.
+
+  globals = gras_userdata_new(node_data_t);
+
+  globals->xId = atoi(argv[1]); // x coordinate of the node.
+  globals->yId = atoi(argv[2]); // y coordinate of the node.
+  globals->port = atoi(argv[3]);        // node port
+  globals->sock = gras_socket_server(globals->port);    // node socket.
+  snprintf(globals->host, 1024, gras_os_myname());      // node name.
+  globals->version = 0;         // node version (used for fun)
+
+  /* 2. Inserting the Node */
+  INFO2("Inserting node %s:%d", globals->host, globals->port);
+  if (argc == 4) {              // the node is a server, then he has the whole area.
+    globals->x1 = 0;
+    globals->x2 = 1000;
+    globals->y1 = 0;
+    globals->y2 = 1000;
+  } else {                      // asking for an area.
+    INFO1("Contacting %s so as to request for an area", argv[4]);
+
+    TRY {
+      temp_sock = gras_socket_client(argv[4], atoi(argv[5]));
+    }
+    CATCH(e) {
+      RETHROW0("Unable to connect known host to request for an area!: %s");
+    }
+
+
+    get_suc_msg.xId = globals->xId;
+    get_suc_msg.yId = globals->yId;
+    strcpy(get_suc_msg.host, globals->host);
+    get_suc_msg.port = globals->port;
+    TRY {                       // asking.
+      gras_msg_send(temp_sock, "can_get_suc", &get_suc_msg);
+    }
+    CATCH(e) {
+      gras_socket_close(temp_sock);
+      RETHROW0("Unable to contact known host to get an area!: %s");
+    }
+    gras_socket_close(temp_sock);
+
+
+
+    TRY {                       // waiting for a reply.
+      INFO0("Waiting for reply!");
+      gras_msg_wait(6000, "can_rep_suc", &temp_sock2, &rep_suc_msg);
+    }
+    CATCH(e) {
+      RETHROW1("%s: Error waiting for an area:%s", globals->host);
+    }
+
+    // retreiving the data of the response.
+    globals->x1 = rep_suc_msg.x1;
+    globals->x2 = rep_suc_msg.x2;
+    globals->y1 = rep_suc_msg.y1;
+    globals->y2 = rep_suc_msg.y2;
+    strcpy(globals->north_host, rep_suc_msg.north_host);
+    globals->north_port = rep_suc_msg.north_port;
+    strcpy(globals->south_host, rep_suc_msg.south_host);
+    globals->south_port = rep_suc_msg.south_port;
+    strcpy(globals->east_host, rep_suc_msg.east_host);
+    globals->east_port = rep_suc_msg.east_port;
+    strcpy(globals->west_host, rep_suc_msg.west_host);
+    globals->west_port = rep_suc_msg.west_port;
+
+    gras_socket_close(temp_sock);       // spare
+  }
+  INFO2("Node %s:%d inserted", globals->host, globals->port);
+
+  // associating messages to handlers.
+  register_messages();
+  gras_cb_register("can_get_suc", &node_get_suc_handler);
+  gras_cb_register("can_nuke", &node_nuke_handler);     // can_test.c handler // include can_tests.c must be ON.
+
+  TRY {
+    gras_msg_handle(10000.0);   // waiting.. in case of someone has something to say.
+  }
+  CATCH(e) {
+    INFO4("My area is [%d;%d;%d;%d]", globals->x1, globals->x2,
+          globals->y1, globals->y2);
+    //INFO0("Closing node, all has been done!");
+  }
+
+  gras_socket_close(globals->sock);     // spare.
+  free(globals);                // spare.
+  //gras_exit();
+  return (0);
 }
 
 // END
index 80eca19..8742379 100644 (file)
@@ -1,5 +1,5 @@
 /* Broken Peer-To-Peer CAN simulator                                        */
+
 /* Copyright (c) 2006, 2007, 2010. The SimGrid Team.
  * All rights reserved.                                                     */
 
 
 #include <time.h>
 //#include "gras.h"
-#include "types.h" // header containing the typedef struct of a node
+#include "types.h"              // header containing the typedef struct of a node
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(can,"Messages specific to this example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(can, "Messages specific to this example");
 
 // struct of a "nuke" message, when a node send a nuke to (xId;yId).
-GRAS_DEFINE_TYPE(s_nuke,
-       struct s_nuke{
-         int xId;
-         int yId;
-         char host[1024]; // original expeditor..
-         int port; // ..and his port.
-
-         int version; // fun.
-       };
-);
+GRAS_DEFINE_TYPE(s_nuke, struct s_nuke {
+                 int xId; int yId; char host[1024];     // original expeditor..
+                 int port;      // ..and his port.
+                 int version;   // fun.
+                 };);
+
 typedef struct s_nuke nuke_t;
 
 // the function that start the **** War of the Nodes ****
-int start_war(int argc,char **argv);
-int start_war(int argc,char **argv){
-       gras_socket_t temp_sock=NULL;
-       nuke_t nuke_msg;
-  xbt_ex_t e; // the error variable used in TRY.. CATCH tokens.
+int start_war(int argc, char **argv);
+int start_war(int argc, char **argv)
+{
+  gras_socket_t temp_sock = NULL;
+  nuke_t nuke_msg;
+  xbt_ex_t e;                   // the error variable used in TRY.. CATCH tokens.
   //return 0; // in order to inhibit the War of the Nodes 
-  gras_init(&argc,argv);
-  gras_os_sleep((15-gras_os_getpid())*20+200); // wait a bit.
+  gras_init(&argc, argv);
+  gras_os_sleep((15 - gras_os_getpid()) * 20 + 200);    // wait a bit.
+
 
-       
-  TRY{ // contacting the bad guy that will launch the War.
-    temp_sock=gras_socket_client(gras_os_myname(),atoi(argv[1]));
-  }CATCH(e){
+  TRY {                         // contacting the bad guy that will launch the War.
+    temp_sock = gras_socket_client(gras_os_myname(), atoi(argv[1]));
+  } CATCH(e) {
     RETHROW0("Unable to connect known host so as to declare WAR!: %s");
   }
-  
 
-  nuke_msg.xId=-1;
-  nuke_msg.yId=-1;
-  nuke_msg.version=atoi(argv[2]); 
-  strcpy(nuke_msg.host,gras_os_myname());
-  nuke_msg.port=atoi(argv[1]);
 
-  TRY{
-    gras_msg_send(temp_sock,"can_nuke",&nuke_msg);
-  }CATCH(e){
+  nuke_msg.xId = -1;
+  nuke_msg.yId = -1;
+  nuke_msg.version = atoi(argv[2]);
+  strcpy(nuke_msg.host, gras_os_myname());
+  nuke_msg.port = atoi(argv[1]);
+
+  TRY {
+    gras_msg_send(temp_sock, "can_nuke", &nuke_msg);
+  } CATCH(e) {
     gras_socket_close(temp_sock);
-    RETHROW0("Unable to contact known host so as to declare WAR!!!!!!!!!!!!!!!!!!!!!: %s");
+    RETHROW0
+        ("Unable to contact known host so as to declare WAR!!!!!!!!!!!!!!!!!!!!!: %s");
   }
   gras_socket_close(temp_sock); // spare.
-  gras_exit(); // spare.
+  gras_exit();                  // spare.
   return 0;
 }
 
 // the function thaht send the nuke "msg" on (xId;yId), if it's not on me :p.
-static int send_nuke(nuke_t *msg, int xId, int yId){
-  node_data_t *globals=(node_data_t*)gras_userdata_get();
-  gras_socket_t temp_sock=NULL;
-   xbt_ex_t e; // the error variable used in TRY.. CATCH tokens.
-
-  if(xId>=globals->x1 && xId<=globals->x2 && yId>=globals->y1 && yId<=globals->y2){
+static int send_nuke(nuke_t * msg, int xId, int yId)
+{
+  node_data_t *globals = (node_data_t *) gras_userdata_get();
+  gras_socket_t temp_sock = NULL;
+  xbt_ex_t e;                   // the error variable used in TRY.. CATCH tokens.
+
+  if (xId >= globals->x1 && xId <= globals->x2 && yId >= globals->y1
+      && yId <= globals->y2) {
     INFO0("Nuclear launch missed");
     return 0;
-  }
-  else{
+  } else {
     char host[1024];
-    int port=0;
-    
-    if(xId<globals->x1){
-      strcpy(host,globals->west_host);
-      port=globals->west_port;}
-    else if(xId>globals->x2){
-      strcpy(host,globals->east_host);
-      port=globals->east_port;}
-    else if(yId<globals->y1){
-      strcpy(host,globals->south_host);
-      port=globals->south_port;}
-    else if(yId>globals->y2){
-      strcpy(host,globals->north_host);
-      port=globals->north_port;}
-
-    msg->xId=xId;
-    msg->yId=yId;
-
-
-
-    TRY{ // sending the nuke.
-      temp_sock=gras_socket_client(host,port);
-    }CATCH(e){
+    int port = 0;
+
+    if (xId < globals->x1) {
+      strcpy(host, globals->west_host);
+      port = globals->west_port;
+    } else if (xId > globals->x2) {
+      strcpy(host, globals->east_host);
+      port = globals->east_port;
+    } else if (yId < globals->y1) {
+      strcpy(host, globals->south_host);
+      port = globals->south_port;
+    } else if (yId > globals->y2) {
+      strcpy(host, globals->north_host);
+      port = globals->north_port;
+    }
+
+    msg->xId = xId;
+    msg->yId = yId;
+
+
+
+    TRY {                       // sending the nuke.
+      temp_sock = gras_socket_client(host, port);
+    }
+    CATCH(e) {
       RETHROW0("Unable to connect the nuke!: %s");
     }
     //INFO4("%s ON %s %d %d <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<",globals->host,host,xId,yId);
-    TRY{
-      gras_msg_send(temp_sock,"can_nuke",msg);
-    }CATCH(e){
+    TRY {
+      gras_msg_send(temp_sock, "can_nuke", msg);
+    }
+    CATCH(e) {
       RETHROW0("Unable to send the nuke!: %s");
     }
     gras_socket_close(temp_sock);
-    INFO4("Nuke launched by %s to %s for (%d;%d)",globals->host,host,msg->xId,msg->yId);
+    INFO4("Nuke launched by %s to %s for (%d;%d)", globals->host, host,
+          msg->xId, msg->yId);
     return 1;
   }
 }
 
 
-static int node_nuke_handler(gras_msg_cb_ctx_t ctx,void *payload_data){
-  gras_socket_t expeditor=gras_msg_cb_ctx_from(ctx);
-  nuke_t *incoming=(nuke_t*)payload_data;
-  node_data_t *globals=(node_data_t*)gras_userdata_get();
-  
-       int x;
-       int y;
-       nuke_t nuke_msg; // writing my name one the nuke.
-        gras_socket_t temp_sock=NULL;
-        xbt_ex_t e; // the error variable used in TRY.. CATCH tokens.
-       
-
-  if(incoming->xId==-1){ // i must start the War
-    INFO2("%s:%d declare the WAR!!!!!!!!!!!!!!!!!",globals->host,globals->port);
-    srand((unsigned int)time((time_t *)NULL));
-
-    do{
-      x=(int)(1000.0*rand()/(RAND_MAX+1.0));
-      y=(int)(1000.0*rand()/(RAND_MAX+1.0));
+static int node_nuke_handler(gras_msg_cb_ctx_t ctx, void *payload_data)
+{
+  gras_socket_t expeditor = gras_msg_cb_ctx_from(ctx);
+  nuke_t *incoming = (nuke_t *) payload_data;
+  node_data_t *globals = (node_data_t *) gras_userdata_get();
+
+  int x;
+  int y;
+  nuke_t nuke_msg;              // writing my name one the nuke.
+  gras_socket_t temp_sock = NULL;
+  xbt_ex_t e;                   // the error variable used in TRY.. CATCH tokens.
+
+
+  if (incoming->xId == -1) {    // i must start the War
+    INFO2("%s:%d declare the WAR!!!!!!!!!!!!!!!!!", globals->host,
+          globals->port);
+    srand((unsigned int) time((time_t *) NULL));
+
+    do {
+      x = (int) (1000.0 * rand() / (RAND_MAX + 1.0));
+      y = (int) (1000.0 * rand() / (RAND_MAX + 1.0));
     }
-    while(send_nuke(incoming,x,y)==0);
-    
-  }
-  else if(incoming->xId>=globals->x1 && incoming->xId<=globals->x2 && incoming->yId>=globals->y1 && incoming->yId<=globals->y2){ // the nuke crash on my area..
-    if(globals->version==incoming->version) // ..but i'm dead.
+    while (send_nuke(incoming, x, y) == 0);
+
+  } else if (incoming->xId >= globals->x1 && incoming->xId <= globals->x2 && incoming->yId >= globals->y1 && incoming->yId <= globals->y2) {    // the nuke crash on my area..
+    if (globals->version == incoming->version)  // ..but i'm dead.
       INFO0("I'm already dead :p");
-    else if((incoming->xId-globals->xId)/60==0 && (incoming->yId-globals->yId)/60==0){ // ..and it's on me, so i die :X.
-      globals->version=incoming->version;
-      INFO2("Euuuaarrrgghhhh...   %s killed %s !!!!!!!!!!!!!!!!!",incoming->host,globals->host);
-    }
-    else{ // and it miss me, i angry and i send my own nuke!
-      INFO1("%s was missed, and counteract!",globals->host);
+    else if ((incoming->xId - globals->xId) / 60 == 0 && (incoming->yId - globals->yId) / 60 == 0) {    // ..and it's on me, so i die :X.
+      globals->version = incoming->version;
+      INFO2("Euuuaarrrgghhhh...   %s killed %s !!!!!!!!!!!!!!!!!",
+            incoming->host, globals->host);
+    } else {                    // and it miss me, i angry and i send my own nuke!
+      INFO1("%s was missed, and counteract!", globals->host);
       /*int x1=(int)(1000.0*rand()/(RAND_MAX+1.0));
-      int y1=(int)(1000.0*rand()/(RAND_MAX+1.0));
-      int x2=(int)(1000.0*rand()/(RAND_MAX+1.0));
-      int y2=(int)(1000.0*rand()/(RAND_MAX+1.0));
-      int x3=(int)(1000.0*rand()/(RAND_MAX+1.0));
-      int y3=(int)(1000.0*rand()/(RAND_MAX+1.0));
-      int x4=(int)(1000.0*rand()/(RAND_MAX+1.0));
-      int y4=(int)(1000.0*rand()/(RAND_MAX+1.0));*/
-      
-
-         nuke_msg.version=incoming->version;
-      strcpy(nuke_msg.host,globals->host);
-      nuke_msg.port=globals->port;
-      
-         
-      do{
-       x=(int)(1000.0*rand()/(RAND_MAX+1.0));
-       y=(int)(1000.0*rand()/(RAND_MAX+1.0));
+         int y1=(int)(1000.0*rand()/(RAND_MAX+1.0));
+         int x2=(int)(1000.0*rand()/(RAND_MAX+1.0));
+         int y2=(int)(1000.0*rand()/(RAND_MAX+1.0));
+         int x3=(int)(1000.0*rand()/(RAND_MAX+1.0));
+         int y3=(int)(1000.0*rand()/(RAND_MAX+1.0));
+         int x4=(int)(1000.0*rand()/(RAND_MAX+1.0));
+         int y4=(int)(1000.0*rand()/(RAND_MAX+1.0)); */
+
+
+      nuke_msg.version = incoming->version;
+      strcpy(nuke_msg.host, globals->host);
+      nuke_msg.port = globals->port;
+
+
+      do {
+        x = (int) (1000.0 * rand() / (RAND_MAX + 1.0));
+        y = (int) (1000.0 * rand() / (RAND_MAX + 1.0));
       }
-      while(send_nuke(&nuke_msg,x,y)==0); // and sending if it's not on me.
+      while (send_nuke(&nuke_msg, x, y) == 0);  // and sending if it's not on me.
     }
-  }
-  else{ // the nuke isn't for me, so i forward her.
+  } else {                      // the nuke isn't for me, so i forward her.
     char host[1024];
-    int port=0;
-    
-    if(incoming->xId<globals->x1){
-      strcpy(host,globals->west_host);
-      port=globals->west_port;}
-    else if(incoming->xId>globals->x2){
-      strcpy(host,globals->east_host);
-      port=globals->east_port;}
-    else if(incoming->yId<globals->y1){
-      strcpy(host,globals->south_host);
-      port=globals->south_port;}
-    else if(incoming->yId>globals->y2){
-      strcpy(host,globals->north_host);
-      port=globals->north_port;}
-    
-
-
-       TRY{
-      temp_sock=gras_socket_client(host,port);
-    }CATCH(e){
+    int port = 0;
+
+    if (incoming->xId < globals->x1) {
+      strcpy(host, globals->west_host);
+      port = globals->west_port;
+    } else if (incoming->xId > globals->x2) {
+      strcpy(host, globals->east_host);
+      port = globals->east_port;
+    } else if (incoming->yId < globals->y1) {
+      strcpy(host, globals->south_host);
+      port = globals->south_port;
+    } else if (incoming->yId > globals->y2) {
+      strcpy(host, globals->north_host);
+      port = globals->north_port;
+    }
+
+
+
+    TRY {
+      temp_sock = gras_socket_client(host, port);
+    }
+    CATCH(e) {
       RETHROW0("Unable to connect the nuke!: %s");
     }
-    TRY{
-      gras_msg_send(temp_sock,"can_nuke",incoming);
-    }CATCH(e){
+    TRY {
+      gras_msg_send(temp_sock, "can_nuke", incoming);
+    }
+    CATCH(e) {
       RETHROW0("Unable to send the nuke!: %s");
     }
-    INFO4("Nuke re-aimed by %s to %s for (%d;%d)",globals->host,host,incoming->xId,incoming->yId);
+    INFO4("Nuke re-aimed by %s to %s for (%d;%d)", globals->host, host,
+          incoming->xId, incoming->yId);
     gras_socket_close(temp_sock);
   }
   gras_socket_close(expeditor); // spare.
 
-  TRY{
-    gras_msg_handle(10000.0); // wait a bit, in case of..
-  }CATCH(e){
-    INFO4("My area is [%d;%d;%d;%d]",globals->x1,globals->x2,globals->y1,globals->y2);
+  TRY {
+    gras_msg_handle(10000.0);   // wait a bit, in case of..
+  }
+  CATCH(e) {
+    INFO4("My area is [%d;%d;%d;%d]", globals->x1, globals->x2,
+          globals->y1, globals->y2);
     //INFO0("Closing node, all has been done!");
-    }
-   return 0;
+  }
+  return 0;
 }
 
 // END
index 4e2f0d1..ddeb68f 100644 (file)
@@ -7,26 +7,26 @@
 #include "gras.h"
 
 /* Global private data */
-typedef struct{
-       gras_socket_t sock; /* server socket on which I'm listening */
-       int xId;
-       int yId;
-       char host[1024]; /* my host name */
-       int port; /* port on which I'm listening FIXME */
+typedef struct {
+  gras_socket_t sock;           /* server socket on which I'm listening */
+  int xId;
+  int yId;
+  char host[1024];              /* my host name */
+  int port;                     /* port on which I'm listening FIXME */
 
-       int x1; // Xmin
-       int x2; // Xmax
-       int y1; // Ymin
-       int y2; // Ymax
+  int x1;                       // Xmin
+  int x2;                       // Xmax
+  int y1;                       // Ymin
+  int y2;                       // Ymax
 
-       char north_host[1024];
-       int north_port;
-       char south_host[1024];
-       int south_port;
-       char east_host[1024];
-       int east_port;
-       char west_host[1024];
-       int west_port;
+  char north_host[1024];
+  int north_port;
+  char south_host[1024];
+  int south_port;
+  char east_host[1024];
+  int east_port;
+  char west_host[1024];
+  int west_port;
 
-        int version;
-}node_data_t;
+  int version;
+} node_data_t;
index b6b9de1..debf98f 100644 (file)
@@ -11,9 +11,9 @@
 static int closest_preceding_node(int id);
 static void check_predecessor(void);
 
-XBT_LOG_NEW_DEFAULT_CATEGORY(chord,"Messages specific to this example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(chord, "Messages specific to this example");
 
-typedef enum msg_typus{
+typedef enum msg_typus {
   PING,
   PONG,
   GET_PRE,
@@ -21,7 +21,7 @@ typedef enum msg_typus{
   GET_SUC,
   REP_SUC,
   STD,
-}msg_typus;
+} msg_typus;
 
 /*GRAS_DEFINE_TYPE(s_pbio,
   struct s_pbio{
@@ -33,76 +33,69 @@ typedef enum msg_typus{
 typedef struct s_pbio pbio_t;*/
 
 /*GRAS_DEFINE_TYPE(s_ping,*/
-  struct s_ping{
-    int id;
-  };
+struct s_ping {
+  int id;
+};
 /*);*/
 typedef struct s_ping ping_t;
 
 /*GRAS_DEFINE_TYPE(s_pong,*/
-  struct s_pong{
-    int id;
-    int failed;
-  };
+struct s_pong {
+  int id;
+  int failed;
+};
 /*);*/
 typedef struct s_pong pong_t;
 
-GRAS_DEFINE_TYPE(s_notify,
-  struct s_notify{
-    int id;
-    char host[1024];
-    int port;
-  };
-);
+GRAS_DEFINE_TYPE(s_notify, struct s_notify {
+                 int id; char host[1024]; int port;};);
+
 typedef struct s_notify notify_t;
 
-GRAS_DEFINE_TYPE(s_get_suc,
-  struct s_get_suc{
-    int id;
-  };
-);
+GRAS_DEFINE_TYPE(s_get_suc, struct s_get_suc {
+                 int id;};);
+
 typedef struct s_get_suc get_suc_t;
 
-GRAS_DEFINE_TYPE(s_rep_suc,
-  struct s_rep_suc{
-    int id;
-    char host[1024];
-    int port;
-  };
-);
+GRAS_DEFINE_TYPE(s_rep_suc, struct s_rep_suc {
+                 int id; char host[1024]; int port;};);
+
 typedef struct s_rep_suc rep_suc_t;
 
-typedef struct finger_elem{
+typedef struct finger_elem {
   int id;
   char host[1024];
   int port;
-}finger_elem;
+} finger_elem;
 
 
 
-static void register_messages(){
+static void register_messages()
+{
 /*  gras_msgtype_declare("chord",gras_datadesc_by_symbol(s_pbio));*/
-  gras_msgtype_declare("chord_get_suc",gras_datadesc_by_symbol(s_get_suc));
-  gras_msgtype_declare("chord_rep_suc",gras_datadesc_by_symbol(s_rep_suc));
-  gras_msgtype_declare("chord_notify",gras_datadesc_by_symbol(s_notify));
+  gras_msgtype_declare("chord_get_suc",
+                       gras_datadesc_by_symbol(s_get_suc));
+  gras_msgtype_declare("chord_rep_suc",
+                       gras_datadesc_by_symbol(s_rep_suc));
+  gras_msgtype_declare("chord_notify", gras_datadesc_by_symbol(s_notify));
 }
 
 /* Global private data */
-typedef struct{
-  gras_socket_t sock; /* server socket on which I'm listening */
-  int id; /* my id number */
-  char host[1024]; /* my host name */
-  int port; /* port on which I'm listening FIXME */
-  int fingers; /* how many fingers */
-  finger_elem *finger; /* finger table */
-  int next_to_fix; /* next in the finger list to be checked */
-  int pre_id; /* predecessor id */
-  char pre_host[1024]; /* predecessor host */
-  int pre_port; /* predecessor port */
-}node_data_t;
-
-
-int node(int argc,char **argv);
+typedef struct {
+  gras_socket_t sock;           /* server socket on which I'm listening */
+  int id;                       /* my id number */
+  char host[1024];              /* my host name */
+  int port;                     /* port on which I'm listening FIXME */
+  int fingers;                  /* how many fingers */
+  finger_elem *finger;          /* finger table */
+  int next_to_fix;              /* next in the finger list to be checked */
+  int pre_id;                   /* predecessor id */
+  char pre_host[1024];          /* predecessor host */
+  int pre_port;                 /* predecessor port */
+} node_data_t;
+
+
+int node(int argc, char **argv);
 
 /*static int node_cb_chord_handler(gras_socket_t expeditor,void *payload_data){
   xbt_ex_t e;
@@ -116,151 +109,166 @@ int node(int argc,char **argv);
 
 }*/
 
-static int node_cb_get_suc_handler(gras_msg_cb_ctx_t ctx,void *payload_data){
-  gras_socket_t expeditor=gras_msg_cb_ctx_from(ctx);   
+static int node_cb_get_suc_handler(gras_msg_cb_ctx_t ctx,
+                                   void *payload_data)
+{
+  gras_socket_t expeditor = gras_msg_cb_ctx_from(ctx);
   xbt_ex_t e;
-  get_suc_t incoming=*(get_suc_t*)payload_data;
+  get_suc_t incoming = *(get_suc_t *) payload_data;
   rep_suc_t outgoing;
-  node_data_t *globals=(node_data_t*)gras_userdata_get();
+  node_data_t *globals = (node_data_t *) gras_userdata_get();
   INFO2("Received a get_successor message from %s for %d",
-        gras_socket_peer_name(expeditor),incoming.id);
-  if((globals->id==globals->finger[0].id)||
-     (incoming.id>globals->id&&incoming.id<=globals->finger[0].id)){
-    outgoing.id=globals->finger[0].id;
-    snprintf(outgoing.host,1024,globals->finger[0].host);
-    outgoing.port=globals->finger[0].port;
+        gras_socket_peer_name(expeditor), incoming.id);
+  if ((globals->id == globals->finger[0].id) ||
+      (incoming.id > globals->id
+       && incoming.id <= globals->finger[0].id)) {
+    outgoing.id = globals->finger[0].id;
+    snprintf(outgoing.host, 1024, globals->finger[0].host);
+    outgoing.port = globals->finger[0].port;
     INFO0("My successor is his successor!");
-  }else{
+  } else {
     gras_socket_t temp_sock;
-    int contact=closest_preceding_node(incoming.id);
-    if(contact==-1){
-      outgoing.id=globals->finger[0].id;
-      snprintf(outgoing.host,1024,globals->finger[0].host);
-      outgoing.port=globals->finger[0].port;
+    int contact = closest_preceding_node(incoming.id);
+    if (contact == -1) {
+      outgoing.id = globals->finger[0].id;
+      snprintf(outgoing.host, 1024, globals->finger[0].host);
+      outgoing.port = globals->finger[0].port;
       INFO0("My successor is his successor!");
-    }else{
-      get_suc_t asking;asking.id=incoming.id;
-      TRY{
-        temp_sock=gras_socket_client(globals->finger[contact].host,
-                                     globals->finger[contact].port);
-      }CATCH(e){
+    } else {
+      get_suc_t asking;
+      asking.id = incoming.id;
+      TRY {
+        temp_sock = gras_socket_client(globals->finger[contact].host,
+                                       globals->finger[contact].port);
+      }
+      CATCH(e) {
         RETHROW0("Unable to connect!: %s");
       }
-      TRY{
-        gras_msg_send(temp_sock,"chord_get_suc",&asking);
-      }CATCH(e){
+      TRY {
+        gras_msg_send(temp_sock, "chord_get_suc", &asking);
+      }
+      CATCH(e) {
         RETHROW0("Unable to ask!: %s");
       }
-      gras_msg_wait(10.,"chord_rep_suc",&temp_sock, &outgoing);
+      gras_msg_wait(10., "chord_rep_suc", &temp_sock, &outgoing);
     }
   }
-  
-  TRY{
-    gras_msg_send(expeditor,"chord_rep_suc",&outgoing);
+
+  TRY {
+    gras_msg_send(expeditor, "chord_rep_suc", &outgoing);
     INFO0("Successor information sent!");
-  }CATCH(e){
+  }
+  CATCH(e) {
     RETHROW2("%s:Timeout sending successor information to %s: %s",
-             globals->host,gras_socket_peer_name(expeditor));
+             globals->host, gras_socket_peer_name(expeditor));
   }
   gras_socket_close(expeditor);
   return 0;
 }
 
-static int closest_preceding_node(int id){
-  node_data_t *globals=(node_data_t*)gras_userdata_get();
+static int closest_preceding_node(int id)
+{
+  node_data_t *globals = (node_data_t *) gras_userdata_get();
   int i;
-  for(i=globals->fingers-1;i>=0;i--){
-    if(globals->finger[i].id>globals->id&&globals->finger[i].id<id){
-      return(i);
+  for (i = globals->fingers - 1; i >= 0; i--) {
+    if (globals->finger[i].id > globals->id && globals->finger[i].id < id) {
+      return (i);
     }
   }
-  
+
   return i;
 }
 
-static int node_cb_notify_handler(gras_msg_cb_ctx_t ctx,void *payload_data){
-  gras_socket_t expeditor=gras_msg_cb_ctx_from(ctx);   
-  /*xbt_ex_t e;*/
-  notify_t incoming=*(notify_t*)payload_data;
-  node_data_t *globals=(node_data_t*)gras_userdata_get();
+static int node_cb_notify_handler(gras_msg_cb_ctx_t ctx,
+                                  void *payload_data)
+{
+  gras_socket_t expeditor = gras_msg_cb_ctx_from(ctx);
+  /*xbt_ex_t e; */
+  notify_t incoming = *(notify_t *) payload_data;
+  node_data_t *globals = (node_data_t *) gras_userdata_get();
   INFO2("Received a notifying message from %s as %d",
-        gras_socket_peer_name(expeditor),incoming.id);
-  if(globals->pre_id==-1||
-     (incoming.id>globals->pre_id&&incoming.id<globals->id)){
-    globals->pre_id=incoming.id;
-    snprintf(globals->pre_host,1024,incoming.host);
-    globals->pre_port=incoming.port;
+        gras_socket_peer_name(expeditor), incoming.id);
+  if (globals->pre_id == -1 ||
+      (incoming.id > globals->pre_id && incoming.id < globals->id)) {
+    globals->pre_id = incoming.id;
+    snprintf(globals->pre_host, 1024, incoming.host);
+    globals->pre_port = incoming.port;
     INFO0("Set as my new predecessor!");
   }
   return 0;
 }
 
-static void fix_fingers(){
-       get_suc_t get_suc_msg;
+static void fix_fingers()
+{
+  get_suc_t get_suc_msg;
   xbt_ex_t e;
-  gras_socket_t temp_sock=NULL;
-  gras_socket_t temp_sock2=NULL;
+  gras_socket_t temp_sock = NULL;
+  gras_socket_t temp_sock2 = NULL;
   rep_suc_t rep_suc_msg;
-  node_data_t *globals=(node_data_t*)gras_userdata_get();
+  node_data_t *globals = (node_data_t *) gras_userdata_get();
 
-  TRY{
-    temp_sock=gras_socket_client(globals->host,globals->port);
-  }CATCH(e){
+  TRY {
+    temp_sock = gras_socket_client(globals->host, globals->port);
+  } CATCH(e) {
     RETHROW0("Unable to contact known host: %s");
   }
 
-  get_suc_msg.id=globals->id;
-  TRY{
-    gras_msg_send(temp_sock,"chord_get_suc",&get_suc_msg);
-  }CATCH(e){
+  get_suc_msg.id = globals->id;
+  TRY {
+    gras_msg_send(temp_sock, "chord_get_suc", &get_suc_msg);
+  } CATCH(e) {
     gras_socket_close(temp_sock);
     RETHROW0("Unable to contact known host to get successor!: %s");
   }
 
-  TRY{
+  TRY {
     INFO0("Waiting for reply!");
-    gras_msg_wait(6000,"chord_rep_suc",&temp_sock2, &rep_suc_msg);
-  }CATCH(e){
-    RETHROW1("%s: Error waiting for successor:%s",globals->host);
+    gras_msg_wait(6000, "chord_rep_suc", &temp_sock2, &rep_suc_msg);
+  } CATCH(e) {
+    RETHROW1("%s: Error waiting for successor:%s", globals->host);
   }
-  globals->finger[0].id=rep_suc_msg.id;
-  snprintf(globals->finger[0].host,1024,rep_suc_msg.host);
-  globals->finger[0].port=rep_suc_msg.port;
-  INFO1("→ Finger %d fixed!",globals->next_to_fix);
+  globals->finger[0].id = rep_suc_msg.id;
+  snprintf(globals->finger[0].host, 1024, rep_suc_msg.host);
+  globals->finger[0].port = rep_suc_msg.port;
+  INFO1("→ Finger %d fixed!", globals->next_to_fix);
   gras_socket_close(temp_sock);
-  
-  globals->next_to_fix=(++globals->next_to_fix==globals->fingers)?
-                       0:globals->next_to_fix;
+
+  globals->next_to_fix = (++globals->next_to_fix == globals->fingers) ?
+      0 : globals->next_to_fix;
 }
 
-static void check_predecessor(){
-  node_data_t *globals = (node_data_t*)gras_userdata_get();
+static void check_predecessor()
+{
+  node_data_t *globals = (node_data_t *) gras_userdata_get();
   gras_socket_t temp_sock;
-   ping_t ping;
+  ping_t ping;
   pong_t pong;
   xbt_ex_t e;
-  if (globals->pre_id == -1){
+  if (globals->pre_id == -1) {
     return;
   }
-  TRY{
-    temp_sock = gras_socket_client( globals->pre_host, globals->pre_port );
-  }CATCH(e){
+  TRY {
+    temp_sock = gras_socket_client(globals->pre_host, globals->pre_port);
+  }
+  CATCH(e) {
     globals->pre_id = -1;
     globals->pre_host[0] = 0;
     globals->pre_port = 0;
   }
 
   ping.id = 0;
-  TRY{
-    gras_msg_send( temp_sock, "chord_ping",&ping);
-  }CATCH(e){
+  TRY {
+    gras_msg_send(temp_sock, "chord_ping", &ping);
+  }
+  CATCH(e) {
     globals->pre_id = -1;
     globals->pre_host[0] = 0;
     globals->pre_port = 0;
   }
-  TRY{
-    gras_msg_wait( 60, "chord_pong", &temp_sock, &pong);
-  }CATCH(e){
+  TRY {
+    gras_msg_wait(60, "chord_pong", &temp_sock, &pong);
+  }
+  CATCH(e) {
     globals->pre_id = -1;
     globals->pre_host[0] = 0;
     globals->pre_port = 0;
@@ -268,120 +276,127 @@ static void check_predecessor(){
   gras_socket_close(temp_sock);
 }
 
-int node(int argc,char **argv){
-  node_data_t *globals=NULL;
-  gras_socket_t temp_sock=NULL;
-  gras_socket_t temp_sock2=NULL;
+int node(int argc, char **argv)
+{
+  node_data_t *globals = NULL;
+  gras_socket_t temp_sock = NULL;
+  gras_socket_t temp_sock2 = NULL;
   get_suc_t get_suc_msg;
   rep_suc_t rep_suc_msg;
 
   xbt_ex_t e;
 
-  int create=0;
-  int other_port=-1;
+  int create = 0;
+  int other_port = -1;
   char *other_host;
   notify_t notify_msg;
   int l;
 
   /* 1. Init the GRAS infrastructure and declare my globals */
-  gras_init(&argc,argv);
-   
-  gras_os_sleep((15-gras_os_getpid())*20);
-   
-  globals=gras_userdata_new(node_data_t);
-
-  globals->id=atoi(argv[1]);
-  globals->port=atoi(argv[2]);
-  globals->fingers=0;
-  globals->finger=NULL;
-  globals->pre_id=-1;
-  globals->pre_host[0]=0;
-  globals->pre_port=-1;
-  
-  snprintf(globals->host,1024,gras_os_myname());
-
-  if(argc==3){
-    create=1;
-  }else{
-    asprintf(&other_host,"%s",argv[3]);
-    other_port=atoi(argv[4]);
+  gras_init(&argc, argv);
+
+  gras_os_sleep((15 - gras_os_getpid()) * 20);
+
+  globals = gras_userdata_new(node_data_t);
+
+  globals->id = atoi(argv[1]);
+  globals->port = atoi(argv[2]);
+  globals->fingers = 0;
+  globals->finger = NULL;
+  globals->pre_id = -1;
+  globals->pre_host[0] = 0;
+  globals->pre_port = -1;
+
+  snprintf(globals->host, 1024, gras_os_myname());
+
+  if (argc == 3) {
+    create = 1;
+  } else {
+    asprintf(&other_host, "%s", argv[3]);
+    other_port = atoi(argv[4]);
   }
-  
-  globals->sock=gras_socket_server(globals->port);
+
+  globals->sock = gras_socket_server(globals->port);
   gras_os_sleep(1.0);
 
   register_messages();
 
-  globals->finger=(finger_elem*)calloc(1,sizeof(finger_elem));
-  INFO2("Launching node %s:%d",globals->host,globals->port);
-  if(create){
+  globals->finger = (finger_elem *) calloc(1, sizeof(finger_elem));
+  INFO2("Launching node %s:%d", globals->host, globals->port);
+  if (create) {
     INFO0("→Creating ring");
-    globals->finger[0].id=globals->id;
-    snprintf(globals->finger[0].host,1024,globals->host);
-    globals->finger[0].port=globals->port;
-  }else{
-    INFO2("→Known node %s:%d",other_host,other_port);
+    globals->finger[0].id = globals->id;
+    snprintf(globals->finger[0].host, 1024, globals->host);
+    globals->finger[0].port = globals->port;
+  } else {
+    INFO2("→Known node %s:%d", other_host, other_port);
     INFO0("→Contacting to determine successor");
-    TRY{
-      temp_sock=gras_socket_client(other_host,other_port);
-    }CATCH(e){
+    TRY {
+      temp_sock = gras_socket_client(other_host, other_port);
+    }
+    CATCH(e) {
       RETHROW0("Unable to contact known host: %s");
     }
 
-       get_suc_msg.id=globals->id;
-    TRY{
-      gras_msg_send(temp_sock,"chord_get_suc", &get_suc_msg);
-    }CATCH(e){
+    get_suc_msg.id = globals->id;
+    TRY {
+      gras_msg_send(temp_sock, "chord_get_suc", &get_suc_msg);
+    }
+    CATCH(e) {
       gras_socket_close(temp_sock);
       RETHROW0("Unable to contact known host to get successor!: %s");
     }
 
-    TRY{
+    TRY {
       INFO0("Waiting for reply!");
-      gras_msg_wait(10.,"chord_rep_suc",&temp_sock2, &rep_suc_msg);
-    }CATCH(e){
-      RETHROW1("%s: Error waiting for successor:%s",globals->host);
+      gras_msg_wait(10., "chord_rep_suc", &temp_sock2, &rep_suc_msg);
+    }
+    CATCH(e) {
+      RETHROW1("%s: Error waiting for successor:%s", globals->host);
     }
-    globals->finger[0].id=rep_suc_msg.id;
-    snprintf(globals->finger[0].host,1024,rep_suc_msg.host);
-    globals->finger[0].port=rep_suc_msg.port;
-    INFO3("→Got successor : %d-%s:%d",globals->finger[0].id,
-          globals->finger[0].host,globals->finger[0].port);
+    globals->finger[0].id = rep_suc_msg.id;
+    snprintf(globals->finger[0].host, 1024, rep_suc_msg.host);
+    globals->finger[0].port = rep_suc_msg.port;
+    INFO3("→Got successor : %d-%s:%d", globals->finger[0].id,
+          globals->finger[0].host, globals->finger[0].port);
     gras_socket_close(temp_sock);
-    TRY{
-      temp_sock=gras_socket_client(globals->finger[0].host,
-                                   globals->finger[0].port);
-    }CATCH(e){
+    TRY {
+      temp_sock = gras_socket_client(globals->finger[0].host,
+                                     globals->finger[0].port);
+    }
+    CATCH(e) {
       RETHROW0("Unable to contact successor: %s");
     }
 
-       notify_msg.id=globals->id;
-    snprintf(notify_msg.host,1024,globals->host);
-    notify_msg.port=globals->port;
-    TRY{
-      gras_msg_send(temp_sock,"chord_notify",&notify_msg);
-    }CATCH(e){
+    notify_msg.id = globals->id;
+    snprintf(notify_msg.host, 1024, globals->host);
+    notify_msg.port = globals->port;
+    TRY {
+      gras_msg_send(temp_sock, "chord_notify", &notify_msg);
+    }
+    CATCH(e) {
       RETHROW0("Unable to notify successor! %s");
     }
   }
-  
+
   gras_cb_register("chord_get_suc", &node_cb_get_suc_handler);
-  gras_cb_register("chord_notify",  &node_cb_notify_handler);
-  /*gras_cb_register("chord_ping",&node_cb_ping_handler);*/
/* gras_timer_repeat(600.,fix_fingers);*/
-  /*while(1){*/
+  gras_cb_register("chord_notify", &node_cb_notify_handler);
+  /*gras_cb_register("chord_ping",&node_cb_ping_handler); */
 /* gras_timer_repeat(600.,fix_fingers); */
+  /*while(1){ */
 
-  for(l=0;l<50;l++){
-    TRY{
+  for (l = 0; l < 50; l++) {
+    TRY {
       gras_msg_handle(6000000.0);
-    }CATCH(e){
+    }
+    CATCH(e) {
     }
   }
-  /*}*/
-  
+  /*} */
+
   gras_socket_close(globals->sock);
   free(globals);
   gras_exit();
   INFO0("Done");
-  return(0);
+  return (0);
 }
index 27597d9..d75975a 100644 (file)
@@ -33,7 +33,8 @@ static int server_cb_ping_handler(gras_msg_cb_ctx_t ctx, void *payload)
   /* 3. Log which client connected */
   INFO3(">>>>>>>> Got message PING(%d) from %s:%d <<<<<<<<",
         msg,
-        gras_socket_peer_name(expeditor), gras_socket_peer_port(expeditor));
+        gras_socket_peer_name(expeditor),
+        gras_socket_peer_port(expeditor));
 
   /* 4. Change the value of the msg variable */
   msg = 4321;
@@ -93,7 +94,8 @@ int server(int argc, char *argv[])
 
   /* 7. Housekeeping */
   if (!globals->endcondition)
-    WARN0("An error occured, the endcondition was not set by the callback");
+    WARN0
+        ("An error occured, the endcondition was not set by the callback");
 
   /* 8. Free the allocated resources, and shut GRAS down */
   gras_socket_close(globals->sock);
index 78778ef..0ad4e98 100755 (executable)
@@ -21,8 +21,9 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(pmm, "Parallel Matrix Multiplication");
 
 /* struct for recovering results */
 GRAS_DEFINE_TYPE(s_result, struct s_result {
-                 int linepos;
-                 int rowpos; xbt_matrix_t C GRAS_ANNOTE(subtype, double);});
+                 int linepos; int rowpos;
+                 xbt_matrix_t C GRAS_ANNOTE(subtype, double);
+                 });
 
 typedef struct s_result result_t;
 
@@ -33,7 +34,8 @@ GRAS_DEFINE_TYPE(s_pmm_assignment, struct s_pmm_assignment {
                  xbt_peer_t line[NEIGHBOR_COUNT];
                  xbt_peer_t row[NEIGHBOR_COUNT];
                  xbt_matrix_t A GRAS_ANNOTE(subtype, double);
-                 xbt_matrix_t B GRAS_ANNOTE(subtype, double);});
+                 xbt_matrix_t B GRAS_ANNOTE(subtype, double);
+                 });
 
 typedef struct s_pmm_assignment s_pmm_assignment_t;
 
@@ -55,11 +57,11 @@ static void register_messages(void)
 
   /* send data between slaves */
   gras_msgtype_declare("dataA",
-                       gras_datadesc_matrix(gras_datadesc_by_name("double"),
-                                            NULL));
+                       gras_datadesc_matrix(gras_datadesc_by_name
+                                            ("double"), NULL));
   gras_msgtype_declare("dataB",
-                       gras_datadesc_matrix(gras_datadesc_by_name("double"),
-                                            NULL));
+                       gras_datadesc_matrix(gras_datadesc_by_name
+                                            ("double"), NULL));
 
   /* synchronization message */
   gras_msgtype_declare("pmm_sync", 0);
@@ -113,8 +115,9 @@ int master(int argc, char *argv[])
   /* friends, we're ready. Come and play */
   INFO0("Wait for peers for 2 sec");
   gras_msg_handleall(2);
-  while (xbt_dynar_length(peers)<9) {
-    INFO1("Got only %ld pals. Wait 2 more seconds", xbt_dynar_length(peers));
+  while (xbt_dynar_length(peers) < 9) {
+    INFO1("Got only %ld pals. Wait 2 more seconds",
+          xbt_dynar_length(peers));
     gras_msg_handleall(2);
   }
   INFO1("Good. Got %ld pals", xbt_dynar_length(peers));
@@ -167,8 +170,9 @@ int master(int argc, char *argv[])
                                       submatrix_size * line,
                                       submatrix_size * row, NULL);
     assignment.B =
-      xbt_matrix_new_sub(B, submatrix_size, submatrix_size,
-                         submatrix_size * line, submatrix_size * row, NULL);
+        xbt_matrix_new_sub(B, submatrix_size, submatrix_size,
+                           submatrix_size * line, submatrix_size * row,
+                           NULL);
     row++;
     if (row >= PROC_MATRIX_SIZE) {
       row = 0;
@@ -181,18 +185,19 @@ int master(int argc, char *argv[])
   }
 
   /* synchronize slaves */
-  for (i = 0 ; i < PROC_MATRIX_SIZE ; i++) {
+  for (i = 0; i < PROC_MATRIX_SIZE; i++) {
     int j;
-    for (j = 0 ; j < SLAVE_COUNT ; j++)
+    for (j = 0; j < SLAVE_COUNT; j++)
       gras_msg_wait(600, "pmm_sync", NULL, NULL);
-    for (j = 0 ; j < SLAVE_COUNT ; j++)
+    for (j = 0; j < SLAVE_COUNT; j++)
       gras_msg_send(socket[j], "pmm_sync", NULL);
   }
 
   /* Retrieve the results */
   for (i = 0; i < SLAVE_COUNT; i++) {
     gras_msg_wait(6000, "result", &from, &result);
-    VERB2("%d slaves are done already. Waiting for %d", i + 1, SLAVE_COUNT);
+    VERB2("%d slaves are done already. Waiting for %d", i + 1,
+          SLAVE_COUNT);
     xbt_matrix_copy_values(C, result.C, submatrix_size, submatrix_size,
                            submatrix_size * result.linepos,
                            submatrix_size * result.rowpos, 0, 0, NULL);
@@ -204,13 +209,13 @@ int master(int argc, char *argv[])
     INFO0("XXXXXXXXXXXXXXXXXXXXXX Ok, the result matches expectations");
   else {
     WARN0("the result seems wrong");
-  if (DATA_MATRIX_SIZE < 30) {
-    INFO0("The Result of Multiplication is :");
-    xbt_matrix_dump(C, "C:res", 0, xbt_matrix_dump_display_double);
-  } else {
-    INFO1("Matrix size too big (%d>30) to be displayed here",
-          DATA_MATRIX_SIZE);
-  }
+    if (DATA_MATRIX_SIZE < 30) {
+      INFO0("The Result of Multiplication is :");
+      xbt_matrix_dump(C, "C:res", 0, xbt_matrix_dump_display_double);
+    } else {
+      INFO1("Matrix size too big (%d>30) to be displayed here",
+            DATA_MATRIX_SIZE);
+    }
   }
 
   amok_pm_group_shutdown("pmm");        /* Ok, we're out of here */
@@ -246,7 +251,7 @@ static int pmm_worker_cb(gras_msg_cb_ctx_t ctx, void *payload)
   int myline, myrow;
   xbt_matrix_t mydataA, mydataB;
   xbt_matrix_t bC =
-    xbt_matrix_double_new_zeros(submatrix_size, submatrix_size);
+      xbt_matrix_double_new_zeros(submatrix_size, submatrix_size);
 
   result_t result;
 
@@ -290,7 +295,8 @@ static int pmm_worker_cb(gras_msg_cb_ctx_t ctx, void *payload)
 
     /* a line brodcast */
     if (myline == step) {
-      VERB2("LINE: step(%d) = Myline(%d). Broadcast my data.", step, myline);
+      VERB2("LINE: step(%d) = Myline(%d). Broadcast my data.", step,
+            myline);
       for (l = 0; l < PROC_MATRIX_SIZE - 1; l++) {
         VERB1("LINE:   Send to %s", gras_socket_peer_name(socket_row[l]));
         gras_msg_send(socket_row[l], "dataB", &mydataB);
@@ -316,7 +322,8 @@ static int pmm_worker_cb(gras_msg_cb_ctx_t ctx, void *payload)
     if (myrow == step) {
       VERB2("ROW: step(%d)=myrow(%d). Broadcast my data.", step, myrow);
       for (l = 1; l < PROC_MATRIX_SIZE; l++) {
-        VERB1("ROW:   Send to %s", gras_socket_peer_name(socket_line[l - 1]));
+        VERB1("ROW:   Send to %s",
+              gras_socket_peer_name(socket_line[l - 1]));
         gras_msg_send(socket_line[l - 1], "dataA", &mydataA);
       }
       xbt_matrix_free(bA);
index 850b91d..ce8372e 100644 (file)
@@ -28,11 +28,11 @@ int alice(int argc, char *argv[])
 
   INFO0("== Dump all the properties of current host");
   xbt_dict_foreach(host_props, cursor, key, data)
-    INFO2("  Host property: '%s' has value: '%s'", key, data);
+      INFO2("  Host property: '%s' has value: '%s'", key, data);
 
   INFO0("== Dump all the properties of alice");
   xbt_dict_foreach(process_props, cursor, key, data)
-    if (!strncmp(key, "SG_TEST_", 8))
+      if (!strncmp(key, "SG_TEST_", 8))
     INFO2("  Process property: '%s' has value: '%s'", key, data);
 
   INFO0("== Try to get a process property that does not exist");
@@ -68,20 +68,21 @@ int bob(int argc, char *argv[])
 
   INFO0("== Dump all the properties of host1");
   xbt_dict_foreach(host_props, cursor, key, data)
-    INFO2("  Host property: '%s' has value: '%s'", key, data);
+      INFO2("  Host property: '%s' has value: '%s'", key, data);
 
   INFO0("== Try to get a property that does not exist");
   value = gras_os_host_property_value("non existing key");
   xbt_assert1(value == NULL,
-              "The key 'non existing key' exists (with value '%s')!!", value);
+              "The key 'non existing key' exists (with value '%s')!!",
+              value);
 
   INFO0
-    ("== Set a host property that alice will try to retrieve in SG (from bob->hello)");
+      ("== Set a host property that alice will try to retrieve in SG (from bob->hello)");
   xbt_dict_set(host_props, "from bob", xbt_strdup("hello"), xbt_free_f);
 
   INFO0("== Dump all the properties of host1 again to check the addition");
   xbt_dict_foreach(host_props, cursor, key, data)
-    INFO2("  Host property: '%s' has value: '%s'", key, data);
+      INFO2("  Host property: '%s' has value: '%s'", key, data);
 
   gras_os_sleep(1);             /* KILLME once bug on empty main is solved */
   gras_exit();
index c29f566..a0a42e9 100644 (file)
 
 #include "simix/simix.h"
 
-int master(int argc,char *argv[]);
-int worker(int argc,char *argv[]);
+int master(int argc, char *argv[]);
+int worker(int argc, char *argv[]);
 
 XBT_LOG_NEW_DEFAULT_CATEGORY(replay, "Messages specific to this example");
 
-static void declare_msg() {
+static void declare_msg()
+{
   amok_pm_init();
   xbt_workload_declare_datadesc();
-  gras_msgtype_declare("go",NULL);
+  gras_msgtype_declare("go", NULL);
   gras_msgtype_declare("commands",
-      gras_datadesc_dynar(
-          gras_datadesc_by_name("xbt_workload_elm_t"),xbt_workload_elm_free_voidp));
-  gras_msgtype_declare("chunk",gras_datadesc_by_name("xbt_workload_data_chunk_t"));
+                       gras_datadesc_dynar(gras_datadesc_by_name
+                                           ("xbt_workload_elm_t"),
+                                           xbt_workload_elm_free_voidp));
+  gras_msgtype_declare("chunk",
+                       gras_datadesc_by_name("xbt_workload_data_chunk_t"));
 }
 
-int master(int argc,char *argv[]) {
+int master(int argc, char *argv[])
+{
 
-  gras_init(&argc,argv);
+  gras_init(&argc, argv);
   declare_msg();
 
 
-  xbt_assert0(argc==3,"usage: replay_master tracefile port");
-  gras_socket_server(atoi(argv[2])); /* open my master socket, even if I don't use it */
-  xbt_dynar_t peers = amok_pm_group_new("replay");            /* group of slaves */
+  xbt_assert0(argc == 3, "usage: replay_master tracefile port");
+  gras_socket_server(atoi(argv[2]));    /* open my master socket, even if I don't use it */
+  xbt_dynar_t peers = amok_pm_group_new("replay");      /* group of slaves */
   xbt_peer_t peer;
   xbt_dynar_t cmds = xbt_workload_parse_file(argv[1]);
   xbt_workload_sort_who_date(cmds);
@@ -54,28 +58,30 @@ int master(int argc,char *argv[]) {
   xbt_ex_t e;
   xbt_dict_cursor_t dict_cursor;
 
-  xbt_dict_t pals_int=xbt_dict_new();
-  xbt_dynar_foreach(cmds,cursor,cmd) {
-    int *p = xbt_dict_get_or_null(pals_int,cmd->who);
+  xbt_dict_t pals_int = xbt_dict_new();
+  xbt_dynar_foreach(cmds, cursor, cmd) {
+    int *p = xbt_dict_get_or_null(pals_int, cmd->who);
     if (!p) {
-      p=(int*)0xBEAF;
-      xbt_dict_set(pals_int,cmd->who,&p,NULL);
+      p = (int *) 0xBEAF;
+      xbt_dict_set(pals_int, cmd->who, &p, NULL);
     }
   }
 
   /* friends, we're ready. Come and play */
-  INFO1("Wait for peers for a while. I need %d peers",xbt_dict_size(pals_int));
-  while (xbt_dynar_length(peers)<xbt_dict_size(pals_int)) {
+  INFO1("Wait for peers for a while. I need %d peers",
+        xbt_dict_size(pals_int));
+  while (xbt_dynar_length(peers) < xbt_dict_size(pals_int)) {
     TRY {
       gras_msg_handle(20);
-    } CATCH(e) {
-      xbt_dynar_foreach(peers,cursor,peer){
-        xbt_dict_remove(pals_int,peer->name);
+    }
+    CATCH(e) {
+      xbt_dynar_foreach(peers, cursor, peer) {
+        xbt_dict_remove(pals_int, peer->name);
       }
       char *peer_name;
       void *data;
-      xbt_dict_foreach(pals_int,dict_cursor,peer_name,data) {
-        INFO1("Peer %s didn't showed up",peer_name);
+      xbt_dict_foreach(pals_int, dict_cursor, peer_name, data) {
+        INFO1("Peer %s didn't showed up", peer_name);
       }
       RETHROW;
     }
@@ -86,16 +92,16 @@ int master(int argc,char *argv[]) {
   /* Check who came */
   xbt_dict_t pals = xbt_dict_new();
   gras_socket_t pal;
-  xbt_dynar_foreach(peers,cursor, peer) {
+  xbt_dynar_foreach(peers, cursor, peer) {
     //INFO1("%s is here",peer->name);
-    gras_socket_t sock = gras_socket_client(peer->name,peer->port);
-    xbt_dict_set(pals,peer->name,sock,NULL);
+    gras_socket_t sock = gras_socket_client(peer->name, peer->port);
+    xbt_dict_set(pals, peer->name, sock, NULL);
   }
   /* check that we have a dude for every element of the trace */
-  xbt_dynar_foreach(cmds,cursor,cmd) {
-    pal=xbt_dict_get_or_null(pals,cmd->who);
+  xbt_dynar_foreach(cmds, cursor, cmd) {
+    pal = xbt_dict_get_or_null(pals, cmd->who);
     if (!pal) {
-      CRITICAL1("Process %s didn't came! Abording!",cmd->who);
+      CRITICAL1("Process %s didn't came! Abording!", cmd->who);
       amok_pm_group_shutdown("replay");
       xbt_dynar_free(&cmds);
       gras_exit();
@@ -104,18 +110,18 @@ int master(int argc,char *argv[]) {
   }
   /* Send the commands to every pal */
   char *pal_name;
-  xbt_dict_foreach(pals,dict_cursor,pal_name,pal) {
-    gras_msg_send(pal,"commands",&cmds);
+  xbt_dict_foreach(pals, dict_cursor, pal_name, pal) {
+    gras_msg_send(pal, "commands", &cmds);
   }
   INFO0("Sent commands to every processes. Let them start now");
   xbt_dict_cursor_t dict_it;
-  xbt_dict_foreach(pals,dict_it,pal_name,pal) {
-    gras_msg_send(pal,"go",NULL);
+  xbt_dict_foreach(pals, dict_it, pal_name, pal) {
+    gras_msg_send(pal, "go", NULL);
   }
   INFO0("They should be started by now. Wait for their completion.");
 
-  for (cursor=0;cursor<xbt_dynar_length(peers);cursor++) {
-    gras_msg_wait(-1,"go",NULL,NULL);
+  for (cursor = 0; cursor < xbt_dynar_length(peers); cursor++) {
+    gras_msg_wait(-1, "go", NULL, NULL);
   }
 
   /* Done, exiting */
@@ -129,69 +135,79 @@ typedef struct {
   xbt_dynar_t commands;
   xbt_dict_t peers;
   gras_socket_t mysock;
-} s_worker_data_t,*worker_data_t;
+} s_worker_data_t, *worker_data_t;
 
 
-static gras_socket_t get_peer_sock(char*peer) {
+static gras_socket_t get_peer_sock(char *peer)
+{
   worker_data_t g = gras_userdata_get();
-  gras_socket_t peer_sock = xbt_dict_get_or_null(g->peers,peer);
+  gras_socket_t peer_sock = xbt_dict_get_or_null(g->peers, peer);
   if (!peer_sock) {
-    INFO1("Create a socket to %s",peer);
-    peer_sock = gras_socket_client(peer,4000);
-    xbt_dict_set(g->peers,peer,peer_sock,NULL);//gras_socket_close_voidp);
+    INFO1("Create a socket to %s", peer);
+    peer_sock = gras_socket_client(peer, 4000);
+    xbt_dict_set(g->peers, peer, peer_sock, NULL);      //gras_socket_close_voidp);
   }
   return peer_sock;
 }
-static int worker_commands_cb(gras_msg_cb_ctx_t ctx, void *payload) {
+
+static int worker_commands_cb(gras_msg_cb_ctx_t ctx, void *payload)
+{
   worker_data_t g = gras_userdata_get();
-  g->commands = *(xbt_dynar_t*)payload;
+  g->commands = *(xbt_dynar_t *) payload;
   return 0;
 }
-static void do_command(int rank, void*c) {
+
+static void do_command(int rank, void *c)
+{
   xbt_ex_t e;
-  xbt_workload_elm_t cmd = *(xbt_workload_elm_t*)c;
+  xbt_workload_elm_t cmd = *(xbt_workload_elm_t *) c;
   xbt_workload_data_chunk_t chunk;
 
   if (cmd->action == XBT_WORKLOAD_SEND) {
     gras_socket_t sock = get_peer_sock(cmd->str_arg);
-    chunk = xbt_workload_data_chunk_new((int)(cmd->d_arg));
-    INFO4("Send %.f bytes to %s %s:%d",cmd->d_arg,cmd->str_arg,
-        gras_socket_peer_name(sock),gras_socket_peer_port(sock));
-    gras_msg_send_(sock,gras_msgtype_by_name("chunk"),&chunk);
-    INFO2("Done sending %.f bytes to %s",cmd->d_arg,cmd->str_arg);
+    chunk = xbt_workload_data_chunk_new((int) (cmd->d_arg));
+    INFO4("Send %.f bytes to %s %s:%d", cmd->d_arg, cmd->str_arg,
+          gras_socket_peer_name(sock), gras_socket_peer_port(sock));
+    gras_msg_send_(sock, gras_msgtype_by_name("chunk"), &chunk);
+    INFO2("Done sending %.f bytes to %s", cmd->d_arg, cmd->str_arg);
 
   } else if (cmd->action == XBT_WORKLOAD_RECV) {
-    INFO2("Recv %.f bytes from %s",cmd->d_arg,cmd->str_arg);
+    INFO2("Recv %.f bytes from %s", cmd->d_arg, cmd->str_arg);
     TRY {
-      gras_msg_wait(1000000,"chunk",NULL,&chunk);
-    } CATCH(e) {
+      gras_msg_wait(1000000, "chunk", NULL, &chunk);
+    }
+    CATCH(e) {
       SIMIX_display_process_status();
       RETHROW2("Exception while waiting for %f bytes from %s: %s",
-            cmd->d_arg,cmd->str_arg);
+               cmd->d_arg, cmd->str_arg);
     }
     xbt_workload_data_chunk_free(chunk);
-    INFO2("Done receiving %.f bytes from %s",cmd->d_arg,cmd->str_arg);
+    INFO2("Done receiving %.f bytes from %s", cmd->d_arg, cmd->str_arg);
 
   } else {
-    xbt_die(bprintf("unknown command: %s",xbt_workload_elm_to_string(cmd)));
+    xbt_die(bprintf
+            ("unknown command: %s", xbt_workload_elm_to_string(cmd)));
   }
 }
-int worker(int argc,char *argv[]) {
+
+int worker(int argc, char *argv[])
+{
   xbt_ex_t e;
   worker_data_t globals;
-  gras_init(&argc,argv);
+  gras_init(&argc, argv);
   declare_msg();
   globals = gras_userdata_new(s_worker_data_t);
   /* Create the connexions */
-  globals->mysock = gras_socket_server(4000); /* FIXME: shouldn't be hardcoded */
-  gras_socket_t master=NULL;
-  int connected=0;
+  globals->mysock = gras_socket_server(4000);   /* FIXME: shouldn't be hardcoded */
+  gras_socket_t master = NULL;
+  int connected = 0;
 
   gras_cb_register("commands", worker_commands_cb);
-  globals->peers=xbt_dict_new();
+  globals->peers = xbt_dict_new();
 
   if (gras_if_RL())
-    INFO2("Sensor %s starting. Connecting to master on %s", gras_os_myname(), argv[1]);
+    INFO2("Sensor %s starting. Connecting to master on %s",
+          gras_os_myname(), argv[1]);
   while (!connected) {
     xbt_ex_t e;
     TRY {
@@ -208,57 +224,60 @@ int worker(int argc,char *argv[]) {
   }
   /* Join and run the group */
   amok_pm_group_join(master, "replay", -1);
-  gras_msg_handle(60); // command message
-  gras_msg_wait(60,"go",NULL,NULL);
+  gras_msg_handle(60);          // command message
+  gras_msg_wait(60, "go", NULL, NULL);
   {
     worker_data_t g = gras_userdata_get();
     unsigned int cursor;
     xbt_workload_elm_t cmd;
-    const char *myname=gras_os_myname();
-    xbt_dynar_t cmd_to_go = xbt_dynar_new(sizeof(xbt_workload_elm_t),NULL);
+    const char *myname = gras_os_myname();
+    xbt_dynar_t cmd_to_go =
+        xbt_dynar_new(sizeof(xbt_workload_elm_t), NULL);
 
-    xbt_dynar_foreach(g->commands,cursor,cmd) {
-      if (!strcmp(cmd->who,myname)) {
+    xbt_dynar_foreach(g->commands, cursor, cmd) {
+      if (!strcmp(cmd->who, myname)) {
         char *c = xbt_workload_elm_to_string(cmd);
-  //      INFO1("TODO: %s",c);
+        //      INFO1("TODO: %s",c);
         free(c);
 
         switch (cmd->action) {
         case XBT_WORKLOAD_COMPUTE:
           /* If any communication were queued, do them in parallel */
-          if (xbt_dynar_length(cmd_to_go)){
+          if (xbt_dynar_length(cmd_to_go)) {
             TRY {
-              xbt_dynar_dopar(cmd_to_go,do_command);
+              xbt_dynar_dopar(cmd_to_go, do_command);
               xbt_dynar_reset(cmd_to_go);
-            } CATCH(e) {
+            }
+            CATCH(e) {
               SIMIX_display_process_status();
             }
             INFO0("Communications all done");
             xbt_dynar_reset(cmd_to_go);
           }
-          INFO1("Compute %.f flops",cmd->d_arg);
+          INFO1("Compute %.f flops", cmd->d_arg);
           gras_cpu_burn(cmd->d_arg);
-          INFO1("Done computing %.f flops",cmd->d_arg);
+          INFO1("Done computing %.f flops", cmd->d_arg);
           break;
         case XBT_WORKLOAD_SEND:
           /* Create the socket from main thread since it seems to fails when done from dopar thread */
           get_peer_sock(cmd->str_arg);
         case XBT_WORKLOAD_RECV:
           /* queue communications for later realization in parallel */
-          xbt_dynar_push(cmd_to_go,&cmd);
+          xbt_dynar_push(cmd_to_go, &cmd);
           break;
         }
       }
     }
     /* do in parallel any communication still queued */
-    INFO1("Do %ld pending communications after end of TODO list",xbt_dynar_length(cmd_to_go));
-    if (xbt_dynar_length(cmd_to_go)){
-      xbt_dynar_dopar(cmd_to_go,do_command);
+    INFO1("Do %ld pending communications after end of TODO list",
+          xbt_dynar_length(cmd_to_go));
+    if (xbt_dynar_length(cmd_to_go)) {
+      xbt_dynar_dopar(cmd_to_go, do_command);
       xbt_dynar_reset(cmd_to_go);
     }
   }
 
-  gras_msg_send(master,"go",NULL);
+  gras_msg_send(master, "go", NULL);
 //  amok_pm_group_leave(master, "replay");
 
   gras_socket_close(globals->mysock);
index 46dcd83..2d4372d 100644 (file)
 typedef struct {
   /* keep it in sync with function xbt_workload_declare_datadesc() */
 
-  char *who;      /* the slave who should do it */
-  char *comment;  /* a comment placed at the end of the line, if any */
-  int action;     /* 0: compute(darg flops); 1: send darg bytes to strarg; 2: recv darg bytes from strarg */
-  double date;    /* when it occured when the trace was captured */
-  double d_arg;   /* double argument, if any */
-  char * str_arg; /* string argument, if any */
+  char *who;                    /* the slave who should do it */
+  char *comment;                /* a comment placed at the end of the line, if any */
+  int action;                   /* 0: compute(darg flops); 1: send darg bytes to strarg; 2: recv darg bytes from strarg */
+  double date;                  /* when it occured when the trace was captured */
+  double d_arg;                 /* double argument, if any */
+  char *str_arg;                /* string argument, if any */
 } s_xbt_workload_elm_t, *xbt_workload_elm_t;
 
 XBT_PUBLIC(xbt_workload_elm_t) xbt_workload_elm_parse(char *line);
 XBT_PUBLIC(void) xbt_workload_elm_free(xbt_workload_elm_t cmd);
-XBT_PUBLIC(void) xbt_workload_elm_free_voidp(void*cmd);
-XBT_PUBLIC(char *)xbt_workload_elm_to_string(xbt_workload_elm_t cmd);
-XBT_PUBLIC(int) xbt_workload_elm_cmp_who_date(const void* _c1, const void* _c2);
+XBT_PUBLIC(void) xbt_workload_elm_free_voidp(void *cmd);
+XBT_PUBLIC(char *) xbt_workload_elm_to_string(xbt_workload_elm_t cmd);
+XBT_PUBLIC(int) xbt_workload_elm_cmp_who_date(const void *_c1,
+                                              const void *_c2);
 XBT_PUBLIC(void) xbt_workload_sort_who_date(xbt_dynar_t c);
 XBT_PUBLIC(xbt_dynar_t) xbt_workload_parse_file(char *filename);
 
@@ -46,8 +47,9 @@ XBT_PUBLIC(void) xbt_workload_declare_datadesc(void);
 typedef struct {
   int size;
   char *chunk;
-} s_xbt_workload_data_chunk_t,*xbt_workload_data_chunk_t;
-XBT_PUBLIC(xbt_workload_data_chunk_t) xbt_workload_data_chunk_new(int size);
+} s_xbt_workload_data_chunk_t, *xbt_workload_data_chunk_t;
+XBT_PUBLIC(xbt_workload_data_chunk_t) xbt_workload_data_chunk_new(int
+                                                                  size);
 XBT_PUBLIC(void) xbt_workload_data_chunk_free(xbt_workload_data_chunk_t c);
 
-#endif /* XBT_WORKLOAD_H_ */
+#endif                          /* XBT_WORKLOAD_H_ */
index 46a9e4b..769d8b5 100644 (file)
 #include "workload.h"
 #include "gras/datadesc.h"
 
-XBT_LOG_NEW_DEFAULT_SUBCATEGORY(xbt_workload,xbt, "Workload characterisation mecanisms");
+XBT_LOG_NEW_DEFAULT_SUBCATEGORY(xbt_workload, xbt,
+                                "Workload characterisation mecanisms");
 
 
-xbt_workload_elm_t xbt_workload_elm_parse(char *line) {
-  xbt_workload_elm_t res = xbt_new(s_xbt_workload_elm_t,1);
-  res->date=-1;
-  res->comment=NULL; /* it's not enough to memset for valgrind, apparently */
-  res->who=NULL;
-  res->str_arg=NULL;
+xbt_workload_elm_t xbt_workload_elm_parse(char *line)
+{
+  xbt_workload_elm_t res = xbt_new(s_xbt_workload_elm_t, 1);
+  res->date = -1;
+  res->comment = NULL;          /* it's not enough to memset for valgrind, apparently */
+  res->who = NULL;
+  res->str_arg = NULL;
 
-  xbt_dynar_t w = xbt_str_split(line," ");
+  xbt_dynar_t w = xbt_str_split(line, " ");
 
   if (xbt_dynar_length(w) == 0) {
     free(res);
@@ -33,38 +35,40 @@ xbt_workload_elm_t xbt_workload_elm_parse(char *line) {
     return NULL;
   }
 
-  char **words = xbt_dynar_get_ptr(w,0);
-  int i=0;
+  char **words = xbt_dynar_get_ptr(w, 0);
+  int i = 0;
   if (words[i][0] == '[') {
-    sscanf(words[i]+1,"%lg",&(res->date));
+    sscanf(words[i] + 1, "%lg", &(res->date));
     i++;
   }
   res->who = xbt_strdup(words[i++]);
-  if (!strcmp(words[i],"recv")) {
+  if (!strcmp(words[i], "recv")) {
     res->action = XBT_WORKLOAD_RECV;
     res->str_arg = xbt_strdup(words[++i]);
-    sscanf(words[++i],"%lg",&(res->d_arg));
+    sscanf(words[++i], "%lg", &(res->d_arg));
 
-  } else if (!strcmp(words[i],"send")) {
+  } else if (!strcmp(words[i], "send")) {
     res->action = XBT_WORKLOAD_SEND;
     res->str_arg = xbt_strdup(words[++i]);
-    sscanf(words[++i],"%lg",&(res->d_arg));
+    sscanf(words[++i], "%lg", &(res->d_arg));
 
-  } else if (!strcmp(words[i],"compute")) {
+  } else if (!strcmp(words[i], "compute")) {
     res->action = XBT_WORKLOAD_COMPUTE;
-    sscanf(words[++i],"%lg",&(res->d_arg));
+    sscanf(words[++i], "%lg", &(res->d_arg));
   } else {
-    xbt_die(bprintf("Unparsable command: %s (in %s)",words[i],line));
+    xbt_die(bprintf("Unparsable command: %s (in %s)", words[i], line));
   }
   i++;
   if (words[i] && words[i][0] == '#') {
-    res->comment = xbt_strdup(strchr(line,'#')+1);
+    res->comment = xbt_strdup(strchr(line, '#') + 1);
   }
 
   xbt_dynar_free(&w);
   return res;
 }
-void xbt_workload_elm_free(xbt_workload_elm_t cmd) {
+
+void xbt_workload_elm_free(xbt_workload_elm_t cmd)
+{
   if (!cmd)
     return;
   if (cmd->who)
@@ -75,55 +79,65 @@ void xbt_workload_elm_free(xbt_workload_elm_t cmd) {
     free(cmd->str_arg);
   free(cmd);
 }
-void xbt_workload_elm_free_voidp(void*cmd) {
-  xbt_workload_elm_free(*(xbt_workload_elm_t*)cmd);
+
+void xbt_workload_elm_free_voidp(void *cmd)
+{
+  xbt_workload_elm_free(*(xbt_workload_elm_t *) cmd);
 }
 
-char *xbt_workload_elm_to_string(xbt_workload_elm_t cmd) {
+char *xbt_workload_elm_to_string(xbt_workload_elm_t cmd)
+{
   char res[2048];
   char *addon;
-  res[0]='\0';
-  if (cmd==NULL)
+  res[0] = '\0';
+  if (cmd == NULL)
     return xbt_strdup("(null command)");
   if (cmd->date != -1) {
-    addon=bprintf("[%f] ",cmd->date);
-    strcat(res,addon);
+    addon = bprintf("[%f] ", cmd->date);
+    strcat(res, addon);
     free(addon);
   }
-  addon= bprintf("'%s' ",cmd->who);
-  strcat(res,addon);free(addon);
+  addon = bprintf("'%s' ", cmd->who);
+  strcat(res, addon);
+  free(addon);
 
   switch (cmd->action) {
   case XBT_WORKLOAD_COMPUTE:
-    addon=bprintf("computed %f flops",cmd->d_arg);
-    strcat(res,addon);free(addon);
+    addon = bprintf("computed %f flops", cmd->d_arg);
+    strcat(res, addon);
+    free(addon);
     break;
   case XBT_WORKLOAD_SEND:
-    addon=bprintf("sent %f bytes to '%s'",cmd->d_arg,cmd->str_arg);
-    strcat(res,addon);free(addon);
+    addon = bprintf("sent %f bytes to '%s'", cmd->d_arg, cmd->str_arg);
+    strcat(res, addon);
+    free(addon);
     break;
   case XBT_WORKLOAD_RECV:
-    addon=bprintf("received %f bytes from '%s'",cmd->d_arg,cmd->str_arg);
-    strcat(res,addon);free(addon);
+    addon =
+        bprintf("received %f bytes from '%s'", cmd->d_arg, cmd->str_arg);
+    strcat(res, addon);
+    free(addon);
     break;
   default:
-    xbt_die(bprintf("Unknown command %d in '%s...'",cmd->action,res));
+    xbt_die(bprintf("Unknown command %d in '%s...'", cmd->action, res));
   }
   if (cmd->comment) {
-    addon=bprintf(" (comment: %s)",cmd->comment);
-    strcat(res,addon);free(addon);
+    addon = bprintf(" (comment: %s)", cmd->comment);
+    strcat(res, addon);
+    free(addon);
   }
   return xbt_strdup(res);
 }
 
-int xbt_workload_elm_cmp_who_date(const void* _c1, const void* _c2) {
-  xbt_workload_elm_t c1=*(xbt_workload_elm_t*)_c1;
-  xbt_workload_elm_t c2=*(xbt_workload_elm_t*)_c2;
+int xbt_workload_elm_cmp_who_date(const void *_c1, const void *_c2)
+{
+  xbt_workload_elm_t c1 = *(xbt_workload_elm_t *) _c1;
+  xbt_workload_elm_t c2 = *(xbt_workload_elm_t *) _c2;
   if (!c1 || !c1->who)
     return -1;
   if (!c2 || !c2->who)
     return 1;
-  int r = strcmp(c1->who,c2->who);
+  int r = strcmp(c1->who, c2->who);
   if (r)
     return r;
   if (c1->date == c2->date)
@@ -132,64 +146,81 @@ int xbt_workload_elm_cmp_who_date(const void* _c1, const void* _c2) {
     return -1;
   return 1;
 }
-void xbt_workload_sort_who_date(xbt_dynar_t c) {
-  qsort(xbt_dynar_get_ptr(c,0),xbt_dynar_length(c),sizeof(xbt_workload_elm_t),xbt_workload_elm_cmp_who_date);
+
+void xbt_workload_sort_who_date(xbt_dynar_t c)
+{
+  qsort(xbt_dynar_get_ptr(c, 0), xbt_dynar_length(c),
+        sizeof(xbt_workload_elm_t), xbt_workload_elm_cmp_who_date);
 }
-xbt_dynar_t xbt_workload_parse_file(char *filename) {
+
+xbt_dynar_t xbt_workload_parse_file(char *filename)
+{
   FILE *file_in;
-  file_in = fopen(filename,"r");
-  xbt_assert1(file_in, "cannot open tracefile '%s'",filename);
+  file_in = fopen(filename, "r");
+  xbt_assert1(file_in, "cannot open tracefile '%s'", filename);
   char *str_in = xbt_str_from_file(file_in);
   fclose(file_in);
-  xbt_dynar_t in = xbt_str_split(str_in,"\n");
+  xbt_dynar_t in = xbt_str_split(str_in, "\n");
   free(str_in);
-  xbt_dynar_t cmds=xbt_dynar_new(sizeof(xbt_workload_elm_t),xbt_workload_elm_free_voidp);
+  xbt_dynar_t cmds =
+      xbt_dynar_new(sizeof(xbt_workload_elm_t),
+                    xbt_workload_elm_free_voidp);
 
   unsigned int cursor;
   char *line;
-  xbt_dynar_foreach(in,cursor,line) {
+  xbt_dynar_foreach(in, cursor, line) {
     xbt_workload_elm_t cmd = xbt_workload_elm_parse(line);
     if (cmd)
-      xbt_dynar_push(cmds,&cmd);
+      xbt_dynar_push(cmds, &cmd);
   }
-  xbt_dynar_shrink(cmds,0);
+  xbt_dynar_shrink(cmds, 0);
   xbt_dynar_free(&in);
   return cmds;
 }
 
 
-void xbt_workload_declare_datadesc(void) {
+void xbt_workload_declare_datadesc(void)
+{
   gras_datadesc_type_t ddt;
 
   ddt = gras_datadesc_struct("s_xbt_workload_elm_t");
-  gras_datadesc_struct_append(ddt,"who",gras_datadesc_by_name("string"));
-  gras_datadesc_struct_append(ddt,"comment",gras_datadesc_by_name("string"));
-  gras_datadesc_struct_append(ddt,"action",gras_datadesc_by_name("int"));
-  gras_datadesc_struct_append(ddt,"date",gras_datadesc_by_name("double"));
-  gras_datadesc_struct_append(ddt,"d_arg",gras_datadesc_by_name("double"));
-  gras_datadesc_struct_append(ddt,"str_arg",gras_datadesc_by_name("string"));
+  gras_datadesc_struct_append(ddt, "who", gras_datadesc_by_name("string"));
+  gras_datadesc_struct_append(ddt, "comment",
+                              gras_datadesc_by_name("string"));
+  gras_datadesc_struct_append(ddt, "action", gras_datadesc_by_name("int"));
+  gras_datadesc_struct_append(ddt, "date",
+                              gras_datadesc_by_name("double"));
+  gras_datadesc_struct_append(ddt, "d_arg",
+                              gras_datadesc_by_name("double"));
+  gras_datadesc_struct_append(ddt, "str_arg",
+                              gras_datadesc_by_name("string"));
   gras_datadesc_struct_close(ddt);
 
-  gras_datadesc_ref("xbt_workload_elm_t",ddt);
+  gras_datadesc_ref("xbt_workload_elm_t", ddt);
 
   ddt = gras_datadesc_struct("s_xbt_workload_data_chunk_t");
-  gras_datadesc_struct_append(ddt,"size",gras_datadesc_by_name("int"));
+  gras_datadesc_struct_append(ddt, "size", gras_datadesc_by_name("int"));
   gras_datadesc_cb_field_push(ddt, "size");
-  gras_datadesc_struct_append(ddt,"chunk",gras_datadesc_ref_pop_arr(gras_datadesc_by_name("char")));
+  gras_datadesc_struct_append(ddt, "chunk",
+                              gras_datadesc_ref_pop_arr
+                              (gras_datadesc_by_name("char")));
   gras_datadesc_struct_close(ddt);
 
-  gras_datadesc_ref("xbt_workload_data_chunk_t",ddt);
+  gras_datadesc_ref("xbt_workload_data_chunk_t", ddt);
 }
 
 
 
-xbt_workload_data_chunk_t xbt_workload_data_chunk_new(int size) {
-  xbt_workload_data_chunk_t res = xbt_new0(s_xbt_workload_data_chunk_t,1);
-  res->size = size-sizeof(res)-sizeof(int);
-  res->chunk = xbt_new(char,res->size);
+xbt_workload_data_chunk_t xbt_workload_data_chunk_new(int size)
+{
+  xbt_workload_data_chunk_t res = xbt_new0(s_xbt_workload_data_chunk_t, 1);
+  res->size = size - sizeof(res) - sizeof(int);
+  res->chunk = xbt_new(char, res->size);
   return res;
 }
-void xbt_workload_data_chunk_free(xbt_workload_data_chunk_t c) {
+
+void xbt_workload_data_chunk_free(xbt_workload_data_chunk_t c)
+{
   free(c->chunk);
   free(c);
 }
index f4ee78f..ae7f548 100644 (file)
@@ -145,7 +145,7 @@ int client(int argc, char *argv[])
     xbt_assert1(!strncmp(e.msg, exception_msg, strlen(exception_msg)),
                 "Got wrong message: %s", e.msg);
     INFO0
-      ("Got the expected exception when calling the exception raising RPC");
+        ("Got the expected exception when calling the exception raising RPC");
     xbt_ex_free(e);
   }
 
@@ -176,7 +176,8 @@ int client(int argc, char *argv[])
   for (i = 0; i < 5; i++) {
     INFO1("Call the exception raising RPC on the forwarder (i=%d)", i);
     TRY {
-      gras_msg_rpccall(toforwarder, 6000.0, "forward exception", NULL, NULL);
+      gras_msg_rpccall(toforwarder, 6000.0, "forward exception", NULL,
+                       NULL);
     }
     CATCH(e) {
       gotit = 1;
@@ -191,7 +192,7 @@ int client(int argc, char *argv[])
                 "Got wrong category: %d (instead of %d)",
                 e.category, unknown_error);
     INFO0
-      ("Got the expected exception when calling the exception raising RPC");
+        ("Got the expected exception when calling the exception raising RPC");
     xbt_ex_free(e);
     exception_catching();
   }
@@ -231,7 +232,8 @@ static int forwarder_cb_kill(gras_msg_cb_ctx_t ctx, void *payload_data)
   return 0;
 }
 
-static int forwarder_cb_forward_ex(gras_msg_cb_ctx_t ctx, void *payload_data)
+static int forwarder_cb_forward_ex(gras_msg_cb_ctx_t ctx,
+                                   void *payload_data)
 {
   forward_data_t fdata = gras_userdata_get();
 
@@ -313,7 +315,8 @@ static int server_cb_ping(gras_msg_cb_ctx_t ctx, void *payload_data)
   /* 2. Log which client connected */
   INFO3("Got message PING(%d) from %s:%d",
         msg,
-        gras_socket_peer_name(expeditor), gras_socket_peer_port(expeditor));
+        gras_socket_peer_name(expeditor),
+        gras_socket_peer_port(expeditor));
 
   /* 4. Change the value of the msg variable */
   msg = 4321;
index 3098ffd..acc3523 100644 (file)
@@ -62,7 +62,8 @@ int child(int argc, char *argv[])
     gras_socket_close(dady);
     RETHROW0("Dad don't want to speak with me! : %s");
   }
-  INFO2("Pinged dad with %d, he answered with %d; leaving now.", ping, pong);
+  INFO2("Pinged dad with %d, he answered with %d; leaving now.", ping,
+        pong);
 
   /* 7. Free the allocated resources, and shut GRAS down */
   gras_socket_close(dady);
index edf1fa2..12cc6ae 100644 (file)
@@ -46,7 +46,8 @@ static int father_cb_ping_handler(gras_msg_cb_ctx_t ctx, void *payload)
     RETHROW0("Unable to answer to my poor child: %s");
   }
   INFO2("Answered to %s:%d's request",
-        gras_socket_peer_name(expeditor), gras_socket_peer_port(expeditor));
+        gras_socket_peer_name(expeditor),
+        gras_socket_peer_port(expeditor));
 
   /* 7. Tell GRAS that we consummed this message */
   return 0;
index 96a653f..d4debb2 100644 (file)
@@ -29,14 +29,14 @@ static void pickup(int id, int lunch)
 {
   INFO2("Thread %d gets hungry (lunch #%d)", id, lunch);
   xbt_mutex_acquire(mutex);
-  while (state[(id + (philosopher_amount - 1)) % philosopher_amount] == EATING
-         || state[(id + 1) % philosopher_amount] == EATING) {
+  while (state[(id + (philosopher_amount - 1)) % philosopher_amount] ==
+         EATING || state[(id + 1) % philosopher_amount] == EATING) {
     xbt_cond_wait(forks[id], mutex);
   }
 
   state[id] = EATING;
-  xbt_assert1(state[(id + (philosopher_amount - 1)) % philosopher_amount] ==
-              THINKING
+  xbt_assert1(state[(id + (philosopher_amount - 1)) % philosopher_amount]
+              == THINKING
               && state[(id + 1) % philosopher_amount] == THINKING,
               "Philosopher %d eats at the same time that one of its neighbors!!!",
               id);
@@ -87,8 +87,8 @@ static void philo_thread(void *arg)
 
   /* Enter an endless loop to test the killing facilities */
   INFO1
-    ("Thread %d tries to enter the dead-end; hopefully, the master will cancel it",
-     id);
+      ("Thread %d tries to enter the dead-end; hopefully, the master will cancel it",
+       id);
   xbt_mutex_acquire(dead_end);
   INFO1("Oops, thread %d reached the dead-end. Cancelation failed", id);
 }
@@ -129,7 +129,9 @@ int philosopher(int argc, char *argv[])
   /* spawn threads */
   for (i = 0; i < philosopher_amount; i++) {
     char *name = bprintf("thread %d", i);
-    philosophers[i] = xbt_thread_create(name, philo_thread, &id[i],0/*not joinable*/);
+    philosophers[i] =
+        xbt_thread_create(name, philo_thread, &id[i],
+                          0 /*not joinable */ );
     free(name);
   }
 
index 9c1aab5..18d52a1 100644 (file)
@@ -35,8 +35,9 @@ static void repetitive_action(void)
     gras_timer_cancel_repeat(REPEAT_INTERVAL, repetitive_action);
   }
 
-  INFO1("repetitive_action decrementing globals->still_to_do. New value: %d",
-        globals->still_to_do - 1);
+  INFO1
+      ("repetitive_action decrementing globals->still_to_do. New value: %d",
+       globals->still_to_do - 1);
 
   globals->still_to_do--;       /* should be the last line of the action since value=0 stops the program */
 }                               /* end_of_repetitive_action */
@@ -71,7 +72,8 @@ int client(int argc, char *argv[])
   INFO0("Canceling the delayed_action.");
   gras_timer_cancel_delay(REPEAT_INTERVAL, delayed_action);
 
-  INFO1("Re-programming the delayed_action for after %f sec", DELAY_INTERVAL);
+  INFO1("Re-programming the delayed_action for after %f sec",
+        DELAY_INTERVAL);
   gras_timer_delay(REPEAT_INTERVAL, delayed_action);
 
   while (globals->still_to_do == -1 ||  /* Before delayed action runs */
index 02fcb18..5ab23f0 100644 (file)
 #include "simgrid_config.h"     /* getline */
 
 XBT_LOG_NEW_DEFAULT_CATEGORY(actions,
-                 "Messages specific for this msg example");
-int communicator_size=0;
+                             "Messages specific for this msg example");
+int communicator_size = 0;
 
-typedef struct coll_ctr_t{
+typedef struct coll_ctr_t {
   int bcast_counter;
   int reduce_counter;
   int allReduce_counter;
 } *coll_ctr;
 
 /* Helper function */
-static double parse_double(const char *string) {
+static double parse_double(const char *string)
+{
   double value;
   char *endptr;
 
-  value=strtod(string, &endptr);
+  value = strtod(string, &endptr);
   if (*endptr != '\0')
-         THROW1(unknown_error, 0, "%s is not a double", string);
+    THROW1(unknown_error, 0, "%s is not a double", string);
   return value;
 }
 
@@ -40,28 +41,28 @@ static void action_send(xbt_dynar_t action)
   char to[250];
   char *size = xbt_dynar_get_as(action, 3, char *);
   double clock = MSG_get_clock();
-  sprintf (to,"%s_%s", MSG_process_get_name(MSG_process_self()),
-          xbt_dynar_get_as(action, 2, char *));
+  sprintf(to, "%s_%s", MSG_process_get_name(MSG_process_self()),
+          xbt_dynar_get_as(action, 2, char *));
   //  char *to =  xbt_dynar_get_as(action, 2, char *);
 
-  if (XBT_LOG_ISENABLED(actions,xbt_log_priority_debug))
+  if (XBT_LOG_ISENABLED(actions, xbt_log_priority_debug))
     name = xbt_str_join(action, " ");
 
   DEBUG2("Entering Send: %s (size: %lg)", name, parse_double(size));
   MSG_task_send(MSG_task_create(name, 0, parse_double(size), NULL), to);
-  DEBUG2("%s %f", name, MSG_get_clock()-clock);
+  DEBUG2("%s %f", name, MSG_get_clock() - clock);
 
-  if (XBT_LOG_ISENABLED(actions,xbt_log_priority_debug))
+  if (XBT_LOG_ISENABLED(actions, xbt_log_priority_debug))
     free(name);
 }
 
 
 static int spawned_send(int argc, char *argv[])
 {
-  DEBUG3("%s: Sending %s on %s", MSG_process_get_name(MSG_process_self()), 
-       argv[1],argv[0]);
-  MSG_task_send(MSG_task_create(argv[0], 0, parse_double(argv[1]), NULL), 
-               argv[0]);
+  DEBUG3("%s: Sending %s on %s", MSG_process_get_name(MSG_process_self()),
+         argv[1], argv[0]);
+  MSG_task_send(MSG_task_create(argv[0], 0, parse_double(argv[1]), NULL),
+                argv[0]);
   return 0;
 }
 
@@ -74,47 +75,47 @@ static void Isend(xbt_dynar_t action)
   char **myargv;
   m_process_t comm_helper;
   double clock = MSG_get_clock();
-  DEBUG1("Isend on %s: spawn process ", 
-        MSG_process_get_name(MSG_process_self()));
+  DEBUG1("Isend on %s: spawn process ",
+         MSG_process_get_name(MSG_process_self()));
+
+  sprintf(to, "%s_%s", MSG_process_get_name(MSG_process_self()),
+          xbt_dynar_get_as(action, 2, char *));
+  myargv = (char **) calloc(3, sizeof(char *));
 
-  sprintf (to,"%s_%s", MSG_process_get_name(MSG_process_self()),
-          xbt_dynar_get_as(action, 2, char *));
-  myargv = (char**) calloc (3, sizeof (char*));
-  
   myargv[0] = xbt_strdup(to);
   myargv[1] = xbt_strdup(size);
   myargv[2] = NULL;
 
   //    sprintf(spawn_name,"%s_wait",MSG_process_get_name(MSG_process_self()));
-  sprintf(spawn_name,"%s_wait",to);
+  sprintf(spawn_name, "%s_wait", to);
   comm_helper =
-    MSG_process_create_with_arguments(spawn_name, spawned_send, 
-                                     NULL, MSG_host_self(), 2, myargv);
-  DEBUG2("%s %f",xbt_str_join(action, " "), MSG_get_clock()-clock);
+      MSG_process_create_with_arguments(spawn_name, spawned_send,
+                                        NULL, MSG_host_self(), 2, myargv);
+  DEBUG2("%s %f", xbt_str_join(action, " "), MSG_get_clock() - clock);
 }
 
 
 static void action_recv(xbt_dynar_t action)
 {
   char *name = NULL;
-    char mailbox_name[250];
+  char mailbox_name[250];
   m_task_t task = NULL;
   double clock = MSG_get_clock();
   //FIXME: argument of action ignored so far; semantic not clear
   //char *from=xbt_dynar_get_as(action,2,char*);
-  sprintf (mailbox_name,"%s_%s", xbt_dynar_get_as(action, 2, char *),
-          MSG_process_get_name(MSG_process_self()));
+  sprintf(mailbox_name, "%s_%s", xbt_dynar_get_as(action, 2, char *),
+          MSG_process_get_name(MSG_process_self()));
 
-  if (XBT_LOG_ISENABLED(actions,xbt_log_priority_debug))
+  if (XBT_LOG_ISENABLED(actions, xbt_log_priority_debug))
     name = xbt_str_join(action, " ");
 
   DEBUG1("Receiving: %s", name);
   MSG_task_receive(&task, mailbox_name);
   //  MSG_task_receive(&task, MSG_process_get_name(MSG_process_self()));
-  DEBUG2("%s %f", name, MSG_get_clock()-clock);
+  DEBUG2("%s %f", name, MSG_get_clock() - clock);
   MSG_task_destroy(task);
 
-  if (XBT_LOG_ISENABLED(actions,xbt_log_priority_debug))
+  if (XBT_LOG_ISENABLED(actions, xbt_log_priority_debug))
     free(name);
 }
 
@@ -125,9 +126,9 @@ static int spawned_recv(int argc, char *argv[])
   MSG_task_receive(&task, argv[0]);
   DEBUG1("Received %s", MSG_task_get_name(task));
   DEBUG1("waiter on %s", MSG_process_get_name(MSG_process_self()));
-  MSG_task_send(MSG_task_create("waiter",0,0,NULL),
-               MSG_process_get_name(MSG_process_self())); 
-  
+  MSG_task_send(MSG_task_create("waiter", 0, 0, NULL),
+                MSG_process_get_name(MSG_process_self()));
+
   MSG_task_destroy(task);
   return 0;
 }
@@ -140,23 +141,22 @@ static void Irecv(xbt_dynar_t action)
   char mailbox_name[250];
   char **myargv;
   double clock = MSG_get_clock();
-  DEBUG1("Irecv on %s: spawn process ", 
-        MSG_process_get_name(MSG_process_self()));
-
-  sprintf (mailbox_name,"%s_%s", xbt_dynar_get_as(action, 2, char *),
-          MSG_process_get_name(MSG_process_self()));
-  name = bprintf("%s_wait",MSG_process_get_name(MSG_process_self()));
-  myargv = (char**) calloc (2, sizeof (char*));
-  
+  DEBUG1("Irecv on %s: spawn process ",
+         MSG_process_get_name(MSG_process_self()));
+
+  sprintf(mailbox_name, "%s_%s", xbt_dynar_get_as(action, 2, char *),
+          MSG_process_get_name(MSG_process_self()));
+  name = bprintf("%s_wait", MSG_process_get_name(MSG_process_self()));
+  myargv = (char **) calloc(2, sizeof(char *));
+
   myargv[0] = xbt_strdup(mailbox_name);
   myargv[1] = NULL;
-  comm_helper = MSG_process_create_with_arguments(name,spawned_recv,
-                                                 NULL, MSG_host_self(),
-                                                 1, myargv);
+  comm_helper = MSG_process_create_with_arguments(name, spawned_recv,
+                                                  NULL, MSG_host_self(),
+                                                  1, myargv);
+
+  DEBUG2("%s %f", xbt_str_join(action, " "), MSG_get_clock() - clock);
 
-  DEBUG2("%s %f",  xbt_str_join(action, " "), 
-      MSG_get_clock()-clock);
   free(name);
 }
 
@@ -167,44 +167,44 @@ static void action_wait(xbt_dynar_t action)
   char task_name[80];
   m_task_t task = NULL;
   double clock = MSG_get_clock();
-  
-  if (XBT_LOG_ISENABLED(actions,xbt_log_priority_debug))
+
+  if (XBT_LOG_ISENABLED(actions, xbt_log_priority_debug))
     name = xbt_str_join(action, " ");
 
   DEBUG1("Entering %s", name);
-  sprintf(task_name,"%s_wait",MSG_process_get_name(MSG_process_self()));
+  sprintf(task_name, "%s_wait", MSG_process_get_name(MSG_process_self()));
   DEBUG1("wait: %s", task_name);
-  MSG_task_receive(&task,task_name);
+  MSG_task_receive(&task, task_name);
   MSG_task_destroy(task);
-  DEBUG2("%s %f", name,        MSG_get_clock()-clock);
-  if (XBT_LOG_ISENABLED(actions,xbt_log_priority_debug))
+  DEBUG2("%s %f", name, MSG_get_clock() - clock);
+  if (XBT_LOG_ISENABLED(actions, xbt_log_priority_debug))
     free(name);
 }
 
 /* FIXME: that's a poor man's implementation: we should take the message exchanges into account */
-smx_sem_t barrier_semaphore=NULL;
-static void barrier (xbt_dynar_t action)
+smx_sem_t barrier_semaphore = NULL;
+static void barrier(xbt_dynar_t action)
 {
   char *name = NULL;
 
-  if (XBT_LOG_ISENABLED(actions,xbt_log_priority_debug))
+  if (XBT_LOG_ISENABLED(actions, xbt_log_priority_debug))
     name = xbt_str_join(action, " ");
 
   DEBUG1("Entering barrier: %s", name);
-  if (barrier_semaphore == NULL)  // first arriving on the barrier
+  if (barrier_semaphore == NULL)        // first arriving on the barrier
     barrier_semaphore = SIMIX_sem_init(0);
 
-  if (SIMIX_sem_get_capacity(barrier_semaphore)==-communicator_size +1) { // last arriving
+  if (SIMIX_sem_get_capacity(barrier_semaphore) == -communicator_size + 1) {    // last arriving
     SIMIX_sem_release_forever(barrier_semaphore);
     SIMIX_sem_destroy(barrier_semaphore);
     barrier_semaphore = NULL;
-  } else { // not last
+  } else {                      // not last
     SIMIX_sem_acquire(barrier_semaphore);
   }
 
   DEBUG1("Exiting barrier: %s", name);
 
-  if (XBT_LOG_ISENABLED(actions,xbt_log_priority_debug))
+  if (XBT_LOG_ISENABLED(actions, xbt_log_priority_debug))
     free(name);
 
 }
@@ -218,129 +218,130 @@ static void reduce(xbt_dynar_t action)
   char **myargv;
   char *comm_size = xbt_dynar_get_as(action, 2, char *);
   char *comp_size = xbt_dynar_get_as(action, 3, char *);
-  m_process_t comm_helper=NULL;
-  m_task_t task=NULL, comp_task=NULL;
-  const charprocess_name;
+  m_process_t comm_helper = NULL;
+  m_task_t task = NULL, comp_task = NULL;
+  const char *process_name;
   double clock = MSG_get_clock();
-  
-  coll_ctr counters =  (coll_ctr) MSG_process_get_data(MSG_process_self());
+
+  coll_ctr counters = (coll_ctr) MSG_process_get_data(MSG_process_self());
 
   xbt_assert0(communicator_size, "Size of Communicator is not defined"
-             ", can't use collective operations");
+              ", can't use collective operations");
 
   process_name = MSG_process_get_name(MSG_process_self());
 
-  if (!counters){
+  if (!counters) {
     DEBUG0("Initialize the counters");
-    counters = (coll_ctr) calloc (1, sizeof(struct coll_ctr_t));
+    counters = (coll_ctr) calloc(1, sizeof(struct coll_ctr_t));
   }
 
   name = bprintf("reduce_%d", counters->reduce_counter++);
 
-  if (!strcmp(process_name, "p0")){
-    DEBUG2("%s: %s is the Root",name, process_name);
-    for(i=1;i<communicator_size;i++){
-      sprintf(spawn_name,"%s_p%d_%s", name, i,
-          MSG_process_get_name(MSG_process_self()));
-      sprintf(task_name,"%s_wait", spawn_name);
-      myargv = (char**) calloc (2, sizeof (char*));
-      
+  if (!strcmp(process_name, "p0")) {
+    DEBUG2("%s: %s is the Root", name, process_name);
+    for (i = 1; i < communicator_size; i++) {
+      sprintf(spawn_name, "%s_p%d_%s", name, i,
+              MSG_process_get_name(MSG_process_self()));
+      sprintf(task_name, "%s_wait", spawn_name);
+      myargv = (char **) calloc(2, sizeof(char *));
+
       myargv[0] = xbt_strdup(spawn_name);
       myargv[1] = NULL;
 
-      comm_helper = 
-       MSG_process_create_with_arguments(task_name, spawned_recv, 
-                                         NULL, MSG_host_self(),
-                                         1, myargv);
+      comm_helper =
+          MSG_process_create_with_arguments(task_name, spawned_recv,
+                                            NULL, MSG_host_self(),
+                                            1, myargv);
     }
 
-    for(i=1;i<communicator_size;i++){
-      sprintf(task_name,"%s_p%d_p0_wait", name, i);
-      MSG_task_receive(&task,task_name);
+    for (i = 1; i < communicator_size; i++) {
+      sprintf(task_name, "%s_p%d_p0_wait", name, i);
+      MSG_task_receive(&task, task_name);
       MSG_task_destroy(task);
-      task=NULL;
+      task = NULL;
     }
 
-    comp_task = 
-      MSG_task_create("reduce_comp", parse_double(comp_size), 0, NULL);
+    comp_task =
+        MSG_task_create("reduce_comp", parse_double(comp_size), 0, NULL);
     DEBUG1("%s: computing 'reduce_comp'", name);
     MSG_task_execute(comp_task);
     MSG_task_destroy(comp_task);
     DEBUG1("%s: computed", name);
   } else {
     DEBUG2("%s: %s sends", name, process_name);
-    sprintf(task_name,"%s_%s_p0", name, process_name);
+    sprintf(task_name, "%s_%s_p0", name, process_name);
     DEBUG1("put on %s", task_name);
     MSG_task_send(MSG_task_create(name, 0, parse_double(comm_size), NULL),
-                 task_name);
+                  task_name);
   }
 
-  MSG_process_set_data(MSG_process_self(), (void*)counters);
-  DEBUG2("%s %f", xbt_str_join(action, " "), MSG_get_clock()-clock);
+  MSG_process_set_data(MSG_process_self(), (void *) counters);
+  DEBUG2("%s %f", xbt_str_join(action, " "), MSG_get_clock() - clock);
   free(name);
 }
 
-static void bcast (xbt_dynar_t action)
+static void bcast(xbt_dynar_t action)
 {
   int i;
   char *name;
-  const charprocess_name;
+  const char *process_name;
   char task_name[80];
   char spawn_name[80];
   char **myargv;
-  m_process_t comm_helper=NULL;
-  m_task_t task=NULL;
+  m_process_t comm_helper = NULL;
+  m_task_t task = NULL;
   char *size = xbt_dynar_get_as(action, 2, char *);
-  coll_ctr counters =  (coll_ctr) MSG_process_get_data(MSG_process_self());
+  coll_ctr counters = (coll_ctr) MSG_process_get_data(MSG_process_self());
   double clock = MSG_get_clock();
-  
+
   xbt_assert0(communicator_size, "Size of Communicator is not defined"
-             ", can't use collective operations");
+              ", can't use collective operations");
 
 
   process_name = MSG_process_get_name(MSG_process_self());
-  if (!counters){
+  if (!counters) {
     DEBUG0("Initialize the counters");
-    counters = (coll_ctr) calloc (1, sizeof(struct coll_ctr_t));
+    counters = (coll_ctr) calloc(1, sizeof(struct coll_ctr_t));
   }
 
   name = bprintf("bcast_%d", counters->bcast_counter++);
-  if (!strcmp(process_name, "p0")){
-    DEBUG2("%s: %s is the Root",name, process_name);
+  if (!strcmp(process_name, "p0")) {
+    DEBUG2("%s: %s is the Root", name, process_name);
 
-    for(i=1;i<communicator_size;i++){
-      myargv = (char**) calloc (3, sizeof (char*));
+    for (i = 1; i < communicator_size; i++) {
+      myargv = (char **) calloc(3, sizeof(char *));
       myargv[0] = xbt_strdup(name);
       myargv[1] = xbt_strdup(size);
       myargv[2] = NULL;
 
-      sprintf(spawn_name,"%s_%d", myargv[0], i);
-      comm_helper = 
-       MSG_process_create_with_arguments(spawn_name, spawned_send, 
-                                         NULL, MSG_host_self(), 2, myargv);
+      sprintf(spawn_name, "%s_%d", myargv[0], i);
+      comm_helper =
+          MSG_process_create_with_arguments(spawn_name, spawned_send,
+                                            NULL, MSG_host_self(), 2,
+                                            myargv);
     }
-    
-    for(i=1;i<communicator_size;i++){
-      sprintf(task_name,"p%d_wait", i);
+
+    for (i = 1; i < communicator_size; i++) {
+      sprintf(task_name, "p%d_wait", i);
       DEBUG1("get on %s", task_name);
-      MSG_task_receive(&task,task_name);      
+      MSG_task_receive(&task, task_name);
       MSG_task_destroy(task);
-      task=NULL;
+      task = NULL;
     }
     DEBUG2("%s: all messages sent by %s have been received",
-         name, process_name);
+           name, process_name);
   } else {
     DEBUG2("%s: %s receives", name, process_name);
     MSG_task_receive(&task, name);
     MSG_task_destroy(task);
-    DEBUG2("%s: %s has received", name,process_name);
-    sprintf(task_name,"%s_wait", process_name);
+    DEBUG2("%s: %s has received", name, process_name);
+    sprintf(task_name, "%s_wait", process_name);
     DEBUG1("put on %s", task_name);
-    MSG_task_send(MSG_task_create("waiter",0,0,NULL),task_name);
+    MSG_task_send(MSG_task_create("waiter", 0, 0, NULL), task_name);
   }
 
-  MSG_process_set_data(MSG_process_self(), (void*)counters);
-  DEBUG2("%s %f", xbt_str_join(action, " "), MSG_get_clock()-clock);
+  MSG_process_set_data(MSG_process_self(), (void *) counters);
+  DEBUG2("%s %f", xbt_str_join(action, " "), MSG_get_clock() - clock);
   free(name);
 }
 
@@ -351,14 +352,14 @@ static void action_sleep(xbt_dynar_t action)
   char *duration = xbt_dynar_get_as(action, 2, char *);
   double clock = MSG_get_clock();
 
-  if (XBT_LOG_ISENABLED(actions,xbt_log_priority_debug))
+  if (XBT_LOG_ISENABLED(actions, xbt_log_priority_debug))
     name = xbt_str_join(action, " ");
 
   DEBUG1("Entering %s", name);
   MSG_process_sleep(parse_double(duration));
-  DEBUG2("%s %f ", name, MSG_get_clock()-clock);
+  DEBUG2("%s %f ", name, MSG_get_clock() - clock);
 
-  if (XBT_LOG_ISENABLED(actions,xbt_log_priority_debug))
+  if (XBT_LOG_ISENABLED(actions, xbt_log_priority_debug))
     free(name);
 }
 
@@ -371,96 +372,98 @@ static void allReduce(xbt_dynar_t action)
   char **myargv;
   char *comm_size = xbt_dynar_get_as(action, 2, char *);
   char *comp_size = xbt_dynar_get_as(action, 3, char *);
-  m_process_t comm_helper=NULL;
-  m_task_t task=NULL, comp_task=NULL;
-  const charprocess_name;
+  m_process_t comm_helper = NULL;
+  m_task_t task = NULL, comp_task = NULL;
+  const char *process_name;
   double clock = MSG_get_clock();
-  coll_ctr counters =  (coll_ctr) MSG_process_get_data(MSG_process_self());
+
+  coll_ctr counters = (coll_ctr) MSG_process_get_data(MSG_process_self());
 
   xbt_assert0(communicator_size, "Size of Communicator is not defined"
-             ", can't use collective operations");
+              ", can't use collective operations");
 
   process_name = MSG_process_get_name(MSG_process_self());
 
-  if (!counters){
+  if (!counters) {
     DEBUG0("Initialize the counters");
-    counters = (coll_ctr) calloc (1, sizeof(struct coll_ctr_t));
+    counters = (coll_ctr) calloc(1, sizeof(struct coll_ctr_t));
   }
 
   name = bprintf("allReduce_%d", counters->allReduce_counter++);
 
-  if (!strcmp(process_name, "p0")){
-    DEBUG2("%s: %s is the Root",name, process_name);
-    for(i=1;i<communicator_size;i++){
-      sprintf(spawn_name,"%s_p%d_%s", name, i,
-          MSG_process_get_name(MSG_process_self()));
-      sprintf(task_name,"%s_wait", spawn_name);
-      myargv = (char**) calloc (2, sizeof (char*));
-      
+  if (!strcmp(process_name, "p0")) {
+    DEBUG2("%s: %s is the Root", name, process_name);
+    for (i = 1; i < communicator_size; i++) {
+      sprintf(spawn_name, "%s_p%d_%s", name, i,
+              MSG_process_get_name(MSG_process_self()));
+      sprintf(task_name, "%s_wait", spawn_name);
+      myargv = (char **) calloc(2, sizeof(char *));
+
       myargv[0] = xbt_strdup(spawn_name);
       myargv[1] = NULL;
 
-      comm_helper = 
-       MSG_process_create_with_arguments(task_name, spawned_recv, 
-                                         NULL, MSG_host_self(),
-                                         1, myargv);
+      comm_helper =
+          MSG_process_create_with_arguments(task_name, spawned_recv,
+                                            NULL, MSG_host_self(),
+                                            1, myargv);
     }
 
-    for(i=1;i<communicator_size;i++){
-      sprintf(task_name,"%s_p%d_p0_wait", name, i);
-      MSG_task_receive(&task,task_name);
+    for (i = 1; i < communicator_size; i++) {
+      sprintf(task_name, "%s_p%d_p0_wait", name, i);
+      MSG_task_receive(&task, task_name);
       MSG_task_destroy(task);
-      task=NULL;
+      task = NULL;
     }
 
-    comp_task = 
-      MSG_task_create("allReduce_comp", parse_double(comp_size), 0, NULL);
+    comp_task =
+        MSG_task_create("allReduce_comp", parse_double(comp_size), 0,
+                        NULL);
     DEBUG1("%s: computing 'reduce_comp'", name);
     MSG_task_execute(comp_task);
     MSG_task_destroy(comp_task);
     DEBUG1("%s: computed", name);
 
-    for(i=1;i<communicator_size;i++){
-      myargv = (char**) calloc (3, sizeof (char*));
+    for (i = 1; i < communicator_size; i++) {
+      myargv = (char **) calloc(3, sizeof(char *));
       myargv[0] = xbt_strdup(name);
       myargv[1] = xbt_strdup(comm_size);
       myargv[2] = NULL;
 
-      sprintf(spawn_name,"%s_%d", myargv[0], i);
-      comm_helper = 
-       MSG_process_create_with_arguments(spawn_name, spawned_send, 
-                                         NULL, MSG_host_self(), 2, myargv);
+      sprintf(spawn_name, "%s_%d", myargv[0], i);
+      comm_helper =
+          MSG_process_create_with_arguments(spawn_name, spawned_send,
+                                            NULL, MSG_host_self(), 2,
+                                            myargv);
     }
-    
-    for(i=1;i<communicator_size;i++){
-      sprintf(task_name,"p%d_wait", i);
+
+    for (i = 1; i < communicator_size; i++) {
+      sprintf(task_name, "p%d_wait", i);
       DEBUG1("get on %s", task_name);
-      MSG_task_receive(&task,task_name);      
+      MSG_task_receive(&task, task_name);
       MSG_task_destroy(task);
-      task=NULL;
+      task = NULL;
     }
     DEBUG2("%s: all messages sent by %s have been received",
-         name, process_name);
+           name, process_name);
 
   } else {
     DEBUG2("%s: %s sends", name, process_name);
-    sprintf(task_name,"%s_%s_p0", name, process_name);
+    sprintf(task_name, "%s_%s_p0", name, process_name);
     DEBUG1("put on %s", task_name);
     MSG_task_send(MSG_task_create(name, 0, parse_double(comm_size), NULL),
-                 task_name);
+                  task_name);
 
     MSG_task_receive(&task, name);
     MSG_task_destroy(task);
-    DEBUG2("%s: %s has received", name,process_name);
-    sprintf(task_name,"%s_wait", process_name);
+    DEBUG2("%s: %s has received", name, process_name);
+    sprintf(task_name, "%s_wait", process_name);
     DEBUG1("put on %s", task_name);
-    MSG_task_send(MSG_task_create("waiter",0,0,NULL),task_name);
+    MSG_task_send(MSG_task_create("waiter", 0, 0, NULL), task_name);
 
   }
 
-  MSG_process_set_data(MSG_process_self(), (void*)counters);
-  DEBUG2("%s %f", xbt_str_join(action, " "), MSG_get_clock()-clock);
+  MSG_process_set_data(MSG_process_self(), (void *) counters);
+  DEBUG2("%s %f", xbt_str_join(action, " "), MSG_get_clock() - clock);
   free(name);
 }
 
@@ -472,18 +475,18 @@ static void comm_size(xbt_dynar_t action)
 
 static void compute(xbt_dynar_t action)
 {
-  char *name=NULL;
+  char *name = NULL;
   char *amout = xbt_dynar_get_as(action, 2, char *);
   m_task_t task = MSG_task_create(name, parse_double(amout), 0, NULL);
   double clock = MSG_get_clock();
 
-  if (XBT_LOG_ISENABLED(actions,xbt_log_priority_debug))
+  if (XBT_LOG_ISENABLED(actions, xbt_log_priority_debug))
     name = xbt_str_join(action, " ");
   DEBUG1("Entering %s", name);
   MSG_task_execute(task);
   MSG_task_destroy(task);
-  DEBUG2("%s %f", name, MSG_get_clock()-clock);
-  if (XBT_LOG_ISENABLED(actions,xbt_log_priority_debug))
+  DEBUG2("%s %f", name, MSG_get_clock() - clock);
+  if (XBT_LOG_ISENABLED(actions, xbt_log_priority_debug))
     free(name);
 }
 
@@ -491,15 +494,18 @@ static void compute(xbt_dynar_t action)
 int main(int argc, char *argv[])
 {
   MSG_error_t res = MSG_OK;
-  
+
   /* Check the given arguments */
   MSG_global_init(&argc, argv);
   if (argc < 3) {
-    printf("Usage: %s platform_file deployment_file [action_files]\n", argv[0]);
-    printf("example: %s msg_platform.xml msg_deployment.xml actions # if all actions are in the same file\n",
-           argv[0]);
-    printf("example: %s msg_platform.xml msg_deployment.xml # if actions are in separate files, specified in deployment\n",
+    printf("Usage: %s platform_file deployment_file [action_files]\n",
            argv[0]);
+    printf
+        ("example: %s msg_platform.xml msg_deployment.xml actions # if all actions are in the same file\n",
+         argv[0]);
+    printf
+        ("example: %s msg_platform.xml msg_deployment.xml # if actions are in separate files, specified in deployment\n",
+         argv[0]);
     exit(1);
   }
 
@@ -525,7 +531,7 @@ int main(int argc, char *argv[])
 
 
   /* Actually do the simulation using MSG_action_trace_run */
-  res = MSG_action_trace_run(argv[3]); // it's ok to pass a NULL argument here
+  res = MSG_action_trace_run(argv[3]);  // it's ok to pass a NULL argument here
 
   INFO1("Simulation time %g", MSG_get_clock());
   MSG_clean();
index 9cad168..4258bfb 100644 (file)
@@ -5,13 +5,14 @@
  * under the terms of the license (GNU LGPL) which comes with this package. */
 
 #include <stdio.h>
-#include "msg/msg.h" /* Yeah! If you want to use msg, you need to include msg/msg.h */
-#include "xbt/sysdep.h" /* calloc, printf */
+#include "msg/msg.h"            /* Yeah! If you want to use msg, you need to include msg/msg.h */
+#include "xbt/sysdep.h"         /* calloc, printf */
 
 /* Create a log channel to have nice outputs. */
 #include "xbt/log.h"
 #include "xbt/asserts.h"
-XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test,"Messages specific for this msg example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test,
+                             "Messages specific for this msg example");
 
 
 typedef enum {
@@ -22,218 +23,220 @@ typedef enum {
 int master(int argc, char *argv[]);
 int slave(int argc, char *argv[]);
 int forwarder(int argc, char *argv[]);
-MSG_error_t test_all(const char *platform_file, const char *application_file);
+MSG_error_t test_all(const char *platform_file,
+                     const char *application_file);
 
 
-#define FINALIZE ((void*)221297) /* a magic number to tell people to stop working */
+#define FINALIZE ((void*)221297)        /* a magic number to tell people to stop working */
 
 /** Emitter function  */
 int master(int argc, char *argv[])
 {
-       int alias_count = 0;
-       char** aliases = NULL;
-       m_task_t *todo = NULL;
-       int number_of_tasks = 0;
-       double task_comp_size = 0;
-       double task_comm_size = 0;
-
-
-       int i;
-
-       xbt_assert1(sscanf(argv[1],"%d", &number_of_tasks),"Invalid argument %s\n",argv[1]);
-       xbt_assert1(sscanf(argv[2],"%lg", &task_comp_size),"Invalid argument %s\n",argv[2]);
-       xbt_assert1(sscanf(argv[3],"%lg", &task_comm_size),"Invalid argument %s\n",argv[3]);
-
-       {
-               /*  Task creation */
-               char sprintf_buffer[64];
-
-               todo = xbt_new0(m_task_t,number_of_tasks);
-
-               for (i = 0; i < number_of_tasks; i++) 
-               {
-                       sprintf(sprintf_buffer, "Task_%d", i);
-                       todo[i] = MSG_task_create(sprintf_buffer, task_comp_size, task_comm_size, NULL);
-               }
-       }
-
-       {                  
-               /* Process organisation */
-               alias_count = argc - 4;
-               aliases = xbt_new0(char*,alias_count);
-
-               for(i = 4; i < argc; i++) 
-               {
-                       aliases[i-4] = strdup(argv[i]);
-               }
-       }
-
-       INFO2("Got %d aliases and %d tasks to process", alias_count,number_of_tasks);
-       
-       for (i = 0; i < alias_count; i++)
-               DEBUG1("%s", aliases[i]);
-
-       for (i = 0; i < number_of_tasks; i++) 
-       {
-               INFO2("Sending \"%s\" to \"%s\"",todo[i]->name,aliases[i % alias_count]);
-               
-               if(!strcmp(MSG_host_get_name(MSG_host_self()), aliases[i % alias_count])) 
-               {
-                       INFO0("Hey ! It's me ! :)");
-               }
-
-               MSG_task_send(todo[i], aliases[i % alias_count]);
-               INFO0("Sent");
-       }
-
-       INFO0("All tasks have been dispatched. Let's tell everybody the computation is over.");
-       
-       for (i = 0; i < alias_count; i++) 
-               MSG_task_send(MSG_task_create("finalize", 0, 0, FINALIZE),aliases[i]);
-
-       INFO0("Goodbye now!");
-       
-       for(i = 0; i < alias_count; i++)
-               free(aliases[i]);
-               
-       free(aliases);
-       free(todo);
-       return 0;
-} /* end_of_master */
+  int alias_count = 0;
+  char **aliases = NULL;
+  m_task_t *todo = NULL;
+  int number_of_tasks = 0;
+  double task_comp_size = 0;
+  double task_comm_size = 0;
+
+
+  int i;
+
+  xbt_assert1(sscanf(argv[1], "%d", &number_of_tasks),
+              "Invalid argument %s\n", argv[1]);
+  xbt_assert1(sscanf(argv[2], "%lg", &task_comp_size),
+              "Invalid argument %s\n", argv[2]);
+  xbt_assert1(sscanf(argv[3], "%lg", &task_comm_size),
+              "Invalid argument %s\n", argv[3]);
+
+  {
+    /*  Task creation */
+    char sprintf_buffer[64];
+
+    todo = xbt_new0(m_task_t, number_of_tasks);
+
+    for (i = 0; i < number_of_tasks; i++) {
+      sprintf(sprintf_buffer, "Task_%d", i);
+      todo[i] =
+          MSG_task_create(sprintf_buffer, task_comp_size, task_comm_size,
+                          NULL);
+    }
+  }
+
+  {
+    /* Process organisation */
+    alias_count = argc - 4;
+    aliases = xbt_new0(char *, alias_count);
+
+    for (i = 4; i < argc; i++) {
+      aliases[i - 4] = strdup(argv[i]);
+    }
+  }
+
+  INFO2("Got %d aliases and %d tasks to process", alias_count,
+        number_of_tasks);
+
+  for (i = 0; i < alias_count; i++)
+    DEBUG1("%s", aliases[i]);
+
+  for (i = 0; i < number_of_tasks; i++) {
+    INFO2("Sending \"%s\" to \"%s\"", todo[i]->name,
+          aliases[i % alias_count]);
+
+    if (!strcmp
+        (MSG_host_get_name(MSG_host_self()), aliases[i % alias_count])) {
+      INFO0("Hey ! It's me ! :)");
+    }
+
+    MSG_task_send(todo[i], aliases[i % alias_count]);
+    INFO0("Sent");
+  }
+
+  INFO0
+      ("All tasks have been dispatched. Let's tell everybody the computation is over.");
+
+  for (i = 0; i < alias_count; i++)
+    MSG_task_send(MSG_task_create("finalize", 0, 0, FINALIZE), aliases[i]);
+
+  INFO0("Goodbye now!");
+
+  for (i = 0; i < alias_count; i++)
+    free(aliases[i]);
+
+  free(aliases);
+  free(todo);
+  return 0;
+}                               /* end_of_master */
 
 /** Receiver function  */
 int slave(int argc, char *argv[])
 {
-       m_task_t task = NULL;
-       int res;
-       
-       while(1) 
-       {
-               res = MSG_task_receive(&(task), MSG_host_get_name(MSG_host_self()));
-               xbt_assert0(res == MSG_OK, "MSG_task_receive failed");
-       
-               INFO1("Received \"%s\"", MSG_task_get_name(task));
-       
-               if (!strcmp(MSG_task_get_name(task),"finalize")) 
-               {
-                       MSG_task_destroy(task);
-                       break;
-               }
-
-               INFO1("Processing \"%s\"", MSG_task_get_name(task));
-               MSG_task_execute(task);
-               INFO1("\"%s\" done", MSG_task_get_name(task));
-               MSG_task_destroy(task);
-               task = NULL;
-       }
-       
-       INFO0("I'm done. See you!");
-       return 0;
-} /* end_of_slave */
+  m_task_t task = NULL;
+  int res;
+
+  while (1) {
+    res = MSG_task_receive(&(task), MSG_host_get_name(MSG_host_self()));
+    xbt_assert0(res == MSG_OK, "MSG_task_receive failed");
+
+    INFO1("Received \"%s\"", MSG_task_get_name(task));
+
+    if (!strcmp(MSG_task_get_name(task), "finalize")) {
+      MSG_task_destroy(task);
+      break;
+    }
+
+    INFO1("Processing \"%s\"", MSG_task_get_name(task));
+    MSG_task_execute(task);
+    INFO1("\"%s\" done", MSG_task_get_name(task));
+    MSG_task_destroy(task);
+    task = NULL;
+  }
+
+  INFO0("I'm done. See you!");
+  return 0;
+}                               /* end_of_slave */
 
 /** Forwarder function */
 int forwarder(int argc, char *argv[])
 {
-       int i;
-       int alias_count;
-       char** aliases;
-       
-       {                  /* Process organisation */
-               alias_count = argc - 1;
-               aliases = xbt_new0(char*,alias_count);
-       
-               for (i = 1; i < argc; i++) 
-                       aliases[i-1] =strdup(argv[i]);
-       }
-
-       i=0;
-       
-       while(1) 
-       {
-               m_task_t task = NULL;
-               int a;
-               
-               a = MSG_task_receive(&(task),MSG_host_get_name(MSG_host_self()));
-               
-               if (a == MSG_OK) 
-               {
-                       INFO1("Received \"%s\"", MSG_task_get_name(task));
-                       
-                       if(MSG_task_get_data(task)==FINALIZE) 
-                       {
-                               INFO0("All tasks have been dispatched. Let's tell everybody the computation is over.");
-                               
-                               for (i = 0; i < alias_count; i++) 
-                                       MSG_task_send(MSG_task_create("finalize", 0, 0, FINALIZE),aliases[i]);
-                               
-                               MSG_task_destroy(task);
-                               break;
-                       }
-               
-                       INFO2("Sending \"%s\" to \"%s\"",MSG_task_get_name(task),aliases[i% alias_count]);
-                       MSG_task_send(task, aliases[i % alias_count]);
-                       i++;
-               } 
-               else 
-               {
-                       INFO0("Hey ?! What's up ? ");
-                       xbt_assert0(0,"Unexpected behavior");
-               }
-       }
-       
-       for(i = 0; i < alias_count; i++)
-               free(aliases[i]);
-
-       INFO0("I'm done. See you!");
-       return 0;
-       
-} /* end_of_forwarder */
+  int i;
+  int alias_count;
+  char **aliases;
+
+  {                             /* Process organisation */
+    alias_count = argc - 1;
+    aliases = xbt_new0(char *, alias_count);
+
+    for (i = 1; i < argc; i++)
+      aliases[i - 1] = strdup(argv[i]);
+  }
+
+  i = 0;
+
+  while (1) {
+    m_task_t task = NULL;
+    int a;
+
+    a = MSG_task_receive(&(task), MSG_host_get_name(MSG_host_self()));
+
+    if (a == MSG_OK) {
+      INFO1("Received \"%s\"", MSG_task_get_name(task));
+
+      if (MSG_task_get_data(task) == FINALIZE) {
+        INFO0
+            ("All tasks have been dispatched. Let's tell everybody the computation is over.");
+
+        for (i = 0; i < alias_count; i++)
+          MSG_task_send(MSG_task_create("finalize", 0, 0, FINALIZE),
+                        aliases[i]);
+
+        MSG_task_destroy(task);
+        break;
+      }
+
+      INFO2("Sending \"%s\" to \"%s\"", MSG_task_get_name(task),
+            aliases[i % alias_count]);
+      MSG_task_send(task, aliases[i % alias_count]);
+      i++;
+    } else {
+      INFO0("Hey ?! What's up ? ");
+      xbt_assert0(0, "Unexpected behavior");
+    }
+  }
+
+  for (i = 0; i < alias_count; i++)
+    free(aliases[i]);
+
+  INFO0("I'm done. See you!");
+  return 0;
+
+}                               /* end_of_forwarder */
 
 /** Test function */
-MSG_error_t test_all(const char *platform_file,const char *application_file)
+MSG_error_t test_all(const char *platform_file,
+                     const char *application_file)
 {
-       MSG_error_t res = MSG_OK;
-
-       {       /*  Simulation setting */
-               MSG_set_channel_number(MAX_CHANNEL);
-               MSG_paje_output("msg_test.trace");
-               MSG_create_environment(platform_file);
-       }
-       
-       {
-               /*   Application deployment */
-               MSG_function_register("master", master);
-               MSG_function_register("slave", slave);
-               MSG_function_register("forwarder", forwarder);
-               MSG_launch_application(application_file);
-       }
-       
-       res = MSG_main();
-
-       INFO1("Simulation time %g",MSG_get_clock());
-       return res;
-} /* end_of_test_all */
+  MSG_error_t res = MSG_OK;
+
+  {                             /*  Simulation setting */
+    MSG_set_channel_number(MAX_CHANNEL);
+    MSG_paje_output("msg_test.trace");
+    MSG_create_environment(platform_file);
+  }
+
+  {
+    /*   Application deployment */
+    MSG_function_register("master", master);
+    MSG_function_register("slave", slave);
+    MSG_function_register("forwarder", forwarder);
+    MSG_launch_application(application_file);
+  }
+
+  res = MSG_main();
+
+  INFO1("Simulation time %g", MSG_get_clock());
+  return res;
+}                               /* end_of_test_all */
 
 
 /** Main function */
 int main(int argc, char *argv[])
 {
-       MSG_error_t res = MSG_OK;
-       
-       MSG_global_init(&argc,argv);
-       
-       if (argc < 3) 
-       {
-               printf ("Usage: %s platform_file deployment_file\n",argv[0]);
-               printf ("example: %s msg_platform.xml msg_deployment.xml\n",argv[0]);
-               exit(1);
-       }
-       
-       res = test_all(argv[1],argv[2]);
-       MSG_clean();
-       
-       if(res==MSG_OK)
-               return 0;
-       else
-               return 1;
-} /* end_of_main */
+  MSG_error_t res = MSG_OK;
+
+  MSG_global_init(&argc, argv);
+
+  if (argc < 3) {
+    printf("Usage: %s platform_file deployment_file\n", argv[0]);
+    printf("example: %s msg_platform.xml msg_deployment.xml\n", argv[0]);
+    exit(1);
+  }
+
+  res = test_all(argv[1], argv[2]);
+  MSG_clean();
+
+  if (res == MSG_OK)
+    return 0;
+  else
+    return 1;
+}                               /* end_of_main */
index 22adcee..c288484 100644 (file)
@@ -15,7 +15,8 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test,
 
 int master(int argc, char *argv[]);
 int slave(int argc, char *argv[]);
-MSG_error_t test_all(const char *platform_file, const char *application_file);
+MSG_error_t test_all(const char *platform_file,
+                     const char *application_file);
 
 typedef enum {
   PORT_22 = 0,
@@ -58,14 +59,14 @@ int master(int argc, char *argv[])
   id = atoi(argv[3]);
   sprintf(id_alias, "flow_%d", id);
   slavenames[id] = slavename;
-  TRACE_category (id_alias);
+  TRACE_category(id_alias);
 
   masternames[id] = MSG_host_get_name(MSG_host_self());
 
   {                             /*  Task creation.  */
     char sprintf_buffer[64] = "Task_0";
     todo = MSG_task_create(sprintf_buffer, 0, task_comm_size, NULL);
-    TRACE_msg_set_task_category(todo,id_alias);
+    TRACE_msg_set_task_category(todo, id_alias);
     //keep track of running tasks
     gl_task_array[id] = todo;
     gl_data_size[id] = task_comm_size;
@@ -83,10 +84,12 @@ int master(int argc, char *argv[])
 
 
   if (!bool_printed) {
-    INFO3("Send completed (to %s). Transfer time: %f\t Agregate bandwidth: %f",
-         slave->name, (end_time - start_time),
-         task_comm_size / (end_time - start_time));
-    INFO2("Completed peer: %s time: %f", slave->name, (end_time - start_time));
+    INFO3
+        ("Send completed (to %s). Transfer time: %f\t Agregate bandwidth: %f",
+         slave->name, (end_time - start_time),
+         task_comm_size / (end_time - start_time));
+    INFO2("Completed peer: %s time: %f", slave->name,
+          (end_time - start_time));
   }
   return 0;
 }                               /* end_of_master */
@@ -99,7 +102,7 @@ int slave(int argc, char *argv[])
   int a;
   int id = 0;
 #ifdef HAVE_LATENCY_BOUND_TRACKING
-  int limited_latency=0;
+  int limited_latency = 0;
 #endif
   double remaining = 0;
   char id_alias[10];
@@ -127,42 +130,44 @@ int slave(int argc, char *argv[])
       if (gl_task_array[id] == NULL) {
       } else if (gl_task_array[id] == task) {
 #ifdef HAVE_LATENCY_BOUND_TRACKING
-         limited_latency = MSG_task_is_latency_bounded(gl_task_array[id]);
-          if(limited_latency){
-                 INFO1("WARNING FLOW[%d] is limited by latency!!", id);
-          }
+        limited_latency = MSG_task_is_latency_bounded(gl_task_array[id]);
+        if (limited_latency) {
+          INFO1("WARNING FLOW[%d] is limited by latency!!", id);
+        }
 #endif
-         INFO5
-          ("===> Estimated Bw of FLOW[%d] : %f ;  message from %s to %s  with remaining : %f",
-           id, gl_data_size[id] / elapsed_time, masternames[id],
-           slavenames[id], 0.0);
+        INFO5
+            ("===> Estimated Bw of FLOW[%d] : %f ;  message from %s to %s  with remaining : %f",
+             id, gl_data_size[id] / elapsed_time, masternames[id],
+             slavenames[id], 0.0);
       } else {
-        remaining = MSG_task_get_remaining_communication(gl_task_array[id]);
+        remaining =
+            MSG_task_get_remaining_communication(gl_task_array[id]);
 #ifdef HAVE_LATENCY_BOUND_TRACKING
-       limited_latency = MSG_task_is_latency_bounded(gl_task_array[id]);
+        limited_latency = MSG_task_is_latency_bounded(gl_task_array[id]);
 
-        if(limited_latency){
-         INFO1("WARNING FLOW[%d] is limited by latency!!", id);
+        if (limited_latency) {
+          INFO1("WARNING FLOW[%d] is limited by latency!!", id);
         }
 #endif
         INFO5
-          ("===> Estimated Bw of FLOW[%d] : %f ;  message from %s to %s  with remaining : %f",
-           id, (gl_data_size[id] - remaining) / elapsed_time, masternames[id],
-           slavenames[id], remaining);
+            ("===> Estimated Bw of FLOW[%d] : %f ;  message from %s to %s  with remaining : %f",
+             id, (gl_data_size[id] - remaining) / elapsed_time,
+             masternames[id], slavenames[id], remaining);
       }
 
     }
-  }  
+  }
   char mark[100];
-  snprintf (mark, 100, "flow_%d_finished", trace_id);
-  TRACE_mark ("endmark", mark);
+  snprintf(mark, 100, "flow_%d_finished", trace_id);
+  TRACE_mark("endmark", mark);
 
   MSG_task_destroy(task);
   return 0;
 }                               /* end_of_slave */
 
 /** Test function */
-MSG_error_t test_all(const char *platform_file, const char *application_file)
+MSG_error_t test_all(const char *platform_file,
+                     const char *application_file)
 {
   MSG_error_t res = MSG_OK;
 
@@ -193,14 +198,14 @@ int main(int argc, char *argv[])
     exit(1);
   }
 
-  TRACE_start ();
-  TRACE_declare_mark ("endmark");
+  TRACE_start();
+  TRACE_declare_mark("endmark");
 
   res = test_all(argv[1], argv[2]);
 
   MSG_clean();
 
-  TRACE_end ();
+  TRACE_end();
 
   if (res == MSG_OK)
     return 0;
index 0e2c21d..ccf0ac4 100755 (executable)
@@ -5,18 +5,20 @@
  * under the terms of the license (GNU LGPL) which comes with this package. */
 
 #include <stdio.h>
-#include "msg/msg.h" /* Yeah! If you want to use msg, you need to include msg/msg.h */
-#include "xbt/sysdep.h" /* calloc, printf */
+#include "msg/msg.h"            /* Yeah! If you want to use msg, you need to include msg/msg.h */
+#include "xbt/sysdep.h"         /* calloc, printf */
 
 /* Create a log channel to have nice outputs. */
 #include "xbt/log.h"
 #include "xbt/asserts.h"
-XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test,"Messages specific for this msg example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test,
+                             "Messages specific for this msg example");
 
 int sender(int argc, char *argv[]);
 int receiver(int argc, char *argv[]);
 
-MSG_error_t test_all(const char *platform_file, const char *application_file);
+MSG_error_t test_all(const char *platform_file,
+                     const char *application_file);
 
 /** Sender function  */
 int sender(int argc, char *argv[])
@@ -28,62 +30,57 @@ int sender(int argc, char *argv[])
   double sleep_start_time = atof(argv[5]);
   double sleep_test_time = atof(argv[6]);
 
-  INFO2("sleep_start_time : %f , sleep_test_time : %f",sleep_start_time,sleep_test_time);
+  INFO2("sleep_start_time : %f , sleep_test_time : %f", sleep_start_time,
+        sleep_test_time);
 
   msg_comm_t comm = NULL;
   int i;
   m_task_t task = NULL;
-  MSG_process_sleep (sleep_start_time);
-  for (i = 0; i < number_of_tasks; i++)
-  {
-       char mailbox[256];
-       char sprintf_buffer[256];
+  MSG_process_sleep(sleep_start_time);
+  for (i = 0; i < number_of_tasks; i++) {
+    char mailbox[256];
+    char sprintf_buffer[256];
 
-    sprintf(mailbox,"receiver-%ld",i % receivers_count);
+    sprintf(mailbox, "receiver-%ld", i % receivers_count);
     sprintf(sprintf_buffer, "Task_%d", i);
 
-    task = MSG_task_create(sprintf_buffer, task_comp_size, task_comm_size, NULL);
-    comm=MSG_task_isend(task, mailbox);
-    INFO2("Send to receiver-%ld Task_%d",i % receivers_count,i);
-
-    if(sleep_test_time == 0)
-    {
-       MSG_comm_wait(comm,-1);
-    }
-    else
-    {
-       while(MSG_comm_test(comm) == 0){
-               MSG_process_sleep (sleep_test_time);
-       };
-       MSG_comm_destroy(comm);
+    task =
+        MSG_task_create(sprintf_buffer, task_comp_size, task_comm_size,
+                        NULL);
+    comm = MSG_task_isend(task, mailbox);
+    INFO2("Send to receiver-%ld Task_%d", i % receivers_count, i);
+
+    if (sleep_test_time == 0) {
+      MSG_comm_wait(comm, -1);
+    } else {
+      while (MSG_comm_test(comm) == 0) {
+        MSG_process_sleep(sleep_test_time);
+      };
+      MSG_comm_destroy(comm);
     }
 
   }
 
-  for (i = 0; i < receivers_count; i++)
-  {
+  for (i = 0; i < receivers_count; i++) {
     char mailbox[80];
-    sprintf(mailbox,"receiver-%ld",i % receivers_count);
-    task = MSG_task_create ("finalize", 0, 0, 0);
+    sprintf(mailbox, "receiver-%ld", i % receivers_count);
+    task = MSG_task_create("finalize", 0, 0, 0);
     comm = MSG_task_isend(task, mailbox);
-    INFO1("Send to receiver-%ld finalize",i % receivers_count);
-    if(sleep_test_time == 0)
-    {
-       MSG_comm_wait(comm,-1);
-    }
-    else
-    {
-       while(MSG_comm_test(comm) == 0){
-               MSG_process_sleep (sleep_test_time);
-       };
-       MSG_comm_destroy(comm);
+    INFO1("Send to receiver-%ld finalize", i % receivers_count);
+    if (sleep_test_time == 0) {
+      MSG_comm_wait(comm, -1);
+    } else {
+      while (MSG_comm_test(comm) == 0) {
+        MSG_process_sleep(sleep_test_time);
+      };
+      MSG_comm_destroy(comm);
     }
 
   }
 
   INFO0("Goodbye now!");
   return 0;
-} /* end_of_sender */
+}                               /* end_of_sender */
 
 /** Receiver function  */
 int receiver(int argc, char *argv[])
@@ -95,35 +92,33 @@ int receiver(int argc, char *argv[])
   msg_comm_t res_irecv;
   double sleep_start_time = atof(argv[2]);
   double sleep_test_time = atof(argv[3]);
-  INFO2("sleep_start_time : %f , sleep_test_time : %f",sleep_start_time,sleep_test_time);
-
-  xbt_assert1(sscanf(argv[1],"%d", &id),
-        "Invalid argument %s\n",argv[1]);
-
-  MSG_process_sleep (sleep_start_time);
-
-  sprintf(mailbox,"receiver-%d",id);
-  while(1) {
-       res_irecv = MSG_task_irecv(&(task), mailbox);
-       INFO0("Wait to receive a task");
-
-    if(sleep_test_time == 0)
-    {
-       res = MSG_comm_wait(res_irecv,-1);
-       xbt_assert0(res == MSG_OK, "MSG_task_get failed");
-    }
-    else
-    {
-       while(MSG_comm_test(res_irecv) == 0){
-               MSG_process_sleep (sleep_test_time);
-       };
-       MSG_comm_destroy(res_irecv);
+  INFO2("sleep_start_time : %f , sleep_test_time : %f", sleep_start_time,
+        sleep_test_time);
+
+  xbt_assert1(sscanf(argv[1], "%d", &id),
+              "Invalid argument %s\n", argv[1]);
+
+  MSG_process_sleep(sleep_start_time);
+
+  sprintf(mailbox, "receiver-%d", id);
+  while (1) {
+    res_irecv = MSG_task_irecv(&(task), mailbox);
+    INFO0("Wait to receive a task");
+
+    if (sleep_test_time == 0) {
+      res = MSG_comm_wait(res_irecv, -1);
+      xbt_assert0(res == MSG_OK, "MSG_task_get failed");
+    } else {
+      while (MSG_comm_test(res_irecv) == 0) {
+        MSG_process_sleep(sleep_test_time);
+      };
+      MSG_comm_destroy(res_irecv);
     }
 
-       INFO1("Received \"%s\"", MSG_task_get_name(task));
-       if (!strcmp(MSG_task_get_name(task),"finalize")) {
-         MSG_task_destroy(task);
-         break;
+    INFO1("Received \"%s\"", MSG_task_get_name(task));
+    if (!strcmp(MSG_task_get_name(task), "finalize")) {
+      MSG_task_destroy(task);
+      break;
     }
 
     INFO1("Processing \"%s\"", MSG_task_get_name(task));
@@ -134,29 +129,29 @@ int receiver(int argc, char *argv[])
   }
   INFO0("I'm done. See you!");
   return 0;
-} /* end_of_receiver */
+}                               /* end_of_receiver */
 
 /** Test function */
 MSG_error_t test_all(const char *platform_file,
-                           const char *application_file)
+                     const char *application_file)
 {
   MSG_error_t res = MSG_OK;
 
   /* MSG_config("workstation/model","KCCFLN05"); */
-  {                            /*  Simulation setting */
+  {                             /*  Simulation setting */
     MSG_set_channel_number(0);
     MSG_create_environment(platform_file);
   }
-  {                            /*   Application deployment */
+  {                             /*   Application deployment */
     MSG_function_register("sender", sender);
     MSG_function_register("receiver", receiver);
     MSG_launch_application(application_file);
   }
   res = MSG_main();
-  
-  INFO1("Simulation time %g",MSG_get_clock());
+
+  INFO1("Simulation time %g", MSG_get_clock());
   return res;
-} /* end_of_test_all */
+}                               /* end_of_test_all */
 
 
 /** Main function */
@@ -164,18 +159,18 @@ int main(int argc, char *argv[])
 {
   MSG_error_t res = MSG_OK;
 
-  MSG_global_init(&argc,argv);
+  MSG_global_init(&argc, argv);
   if (argc < 3) {
-     printf ("Usage: %s platform_file deployment_file\n",argv[0]);
-     printf ("example: %s msg_platform.xml msg_deployment.xml\n",argv[0]);
-     exit(1);
+    printf("Usage: %s platform_file deployment_file\n", argv[0]);
+    printf("example: %s msg_platform.xml msg_deployment.xml\n", argv[0]);
+    exit(1);
   }
-  res = test_all(argv[1],argv[2]);
-   SIMIX_message_sizes_output("toto.txt");
+  res = test_all(argv[1], argv[2]);
+  SIMIX_message_sizes_output("toto.txt");
   MSG_clean();
 
-  if(res==MSG_OK)
+  if (res == MSG_OK)
     return 0;
   else
     return 1;
-} /* end_of_main */
+}                               /* end_of_main */
index 0625a15..6a0d0fc 100755 (executable)
@@ -5,18 +5,20 @@
  * under the terms of the license (GNU LGPL) which comes with this package. */
 
 #include <stdio.h>
-#include "msg/msg.h" /* Yeah! If you want to use msg, you need to include msg/msg.h */
-#include "xbt/sysdep.h" /* calloc, printf */
+#include "msg/msg.h"            /* Yeah! If you want to use msg, you need to include msg/msg.h */
+#include "xbt/sysdep.h"         /* calloc, printf */
 
 /* Create a log channel to have nice outputs. */
 #include "xbt/log.h"
 #include "xbt/asserts.h"
-XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test,"Messages specific for this msg example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test,
+                             "Messages specific for this msg example");
 
 int sender(int argc, char *argv[]);
 int receiver(int argc, char *argv[]);
 
-MSG_error_t test_all(const char *platform_file, const char *application_file);
+MSG_error_t test_all(const char *platform_file,
+                     const char *application_file);
 
 /** Sender function  */
 int sender(int argc, char *argv[])
@@ -26,34 +28,35 @@ int sender(int argc, char *argv[])
   double task_comm_size = atof(argv[3]);
   long receivers_count = atol(argv[4]);
 
-  msg_comm_t *comm = malloc((number_of_tasks+receivers_count)*sizeof(msg_comm_t));
+  msg_comm_t *comm =
+      malloc((number_of_tasks + receivers_count) * sizeof(msg_comm_t));
   int i;
   m_task_t task = NULL;
-  for (i = 0; i < number_of_tasks; i++)
-  {
-       char mailbox[256];
-       char sprintf_buffer[256];
-    sprintf(mailbox,"receiver-%ld",i % receivers_count);
+  for (i = 0; i < number_of_tasks; i++) {
+    char mailbox[256];
+    char sprintf_buffer[256];
+    sprintf(mailbox, "receiver-%ld", i % receivers_count);
     sprintf(sprintf_buffer, "Task_%d", i);
-    task = MSG_task_create(sprintf_buffer, task_comp_size, task_comm_size, NULL);
-    comm[i]=MSG_task_isend(task, mailbox);
-    INFO2("Send to receiver-%ld Task_%d",i % receivers_count,i);
+    task =
+        MSG_task_create(sprintf_buffer, task_comp_size, task_comm_size,
+                        NULL);
+    comm[i] = MSG_task_isend(task, mailbox);
+    INFO2("Send to receiver-%ld Task_%d", i % receivers_count, i);
   }
-  for (i = 0; i < receivers_count; i++)
-  {
+  for (i = 0; i < receivers_count; i++) {
     char mailbox[80];
-    sprintf(mailbox,"receiver-%ld",i % receivers_count);
-    task = MSG_task_create ("finalize", 0, 0, 0);
-    comm[i+number_of_tasks]=MSG_task_isend(task, mailbox);
-    INFO1("Send to receiver-%ld finalize",i % receivers_count);
+    sprintf(mailbox, "receiver-%ld", i % receivers_count);
+    task = MSG_task_create("finalize", 0, 0, 0);
+    comm[i + number_of_tasks] = MSG_task_isend(task, mailbox);
+    INFO1("Send to receiver-%ld finalize", i % receivers_count);
 
   }
-  /* Here we are waiting for the completion of all communications*/
-  MSG_comm_waitall(comm,(number_of_tasks+receivers_count),-1);
+  /* Here we are waiting for the completion of all communications */
+  MSG_comm_waitall(comm, (number_of_tasks + receivers_count), -1);
 
   INFO0("Goodbye now!");
   return 0;
-} /* end_of_sender */
+}                               /* end_of_sender */
 
 /** Receiver function  */
 int receiver(int argc, char *argv[])
@@ -63,19 +66,19 @@ int receiver(int argc, char *argv[])
   int id = -1;
   char mailbox[80];
   msg_comm_t res_irecv;
-  xbt_assert1(sscanf(argv[1],"%d", &id),
-        "Invalid argument %s\n",argv[1]);
-  MSG_process_sleep (10);
-  sprintf(mailbox,"receiver-%d",id);
-  while(1) {
-       res_irecv = MSG_task_irecv(&(task), mailbox);
-       INFO0("Wait to receive a task");
-       res = MSG_comm_wait(res_irecv,-1);
-       xbt_assert0(res == MSG_OK, "MSG_task_get failed");
-       INFO1("Received \"%s\"", MSG_task_get_name(task));
-       if (!strcmp(MSG_task_get_name(task),"finalize")) {
-         MSG_task_destroy(task);
-         break;
+  xbt_assert1(sscanf(argv[1], "%d", &id),
+              "Invalid argument %s\n", argv[1]);
+  MSG_process_sleep(10);
+  sprintf(mailbox, "receiver-%d", id);
+  while (1) {
+    res_irecv = MSG_task_irecv(&(task), mailbox);
+    INFO0("Wait to receive a task");
+    res = MSG_comm_wait(res_irecv, -1);
+    xbt_assert0(res == MSG_OK, "MSG_task_get failed");
+    INFO1("Received \"%s\"", MSG_task_get_name(task));
+    if (!strcmp(MSG_task_get_name(task), "finalize")) {
+      MSG_task_destroy(task);
+      break;
     }
 
     INFO1("Processing \"%s\"", MSG_task_get_name(task));
@@ -86,29 +89,29 @@ int receiver(int argc, char *argv[])
   }
   INFO0("I'm done. See you!");
   return 0;
-} /* end_of_receiver */
+}                               /* end_of_receiver */
 
 /** Test function */
 MSG_error_t test_all(const char *platform_file,
-                           const char *application_file)
+                     const char *application_file)
 {
   MSG_error_t res = MSG_OK;
 
   /* MSG_config("workstation/model","KCCFLN05"); */
-  {                            /*  Simulation setting */
+  {                             /*  Simulation setting */
     MSG_set_channel_number(0);
     MSG_create_environment(platform_file);
   }
-  {                            /*   Application deployment */
+  {                             /*   Application deployment */
     MSG_function_register("sender", sender);
     MSG_function_register("receiver", receiver);
     MSG_launch_application(application_file);
   }
   res = MSG_main();
-  
-  INFO1("Simulation time %g",MSG_get_clock());
+
+  INFO1("Simulation time %g", MSG_get_clock());
   return res;
-} /* end_of_test_all */
+}                               /* end_of_test_all */
 
 
 /** Main function */
@@ -116,18 +119,18 @@ int main(int argc, char *argv[])
 {
   MSG_error_t res = MSG_OK;
 
-  MSG_global_init(&argc,argv);
+  MSG_global_init(&argc, argv);
   if (argc < 3) {
-     printf ("Usage: %s platform_file deployment_file\n",argv[0]);
-     printf ("example: %s msg_platform.xml msg_deployment.xml\n",argv[0]);
-     exit(1);
+    printf("Usage: %s platform_file deployment_file\n", argv[0]);
+    printf("example: %s msg_platform.xml msg_deployment.xml\n", argv[0]);
+    exit(1);
   }
-  res = test_all(argv[1],argv[2]);
-   SIMIX_message_sizes_output("toto.txt");
+  res = test_all(argv[1], argv[2]);
+  SIMIX_message_sizes_output("toto.txt");
   MSG_clean();
 
-  if(res==MSG_OK)
+  if (res == MSG_OK)
     return 0;
   else
     return 1;
-} /* end_of_main */
+}                               /* end_of_main */
index 45b4f56..feba87d 100755 (executable)
@@ -5,18 +5,20 @@
  * under the terms of the license (GNU LGPL) which comes with this package. */
 
 #include <stdio.h>
-#include "msg/msg.h" /* Yeah! If you want to use msg, you need to include msg/msg.h */
-#include "xbt/sysdep.h" /* calloc, printf */
+#include "msg/msg.h"            /* Yeah! If you want to use msg, you need to include msg/msg.h */
+#include "xbt/sysdep.h"         /* calloc, printf */
 #include <math.h>
 /* Create a log channel to have nice outputs. */
 #include "xbt/log.h"
 #include "xbt/asserts.h"
-XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test,"Messages specific for this msg example");
+XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test,
+                             "Messages specific for this msg example");
 
 int sender(int argc, char *argv[]);
 int receiver(int argc, char *argv[]);
 
-MSG_error_t test_all(const char *platform_file, const char *application_file);
+MSG_error_t test_all(const char *platform_file,
+                     const char *application_file);
 
 /** Sender function  */
 int sender(int argc, char *argv[])
@@ -26,53 +28,57 @@ int sender(int argc, char *argv[])
   double task_comm_size = atof(argv[3]);
   long receivers_count = atol(argv[4]);
   int diff_com = atol(argv[5]);
-  double coef= 0;
+  double coef = 0;
   xbt_dynar_t d = NULL;
   int i;
   m_task_t task = NULL;
   char mailbox[256];
   char sprintf_buffer[256];
   d = xbt_dynar_new(sizeof(msg_comm_t), NULL);
-  msg_comm_t *comm = malloc((number_of_tasks+receivers_count)*sizeof(msg_comm_t));
+  msg_comm_t *comm =
+      malloc((number_of_tasks + receivers_count) * sizeof(msg_comm_t));
   msg_comm_t res_irecv = NULL;
-  for (i = 0; i < (number_of_tasks); i++)
-  {
-       task = NULL;
-       if(diff_com == 0) coef = 1;
-       else coef = (i+1);
-
-    sprintf(mailbox,"receiver-%ld",(i % receivers_count));
+  for (i = 0; i < (number_of_tasks); i++) {
+    task = NULL;
+    if (diff_com == 0)
+      coef = 1;
+    else
+      coef = (i + 1);
+
+    sprintf(mailbox, "receiver-%ld", (i % receivers_count));
     sprintf(sprintf_buffer, "Task_%d", i);
-    task = MSG_task_create(sprintf_buffer, task_comp_size, task_comm_size/coef, NULL);
+    task =
+        MSG_task_create(sprintf_buffer, task_comp_size,
+                        task_comm_size / coef, NULL);
     comm[i] = MSG_task_isend(task, mailbox);
     MSG_task_refcount_dec(task);
     xbt_dynar_push_as(d, msg_comm_t, comm[i]);
-    INFO3("Send to receiver-%ld %s comm_size %f",i % receivers_count,sprintf_buffer,task_comm_size/coef);
+    INFO3("Send to receiver-%ld %s comm_size %f", i % receivers_count,
+          sprintf_buffer, task_comm_size / coef);
   }
-  /* Here we are waiting for the completion of all communications*/
+  /* Here we are waiting for the completion of all communications */
 
-  while(d->used)
-  {
+  while (d->used) {
     xbt_dynar_remove_at(d, MSG_comm_waitany(d), &res_irecv);
   }
   xbt_dynar_free(&d);
 
 
-  /* Here we are waiting for the completion of all tasks*/
-  sprintf(mailbox,"finalize");
+  /* Here we are waiting for the completion of all tasks */
+  sprintf(mailbox, "finalize");
 
-  for(i=0; i<receivers_count; i++)
-  {
-         task = NULL;
-         res_irecv = NULL;
-         res_irecv = MSG_task_irecv(&(task), mailbox);
-         xbt_assert0(MSG_comm_wait(res_irecv,-1) == MSG_OK, "MSG_comm_wait failed");
-         MSG_task_destroy(task);
+  for (i = 0; i < receivers_count; i++) {
+    task = NULL;
+    res_irecv = NULL;
+    res_irecv = MSG_task_irecv(&(task), mailbox);
+    xbt_assert0(MSG_comm_wait(res_irecv, -1) == MSG_OK,
+                "MSG_comm_wait failed");
+    MSG_task_destroy(task);
   }
 
   INFO0("Goodbye now!");
   return 0;
-} /* end_of_sender */
+}                               /* end_of_sender */
 
 /** Receiver function  */
 int receiver(int argc, char *argv[])
@@ -84,68 +90,66 @@ int receiver(int argc, char *argv[])
   int tasks = atof(argv[2]);
   comms = xbt_dynar_new(sizeof(msg_comm_t), NULL);
 
-  xbt_assert1(sscanf(argv[1],"%d", &id),
-        "Invalid argument %s\n",argv[1]);
-  sprintf(mailbox,"receiver-%d",id);
-  MSG_process_sleep (10);
+  xbt_assert1(sscanf(argv[1], "%d", &id),
+              "Invalid argument %s\n", argv[1]);
+  sprintf(mailbox, "receiver-%d", id);
+  MSG_process_sleep(10);
   msg_comm_t res_irecv = NULL;
   m_task_t task = NULL;
   m_task_t task_com = NULL;
-  for(i=0; i<tasks ;i++)
-  {
-       INFO1("Wait to receive task %d",i);
-       res_irecv = MSG_task_irecv(&task, mailbox);
-       xbt_dynar_push_as(comms, msg_comm_t , res_irecv);
-       task = NULL;
-       res_irecv = NULL;
+  for (i = 0; i < tasks; i++) {
+    INFO1("Wait to receive task %d", i);
+    res_irecv = MSG_task_irecv(&task, mailbox);
+    xbt_dynar_push_as(comms, msg_comm_t, res_irecv);
+    task = NULL;
+    res_irecv = NULL;
   }
 
-  /* Here we are waiting for the receiving of all communications*/
-  while(comms->used)
-  {
-       task_com = NULL;
-       res_irecv = NULL;
-       MSG_error_t err = MSG_OK;
-       int num = MSG_comm_waitany(comms);
-       xbt_dynar_remove_at(comms, num, &res_irecv);
-       task_com = MSG_comm_get_task(res_irecv);
-       INFO1("Processing \"%s\"", MSG_task_get_name(task_com) );
-       MSG_task_execute(task_com);
-       INFO1("\"%s\" done", MSG_task_get_name(task_com));
-       err = MSG_task_destroy(task_com);
-       xbt_assert0(err == MSG_OK, "MSG_task_destroy failed");
+  /* Here we are waiting for the receiving of all communications */
+  while (comms->used) {
+    task_com = NULL;
+    res_irecv = NULL;
+    MSG_error_t err = MSG_OK;
+    int num = MSG_comm_waitany(comms);
+    xbt_dynar_remove_at(comms, num, &res_irecv);
+    task_com = MSG_comm_get_task(res_irecv);
+    INFO1("Processing \"%s\"", MSG_task_get_name(task_com));
+    MSG_task_execute(task_com);
+    INFO1("\"%s\" done", MSG_task_get_name(task_com));
+    err = MSG_task_destroy(task_com);
+    xbt_assert0(err == MSG_OK, "MSG_task_destroy failed");
   }
   xbt_dynar_free(&comms);
 
-  /* Here we tell to sender that all tasks are done*/
-  sprintf(mailbox,"finalize");
+  /* Here we tell to sender that all tasks are done */
+  sprintf(mailbox, "finalize");
   res_irecv = MSG_task_isend(MSG_task_create(NULL, 0, 0, NULL), mailbox);
-  MSG_comm_wait(res_irecv,-1);
+  MSG_comm_wait(res_irecv, -1);
   INFO0("I'm done. See you!");
   return 0;
-} /* end_of_receiver */
+}                     &nbs