X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/a9df68430653de724aa5089095ed6c9e3055a779..99b9d1dfab1cfc49e080d24a6c5022723864b15d:/src/surf/storage_interface.cpp diff --git a/src/surf/storage_interface.cpp b/src/surf/storage_interface.cpp index bbe461698d..a068ac62e1 100644 --- a/src/surf/storage_interface.cpp +++ b/src/surf/storage_interface.cpp @@ -50,7 +50,8 @@ StorageModel::~StorageModel(){ ************/ Storage::Storage(ModelPtr model, const char *name, xbt_dict_t props, - 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) : Resource(model, name, props) , p_contentType(content_type) , m_size(size), m_usedSize(0) @@ -63,8 +64,9 @@ Storage::Storage(ModelPtr model, const char *name, xbt_dict_t props, } Storage::Storage(ModelPtr model, const char *name, xbt_dict_t props, - lmm_system_t maxminSystem, double bread, double bwrite, double bconnection, - const char* type_id, char *content_name, char *content_type, sg_size_t size, char *attach) + lmm_system_t maxminSystem, double bread, double bwrite, + double bconnection, const char* type_id, char *content_name, + char *content_type, sg_size_t size, char *attach) : Resource(model, name, props, lmm_constraint_new(maxminSystem, this, bconnection)) , p_contentType(content_type) , m_size(size), m_usedSize(0) @@ -146,7 +148,6 @@ void Storage::setState(e_surf_resource_state_t state) xbt_dict_t Storage::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; @@ -163,20 +164,28 @@ sg_size_t Storage::getSize(){ return m_size; } +sg_size_t Storage::getFreeSize(){ + return m_size - m_usedSize; +} + +sg_size_t Storage::getUsedSize(){ + return m_usedSize; +} + /********** * Action * **********/ StorageAction::StorageAction(ModelPtr model, double cost, bool failed, StoragePtr storage, e_surf_action_storage_type_t type) : Action(model, cost, failed) -, m_type(type), p_storage(storage), p_file(NULL), p_lsDict(NULL){ +, m_type(type), p_storage(storage), p_file(NULL){ progress = 0; }; StorageAction::StorageAction(ModelPtr model, double cost, bool failed, lmm_variable_t var, StoragePtr storage, e_surf_action_storage_type_t type) : Action(model, cost, failed, var) - , m_type(type), p_storage(storage), p_file(NULL), p_lsDict(NULL) { + , m_type(type), p_storage(storage), p_file(NULL){ progress = 0; }