Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
saner pattern use in the trace files
[simgrid.git] / src / surf / surfxml_parse.c
index 9235b3c..10c9ff0 100644 (file)
@@ -21,7 +21,7 @@ int ETag_surfxml_include_state(void);
 /*
  * Helping functions
  */
-void surf_parse_error(char *msg) {
+void surf_parse_error(const char *msg) {
   xbt_die("Parse error on line %d: %s\n", surf_parse_lineno, msg);
 }
 
@@ -68,8 +68,6 @@ xbt_dynar_t STag_surfxml_trace_connect_cb_list = NULL;
 xbt_dynar_t ETag_surfxml_trace_connect_cb_list = NULL;
 xbt_dynar_t STag_surfxml_random_cb_list = NULL;
 xbt_dynar_t ETag_surfxml_random_cb_list = NULL;
-xbt_dynar_t STag_surfxml_AS_cb_list = NULL;
-xbt_dynar_t ETag_surfxml_AS_cb_list = NULL;
 xbt_dynar_t STag_surfxml_ASroute_cb_list = NULL;
 xbt_dynar_t ETag_surfxml_ASroute_cb_list = NULL;
 xbt_dynar_t STag_surfxml_bypassRoute_cb_list = NULL;
@@ -88,10 +86,6 @@ static XBT_INLINE void surfxml_call_cb_functions(xbt_dynar_t);
 YY_BUFFER_STATE surf_input_buffer;
 FILE *surf_file_to_parse = NULL;
 
-static void parse_Stag_trace(void);
-static void parse_Etag_trace(void);
-static void parse_Stag_trace_connect(void);
-
 static void init_randomness(void);
 static void add_randomness(void);
 
@@ -174,8 +168,6 @@ void surf_parse_init_callbacks(void)
              xbt_dynar_new(sizeof(void_f_void_t), NULL);
          STag_surfxml_random_cb_list = xbt_dynar_new(sizeof(void_f_void_t), NULL);
          ETag_surfxml_random_cb_list = xbt_dynar_new(sizeof(void_f_void_t), NULL);
-         STag_surfxml_AS_cb_list = xbt_dynar_new(sizeof(void_f_void_t), NULL);
-         ETag_surfxml_AS_cb_list = xbt_dynar_new(sizeof(void_f_void_t), NULL);
          STag_surfxml_ASroute_cb_list =
              xbt_dynar_new(sizeof(void_f_void_t), NULL);
          ETag_surfxml_ASroute_cb_list =
@@ -224,8 +216,6 @@ void surf_parse_free_callbacks(void)
   xbt_dynar_free(&ETag_surfxml_trace_connect_cb_list);
   xbt_dynar_free(&STag_surfxml_random_cb_list);
   xbt_dynar_free(&ETag_surfxml_random_cb_list);
-  xbt_dynar_free(&STag_surfxml_AS_cb_list);
-  xbt_dynar_free(&ETag_surfxml_AS_cb_list);
   xbt_dynar_free(&STag_surfxml_ASroute_cb_list);
   xbt_dynar_free(&ETag_surfxml_ASroute_cb_list);
   xbt_dynar_free(&STag_surfxml_bypassRoute_cb_list);
@@ -264,10 +254,10 @@ void STag_surfxml_platform(void) {
       "This program is installed automatically with SimGrid, or "
       "available in the tools/ directory of the source archive.");
 
-  sg_platf_open();
+  sg_platf_begin();
 }
 void ETag_surfxml_platform(void){
-  sg_platf_close();
+  sg_platf_end();
 }
 
 void STag_surfxml_host(void){
@@ -337,7 +327,7 @@ void ETag_surfxml_cluster(void){
 }
 
 void STag_surfxml_peer(void){
-  s_surf_parsing_peer_arg_t peer;
+  s_sg_platf_peer_cbarg_t peer;
   memset(&peer,0,sizeof(peer));
        peer.id = A_surfxml_peer_id;
        peer.power = surf_parse_get_double(A_surfxml_peer_power);
@@ -421,7 +411,10 @@ void STag_surfxml_trace_connect(void){
        surfxml_call_cb_functions(STag_surfxml_trace_connect_cb_list);
 }
 void STag_surfxml_AS(void){
-       surfxml_call_cb_functions(STag_surfxml_AS_cb_list);
+  sg_platf_new_AS_begin(A_surfxml_AS_id,A_surfxml_AS_routing);
+}
+void ETag_surfxml_AS(void){
+  sg_platf_new_AS_end();
 }
 void STag_surfxml_ASroute(void){
        surfxml_call_cb_functions(STag_surfxml_ASroute_cb_list);
@@ -466,7 +459,6 @@ parse_method(E, prop);
 parse_method(E, trace);
 parse_method(E, trace_connect);
 parse_method(E, random);
-parse_method(E, AS);
 parse_method(E, ASroute);
 parse_method(E, bypassRoute);
 
@@ -499,10 +491,8 @@ void surf_parse_open(const char *file)
 
 void surf_parse_close(void)
 {
-  if (surf_input_buffer_stack)
-    xbt_dynar_free(&surf_input_buffer_stack);
-  if (surf_file_to_parse_stack)
-    xbt_dynar_free(&surf_file_to_parse_stack);
+  xbt_dynar_free(&surf_input_buffer_stack);
+  xbt_dynar_free(&surf_file_to_parse_stack);
 
   if (surf_file_to_parse) {
     surf_parse__delete_buffer(surf_input_buffer);