SimGrid
3.11
Versatile Simulation of Distributed Systems
|
SURF action interface class. More...
#include <surf_interface.hpp>
Public Member Functions | |
Action (ModelPtr model, double cost, bool failed) | |
Action constructor. More... | |
Action (ModelPtr model, double cost, bool failed, lmm_variable_t var) | |
Action constructor. More... | |
virtual | ~Action () |
Action destructor. | |
void | finish () |
Finish the action. | |
e_surf_action_state_t | getState () |
Get the state of the current Action. More... | |
virtual void | setState (e_surf_action_state_t state) |
Set the state of the current Action. More... | |
double | getBound () |
Get the bound of the current Action. More... | |
void | setBound (double bound) |
Set the bound of the current Action. More... | |
double | getStartTime () |
Get the start time of the current action. More... | |
double | getFinishTime () |
Get the finish time of the current action. More... | |
void * | getData () |
Get the data associated to the current action. More... | |
void | setData (void *data) |
Set the data associated to the current action. More... | |
double | getMaxDuration () |
Get the maximum duration of the current action. More... | |
char * | getCategory () |
Get the category associated to the current action. More... | |
double | getCost () |
Get the cost of the current action. More... | |
void | setCost (double cost) |
Set the cost of the current action. More... | |
void | updateMaxDuration (double delta) |
Update the maximum duration of the current action. More... | |
void | updateRemains (double delta) |
Update the remaining time of the current action. More... | |
void | setRemains (double value) |
Set the remaining time of the current action. More... | |
void | setFinishTime (double value) |
Set the finish time of the current action. More... | |
void | ref () |
Add a reference to the current action. | |
virtual int | unref () |
Remove a reference to the current action. More... | |
virtual void | cancel () |
Cancel the current Action if running. | |
virtual void | recycle () |
Recycle an Action. | |
virtual void | suspend () |
Suspend the current Action. | |
virtual void | resume () |
Resume the current Action. | |
virtual bool | isSuspended () |
Check if the current action is running. More... | |
virtual void | setMaxDuration (double duration) |
Set the maximum duration of the current Action. More... | |
virtual void | setPriority (double priority) |
Set the priority of the current Action. More... | |
void | setCategory (const char *category) |
Set the category of the current Action. More... | |
virtual double | getRemains () |
Get the remaining time of the current action after updating the resource. More... | |
double | getRemainsNoUpdate () |
Get the remaining time of the current action without updating the resource. More... | |
double | getPriority () |
Get the priority of the current Action. More... | |
ActionListPtr | getStateSet () |
Get the state set in which the action is. More... | |
Protected Attributes | |
double | m_priority |
double | m_remains |
double | m_finish |
SURF action interface class.
An action is an event generated by a resource (e.g.: a communication for the network)
Action::Action | ( | ModelPtr | model, |
double | cost, | ||
bool | failed | ||
) |
Action::Action | ( | ModelPtr | model, |
double | cost, | ||
bool | failed, | ||
lmm_variable_t | var | ||
) |
e_surf_action_state_t Action::getState | ( | ) |
|
virtual |
Set the state of the current Action.
state | The new state of the current Action |
Reimplemented in WorkstationAction, NetworkAction, StorageAction, and CpuAction.
double Action::getBound | ( | ) |
void Action::setBound | ( | double | bound | ) |
double Action::getStartTime | ( | ) |
Get the start time of the current action.
double Action::getFinishTime | ( | ) |
Get the finish time of the current action.
|
inline |
Get the data associated to the current action.
void Action::setData | ( | void * | data | ) |
Set the data associated to the current action.
data | The new data associated to the current action |
|
inline |
Get the maximum duration of the current action.
|
inline |
Get the category associated to the current action.
|
inline |
Get the cost of the current action.
|
inline |
Set the cost of the current action.
cost | The new cost of the current action |
|
inline |
Update the maximum duration of the current action.
delta | [TODO] |
|
inline |
Update the remaining time of the current action.
delta | [TODO] |
|
inline |
Set the remaining time of the current action.
value | The new remaining time of the current action |
|
inline |
Set the finish time of the current action.
value | The new Finush time of the current action |
|
virtual |
Remove a reference to the current action.
If the Action has no more reference, we destroy it
|
virtual |
Check if the current action is running.
|
virtual |
|
virtual |
void Action::setCategory | ( | const char * | category | ) |
|
virtual |
Get the remaining time of the current action after updating the resource.
double Action::getRemainsNoUpdate | ( | ) |
Get the remaining time of the current action without updating the resource.
|
inline |
|
inline |
Get the state set in which the action is.
[TODO]
|
protected |
priority (1.0 by default)
|
protected |
How much of that cost remains to be done in the currently running task
|
protected |
finish time : this is modified during the run and fluctuates until the task is completed