A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
add XBT_PUBLIC_CLASS macro, and a bunch of XBT_PUBLIC declarations
[simgrid.git]
/
src
/
surf
/
surf_interface.hpp
diff --git
a/src/surf/surf_interface.hpp
b/src/surf/surf_interface.hpp
index
7dac341
..
e5e44a6
100644
(file)
--- a/
src/surf/surf_interface.hpp
+++ b/
src/surf/surf_interface.hpp
@@
-115,7
+115,7
@@
XBT_PUBLIC_DATA(xbt_dynar_t) model_list;
* @brief SURF model interface class
* @details A model is an object which handle the interactions between its Resources and its Actions
*/
* @brief SURF model interface class
* @details A model is an object which handle the interactions between its Resources and its Actions
*/
-
class
Model {
+
XBT_PUBLIC_CLASS
Model {
public:
/**
* @brief Model constructor
public:
/**
* @brief Model constructor
@@
-252,7
+252,7
@@
typedef struct {
* @brief SURF resource interface class
* @details A resource represent an element of a component (e.g.: a link for the network)
*/
* @brief SURF resource interface class
* @details A resource represent an element of a component (e.g.: a link for the network)
*/
-
class
Resource {
+
XBT_PUBLIC_CLASS
Resource {
public:
/**
* @brief Resource constructor
public:
/**
* @brief Resource constructor
@@
-365,7
+365,6
@@
private:
const char *p_name;
xbt_dict_t p_properties;
ModelPtr p_model;
const char *p_name;
xbt_dict_t p_properties;
ModelPtr p_model;
- void *p_resource;
bool m_running;
e_surf_resource_state_t m_stateCurrent;
bool m_running;
e_surf_resource_state_t m_stateCurrent;
@@
-390,13
+389,15
@@
void surf_action_lmm_update_index_heap(void *action, int i);
* @brief SURF action interface class
* @details An action is an event generated by a resource (e.g.: a communication for the network)
*/
* @brief SURF action interface class
* @details An action is an event generated by a resource (e.g.: a communication for the network)
*/
-
class
Action : public actionHook, public actionLmmHook {
-p
ublic
:
+
XBT_PUBLIC_CLASS
Action : public actionHook, public actionLmmHook {
+p
rivate
:
/**
/**
- * @brief
Action constructor
+ * @brief
Common initializations for the constructors
*/
*/
- Action();
+ void initialize(ModelPtr model, double cost, bool failed,
+ lmm_variable_t var = NULL);
+public:
/**
* @brief Action constructor
*
/**
* @brief Action constructor
*
@@
-515,14
+516,14
@@
public:
*
* @param delta [TODO]
*/
*
* @param delta [TODO]
*/
- void updateMaxDuration(double delta) {double_update(&m_maxDuration, delta);}
+ void updateMaxDuration(double delta) {double_update(&m_maxDuration, delta
,sg_surf_precision
);}
/**
* @brief Update the remaining time of the current action
*
* @param delta [TODO]
*/
/**
* @brief Update the remaining time of the current action
*
* @param delta [TODO]
*/
- void updateRemains(double delta) {double_update(&m_remains, delta);}
+ void updateRemains(double delta) {double_update(&m_remains, delta
, sg_maxmin_precision*sg_surf_precision
);}
/**
* @brief Set the remaining time of the current action
/**
* @brief Set the remaining time of the current action
@@
-632,6
+633,8
@@
public:
s_xbt_swag_hookup_t p_stateHookup;
s_xbt_swag_hookup_t p_stateHookup;
+ ModelPtr getModel() {return p_model;}
+
protected:
ActionListPtr p_stateSet;
double m_priority; /**< priority (1.0 by default) */
protected:
ActionListPtr p_stateSet;
double m_priority; /**< priority (1.0 by default) */
@@
-640,8
+643,6
@@
protected:
double m_maxDuration; /*< max_duration (may fluctuate until the task is completed) */
double m_finish; /**< finish time : this is modified during the run and fluctuates until the task is completed */
double m_maxDuration; /*< max_duration (may fluctuate until the task is completed) */
double m_finish; /**< finish time : this is modified during the run and fluctuates until the task is completed */
- ModelPtr getModel() {return p_model;}
-
private:
int resourceUsed(void *resource_id);
private:
int resourceUsed(void *resource_id);