Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
changes for solve warrings
[simgrid.git] / src / surf / workstation_ptask_L07.c
index 6b7e0aa..e011175 100644 (file)
@@ -1,6 +1,5 @@
-/*     $Id$     */
-
-/* Copyright (c) 2007 Arnaud Legrand. All rights reserved.                  */
+/* Copyright (c) 2007, 2008, 2009, 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. */
@@ -665,6 +664,17 @@ static void ptask_parse_cpu_init(void)
           state_initial, state_trace, current_property_set);
 }
 
+static void ptask_cpu_create_resource(char *name, double power_peak,
+        double power_scale,
+        tmgr_trace_t power_trace,
+        e_surf_resource_state_t state_initial,
+        tmgr_trace_t state_trace,
+        xbt_dict_t cpu_properties)
+{
+       ptask_cpu_new(xbt_strdup(name),power_peak,power_scale,power_trace,
+                                         state_initial,state_trace,cpu_properties);
+}
+
 static link_L07_t ptask_link_new(char *name,
                            double bw_initial,
                            tmgr_trace_t bw_trace,
@@ -749,6 +759,23 @@ static void ptask_parse_link_init(void)
            current_property_set);
 }
 
+static void ptask_link_create_resource(char *name,
+                                                                         double bw_initial,
+                                                                         tmgr_trace_t bw_trace,
+                                                                         double lat_initial,
+                                                                         tmgr_trace_t lat_trace,
+                                                                         e_surf_resource_state_t
+                                                                         state_initial,
+                                                                         tmgr_trace_t state_trace,
+                                                                         e_surf_link_sharing_policy_t
+                                                                         policy, xbt_dict_t properties)
+{
+
+       ptask_link_new(name, bw_initial, bw_trace,
+                  lat_initial, lat_trace, state_initial, state_trace,policy, xbt_dict_new());
+}
+
+
 static void ptask_add_traces(void)
 {
   xbt_dict_cursor_t cursor = NULL;
@@ -822,7 +849,6 @@ static void ptask_define_callbacks(const char *file)
   surfxml_add_callback(ETag_surfxml_platform_cb_list, &ptask_add_traces);
 }
 
-
 /**************************************/
 /********* Module  creation ***********/
 /**************************************/
@@ -850,6 +876,7 @@ static void ptask_model_init_internal(void)
     ptask_update_resource_state;
   surf_workstation_model->model_private->finalize = ptask_finalize;
 
+
   surf_workstation_model->extension.workstation.execute = ptask_execute;
   surf_workstation_model->extension.workstation.sleep = ptask_action_sleep;
   surf_workstation_model->extension.workstation.get_state =
@@ -868,7 +895,11 @@ static void ptask_model_init_internal(void)
   surf_workstation_model->extension.workstation.link_shared = ptask_link_shared;
   surf_workstation_model->extension.workstation.get_properties =
     surf_resource_properties;
-
+  surf_workstation_model->extension.workstation.link_create_resource =
+       ptask_link_create_resource;
+  surf_workstation_model->extension.workstation.cpu_create_resource =
+       ptask_cpu_create_resource;
+  surf_workstation_model->extension.workstation.add_traces = ptask_add_traces;
 
   if (!ptask_maxmin_system)
     ptask_maxmin_system = lmm_system_new();
@@ -886,6 +917,7 @@ static void ptask_model_init_internal(void)
 /**************************************/
 void surf_workstation_model_init_ptask_L07(const char *filename)
 {
+  INFO0("surf_workstation_model_init_ptask_L07");
   xbt_assert0(!surf_cpu_model, "CPU model type already defined");
   xbt_assert0(!surf_network_model, "network model type already defined");
   surf_network_model = surf_model_init();