Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
[simgrid.git] / src / surf / storage_n11.cpp
index a748ada..c5395d6 100644 (file)
@@ -72,7 +72,8 @@ static void parse_storage_init(sg_platf_storage_cbarg_t storage)
                                      ((storage_type_t) stype)->type_id,
                                      storage->content,
                                      storage->content_type,
-                                     storage->properties);
+                                     storage->properties,
+                                     storage->attach);
 }
 
 static void parse_mstorage_init(sg_platf_mstorage_cbarg_t /*mstorage*/)
@@ -234,7 +235,7 @@ StorageN11Model::~StorageN11Model(){
 }
 
 StoragePtr StorageN11Model::createResource(const char* id, const char* type_id,
-               const char* content_name, const char* content_type, xbt_dict_t properties)
+               const char* content_name, const char* content_type, xbt_dict_t properties, const char* attach)
 {
 
   xbt_assert(!surf_storage_resource_priv(surf_storage_resource_by_name(id)),
@@ -249,7 +250,7 @@ StoragePtr StorageN11Model::createResource(const char* id, const char* type_id,
 
   StoragePtr storage = new StorageN11(this, id, properties, p_maxminSystem,
                  Bread, Bwrite, Bconnection,
-                 type_id, (char *)content_name, xbt_strdup(content_type), storage_type->size);
+                 type_id, (char *)content_name, xbt_strdup(content_type), storage_type->size, (char *) attach);
 
   xbt_lib_set(storage_lib, id, SURF_STORAGE_LEVEL, static_cast<ResourcePtr>(storage));
 
@@ -313,7 +314,7 @@ void StorageN11Model::updateActionsState(double /*now*/, double delta)
       /* Hack to avoid rounding differences between x86 and x86_64
        * (note that the next sizes are of type sg_size_t). */
       long incr = delta * rate + MAXMIN_PRECISION;
-      action->p_storage->m_usedSize += (incr - action->p_file->size); // disk usage
+      action->p_storage->m_usedSize += incr; // disk usage
       action->p_file->size += incr; // file size
 
       sg_size_t *psize = xbt_new(sg_size_t,1);
@@ -345,7 +346,6 @@ void StorageN11Model::updateActionsState(double /*now*/, double delta)
       action->setState(SURF_ACTION_DONE);
     }
   }
-
   return;
 }
 
@@ -355,9 +355,9 @@ void StorageN11Model::updateActionsState(double /*now*/, double delta)
 
 StorageN11::StorageN11(StorageModelPtr model, const char* name, xbt_dict_t properties,
             lmm_system_t maxminSystem, double bread, double bwrite, double bconnection,
-            const char* type_id, char *content_name, char *content_type, sg_size_t size)
+            const char* type_id, char *content_name, char *content_type, sg_size_t size, char *attach)
  : Storage(model, name, properties,
-          maxminSystem, bread, bwrite, bconnection, type_id, content_name, content_type, size) {
+          maxminSystem, bread, bwrite, bconnection, type_id, content_name, content_type, size, attach) {
   XBT_DEBUG("Create resource with Bconnection '%f' Bread '%f' Bwrite '%f' and Size '%llu'", bconnection, bread, bwrite, size);
 }
 
@@ -497,26 +497,6 @@ void StorageN11::rename(const char *src, const char *dest)
     XBT_DEBUG("File %s doesn't exist",src);
 }
 
-xbt_dict_t StorageN11::getContent()
-{
-  /* For the moment this action has no cost, but in the future we could take in account access latency of the disk */
-  /*surf_action_t action = storage_action_execute(storage,0, LS);*/
-
-  xbt_dict_t content_dict = xbt_dict_new_homogeneous(NULL);
-  xbt_dict_cursor_t cursor = NULL;
-  char *file;
-  sg_size_t *psize;
-
-  xbt_dict_foreach(p_content, cursor, file, psize){
-    xbt_dict_set(content_dict,file,psize,NULL);
-  }
-  return content_dict;
-}
-
-sg_size_t StorageN11::getSize(){
-  return m_size;
-}
-
 /**********
  * Action *
  **********/