Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
get trace category from surf_action instead of smx_action when tracing categorized...
[simgrid.git] / src / instr / smx_instr.c
index 6c996d5..1ff402b 100644 (file)
@@ -1,14 +1,8 @@
-/*
- * smx.c
- *
- *  Created on: Nov 24, 2009
- *      Author: Lucas Schnorr
- *     License: This program is free software; you can redistribute
- *              it and/or modify it under the terms of the license
- *              (GNU LGPL) which comes with this package.
- *
- *     Copyright (c) 2009 The SimGrid team.
- */
+/* Copyright (c) 2010. The SimGrid Team.
+ * All rights reserved.                                                     */
+
+/* This program is free software; you can redistribute it and/or modify it
+  * under the terms of the license (GNU LGPL) which comes with this package. */
 
 #include "instr/private.h"
 
@@ -18,26 +12,29 @@ static long long int counter = 0; /* to uniquely identify simix actions */
 
 void TRACE_smx_action_execute (smx_action_t act)
 {
+       char *category = NULL;
   if (!IS_TRACING) return;
 
   act->counter = counter++;
-  char *category = __TRACE_current_category_get (SIMIX_process_self());
+  category = TRACE_category_get (SIMIX_process_self());
   if (category){
-       act->category = xbt_new (char, strlen (category)+1);
-       strncpy (act->category, category, strlen(category)+1);
+    act->category = xbt_new (char, strlen (category)+1);
+    strncpy (act->category, category, strlen(category)+1);
   }
+  TRACE_surf_resource_utilization_start (act);
 }
 
 void TRACE_smx_action_communicate (smx_action_t act, smx_process_t proc)
 {
+       char *category = NULL;
   if (!IS_TRACING) return;
 
   act->counter = counter++;
-  char *category = __TRACE_current_category_get (proc);
+  category = TRACE_category_get (proc);
   if (category){
-       act->category = xbt_new (char, strlen (category)+1);
-       strncpy (act->category, category, strlen(category)+1);
+    act->category = xbt_strdup (category);
   }
+  TRACE_surf_resource_utilization_start (act);
 }
 
 void TRACE_smx_action_destroy (smx_action_t act)
@@ -47,6 +44,7 @@ void TRACE_smx_action_destroy (smx_action_t act)
   if (act->category){
     xbt_free (act->category);
   }
+  TRACE_surf_resource_utilization_end (act);
 }
 
 #endif