Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
first change to have hierarchical class - definecontainertype
authorTakishipp <toufik.boubehziz@gmail.com>
Tue, 11 Apr 2017 14:53:04 +0000 (16:53 +0200)
committerTakishipp <toufik.boubehziz@gmail.com>
Tue, 11 Apr 2017 14:53:04 +0000 (16:53 +0200)
src/instr/instr_paje_types.cpp
src/instr/instr_private.h
src/instr/instr_trace.cpp

index 65fa3dd..0135b7e 100644 (file)
@@ -130,7 +130,7 @@ type_t PJ_type_container_new (const char *name, type_t father)
 
   if(father){
     XBT_DEBUG("ContainerType %s(%s), child of %s(%s)", ret->name, ret->id, father->name, father->id);
-    EltContainer.new_pajeDefineContainerType (ret);
+    EltContainer.Event(ret);
   }
   return ret;
 }
index 51aeb50..0b2f176 100644 (file)
@@ -124,22 +124,26 @@ class paje_event {
   void (*print) (paje_event_t event);
   void (*free) (paje_event_t event);
   void *data;
+  void Event(type_t type);
 };
 typedef paje_event s_paje_event_t;
+
 //--------------------------------------------------
+
 class s_defineContainerType;
 
 typedef s_defineContainerType *defineContainerType_t;
-class s_defineContainerType {
+class s_defineContainerType: public paje_event
+{
   public:
   type_t type;
-  XBT_PUBLIC(void) new_pajeDefineContainerType(type_t type);
 };
 typedef s_defineContainerType s_defineContainerType_t;
 //--------------------------------------------------
 
 typedef struct s_defineVariableType *defineVariableType_t;
-typedef struct s_defineVariableType {
+typedef struct s_defineVariableType: public paje_event
+ {
   type_t type;
 }s_defineVariableType_t;
 
index 0521678..b9276b5 100644 (file)
@@ -123,7 +123,7 @@ static void free_paje_event (paje_event_t event)
   xbt_free (event);
 }
 
-void s_defineContainerType::new_pajeDefineContainerType(type_t type)
+void paje_event::Event(type_t type)
 {
   paje_event_t event                           = xbt_new0(s_paje_event_t, 1);
   event->event_type                            = PAJE_DefineContainerType;
@@ -140,6 +140,25 @@ void s_defineContainerType::new_pajeDefineContainerType(type_t type)
   event->free (event);
 }
 
+//--------------------------------------------------------
+/*
+void s_defineContainerType::new_pajeDefineContainerType(type_t type)
+{
+  paje_event_t event                           = xbt_new0(s_paje_event_t, 1);
+  event->event_type                            = PAJE_DefineContainerType;
+  event->timestamp                             = 0;
+  event->print                                 = active_writer.print_DefineContainerType;
+  event->free                                  = &free_paje_event;
+  event->data                                  = xbt_new0(s_defineContainerType_t, 1);
+  ((defineContainerType_t)(event->data))->type = type;
+
+  XBT_DEBUG("%s: event_type=%d", __FUNCTION__, (int)event->event_type);
+
+  //print it
+  event->print (event);
+  event->free (event);
+}
+*/
 void new_pajeDefineVariableType(type_t type)
 {
   paje_event_t event                          = xbt_new0(s_paje_event_t, 1);