Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix initialization order.
[simgrid.git] / src / surf / workstation.cpp
index 4771d97..e1d23b9 100644 (file)
@@ -30,6 +30,7 @@ void surf_workstation_model_init_current_default(void)
   xbt_cfg_setdefault_boolean(_sg_cfg_set, "network/crosstraffic", "yes");
   surf_cpu_model_init_Cas01();
   surf_network_model_init_LegrandVelho();
+  surf_workstation_model->p_cpuModel = surf_cpu_model_pm;
 
   ModelPtr model = static_cast<ModelPtr>(surf_workstation_model);
   xbt_dynar_push(model_list, &model);
@@ -51,6 +52,7 @@ void surf_workstation_model_init_compound()
 }
 
 WorkstationModel::WorkstationModel() : Model("Workstation") {
+  p_cpuModel = surf_cpu_model_pm;
 }
 
 WorkstationModel::~WorkstationModel() {
@@ -125,7 +127,7 @@ void WorkstationModel::adjustWeightOfDummyCpuActions()
 double WorkstationModel::shareResources(double now){
   adjustWeightOfDummyCpuActions();
 
-  double min_by_cpu = surf_cpu_model_pm->shareResources(now);
+  double min_by_cpu = p_cpuModel->shareResources(now);
   double min_by_net = surf_network_model->shareResources(now);
 
   XBT_DEBUG("model %p, %s min_by_cpu %f, %s min_by_net %f",
@@ -141,7 +143,7 @@ double WorkstationModel::shareResources(double now){
     return min_by_cpu;  /* probably min_by_cpu == min_by_net == -1 */
 }
 
-void WorkstationModel::updateActionsState(double now, double delta){
+void WorkstationModel::updateActionsState(double /*now*/, double /*delta*/){
   return;
 }
 
@@ -202,7 +204,7 @@ bool WorkstationCLM03::isUsed(){
   return -1;
 }
 
-void WorkstationCLM03::updateState(tmgr_trace_event_t event_type, double value, double date){
+void WorkstationCLM03::updateState(tmgr_trace_event_t /*event_type*/, double /*value*/, double /*date*/){
   THROW_IMPOSSIBLE;             /* This model does not implement parallel tasks */
 }
 
@@ -307,13 +309,13 @@ ActionPtr WorkstationCLM03::close(surf_file_t fd) {
   return st->close(fd);
 }
 
-ActionPtr WorkstationCLM03::read(surf_file_t fd, sg_storage_size_t size) {
+ActionPtr WorkstationCLM03::read(surf_file_t fd, sg_size_t size) {
   StoragePtr st = findStorageOnMountList(fd->mount);
   XBT_DEBUG("READ on disk '%s'",st->m_name);
   return st->read(fd, size);
 }
 
-ActionPtr WorkstationCLM03::write(surf_file_t fd, sg_storage_size_t size) {
+ActionPtr WorkstationCLM03::write(surf_file_t fd, sg_size_t size) {
   StoragePtr st = findStorageOnMountList(fd->mount);
   XBT_DEBUG("WRITE on disk '%s'",st->m_name);
   return st->write(fd, size);
@@ -352,17 +354,17 @@ ActionPtr WorkstationCLM03::ls(const char* mount, const char *path){
   return st->ls(path);
 }
 
-sg_storage_size_t WorkstationCLM03::getSize(surf_file_t fd){
+sg_size_t WorkstationCLM03::getSize(surf_file_t fd){
   return fd->size;
 }
 
 xbt_dynar_t WorkstationCLM03::getInfo( surf_file_t fd)
 {
   StoragePtr st = findStorageOnMountList(fd->mount);
-  sg_storage_size_t *psize = xbt_new(sg_storage_size_t, 1);
+  sg_size_t *psize = xbt_new(sg_size_t, 1);
   *psize = fd->size;
   xbt_dynar_t info = xbt_dynar_new(sizeof(void*), NULL);
-  xbt_dynar_push_as(info, sg_storage_size_t *, psize);
+  xbt_dynar_push_as(info, sg_size_t *, psize);
   xbt_dynar_push_as(info, void *, fd->mount);
   xbt_dynar_push_as(info, void *, (void *)st->m_name);
   xbt_dynar_push_as(info, void *, st->p_typeId);
@@ -371,13 +373,13 @@ xbt_dynar_t WorkstationCLM03::getInfo( surf_file_t fd)
   return info;
 }
 
-sg_storage_size_t WorkstationCLM03::getFreeSize(const char* name)
+sg_size_t WorkstationCLM03::getFreeSize(const char* name)
 {
   StoragePtr st = findStorageOnMountList(name);
   return st->m_size - st->m_usedSize;
 }
 
-sg_storage_size_t WorkstationCLM03::getUsedSize(const char* name)
+sg_size_t WorkstationCLM03::getUsedSize(const char* name)
 {
   StoragePtr st = findStorageOnMountList(name);
   return st->m_usedSize;