Workflow.h
53 void addControlDependency(WorkflowTask *src, WorkflowTask *dest, bool redundant_dependencies = false);
137 ComputeService *parent_compute_service; // The compute service to which the job was submitted, if any
138 Simulation *simulation; // a ptr to the simulation so that the simulation can obtain simulation timestamps for workflow tasks
std::map< std::string, WorkflowFile * > getInputFiles()
Retrieve a map (indexed by file id) of input files for a workflow (i.e., those files that are input t...
Definition: Workflow.cpp:527
void addControlDependency(WorkflowTask *src, WorkflowTask *dest, bool redundant_dependencies=false)
Create a control dependency between two workflow tasks. Will not do anything if there is already a pa...
Definition: Workflow.cpp:173
std::map< std::string, WorkflowTask * > getEntryTasks() const
Get the exit tasks of the workflow, i.e., those tasks that don't have parents.
Definition: Workflow.cpp:859
WorkflowFile * addFile(std::string, double)
Add a new file to the workflow.
Definition: Workflow.cpp:203
bool isDone()
Returns whether all tasks are complete.
Definition: Workflow.cpp:350
unsigned long getNumLevels()
Returns the number of levels in the workflow.
Definition: Workflow.cpp:892
WorkflowTask * getTaskByID(const std::string &id)
Find a WorkflowTask based on its ID.
Definition: Workflow.cpp:156
void removeTask(WorkflowTask *task)
Remove a task from the workflow. WARNING: this method de-allocated memory for the task...
Definition: Workflow.cpp:116
A data file used/produced by a WorkflowTask in a Workflow.
Definition: WorkflowFile.h:26
void exportToEPS(std::string)
Output the workflow's dependency graph to EPS.
Definition: Workflow.cpp:246
WorkflowTask * addTask(std::string, double flops, unsigned long min_num_cores, unsigned long max_num_cores, double parallel_efficiency, double memory_requirement)
Create and add a new computational task to the workflow.
Definition: Workflow.cpp:41
double getCompletionDate()
Returns the workflow's completion date.
Definition: Workflow.cpp:910
A class that provides basic simulation methods. Once the simulation object has been explicitly or imp...
Definition: Simulation.h:45
void removeFile(WorkflowFile *file)
Remove a file from the workflow. WARNING: this method de-allocated memory for the file...
Definition: Workflow.cpp:91
static double getSumFlops(std::vector< WorkflowTask *> tasks)
Get the total number of flops for a list of tasks.
Definition: Workflow.cpp:545
unsigned long getNumberOfTasks()
Get the number of tasks in the workflow.
Definition: Workflow.cpp:261
WorkflowFile * getFileByID(const std::string &id)
Find a WorkflowFile based on its ID.
Definition: Workflow.cpp:232
std::map< std::string, WorkflowTask * > getExitTasks() const
Get the exit tasks of the workflow, i.e., those tasks that don't have children.
Definition: Workflow.cpp:876
Definition: Alarm.cpp:19