wrench::WMS Class Referenceabstract

A workflow management system (WMS) More...

#include <WMS.h>

Inheritance diagram for wrench::WMS:
wrench::Service

Public Member Functions

void addDynamicOptimization (std::unique_ptr< DynamicOptimization >)
 Add a dynamic optimization to the list of optimizations. Optimizations are executed in order of insertion. More...
 
void addStaticOptimization (std::unique_ptr< StaticOptimization >)
 Add a static optimization to the list of optimizations. Optimizations are executed in order of insertion. More...
 
void addWorkflow (Workflow *workflow, double start_time=0)
 Assign a workflow to the WMS. More...
 
PilotJobSchedulergetPilotJobScheduler ()
 Get the WMS's pilot scheduler. More...
 
StandardJobSchedulergetStandardJobScheduler ()
 Get the WMS's pilot scheduler. More...
 
WorkflowgetWorkflow ()
 Get the workflow that was assigned to the WMS. More...
 

Detailed Description

A workflow management system (WMS)

Member Function Documentation

◆ addDynamicOptimization()

void wrench::WMS::addDynamicOptimization ( std::unique_ptr< DynamicOptimization >  optimization)

Add a dynamic optimization to the list of optimizations. Optimizations are executed in order of insertion.

Parameters
optimizationa dynamic optimization implementation

◆ addStaticOptimization()

void wrench::WMS::addStaticOptimization ( std::unique_ptr< StaticOptimization >  optimization)

Add a static optimization to the list of optimizations. Optimizations are executed in order of insertion.

Parameters
optimizationa static optimization implementation

◆ addWorkflow()

void wrench::WMS::addWorkflow ( Workflow workflow,
double  start_time = 0 
)

Assign a workflow to the WMS.

Parameters
workflowa workflow to execute
start_timethe simulated time when the WMS should start executed the workflow (0 if not specified)
Exceptions
std::invalid_argument

Set the simulation pointer member variable of the workflow so that the workflow tasks have access to it for creating SimulationTimestamps

◆ getPilotJobScheduler()

PilotJobScheduler * wrench::WMS::getPilotJobScheduler ( )

Get the WMS's pilot scheduler.

Returns
the pilot scheduler, or nullptr if none

◆ getStandardJobScheduler()

StandardJobScheduler * wrench::WMS::getStandardJobScheduler ( )

Get the WMS's pilot scheduler.

Returns
the pilot scheduler, or nullptr if none

◆ getWorkflow()

Workflow * wrench::WMS::getWorkflow ( )

Get the workflow that was assigned to the WMS.

Returns
a workflow

The documentation for this class was generated from the following files: