DAGWorkflow.Rd
Directed Acyclic Graph (DAG) workflow implementation
DAGWorkflow
An object of class R6ClassGenerator
of length 25.
new(name = "")
name
: character string that identifies this workflow
addConnections(connections)
Adds a list of connection to a workflow.
connection
: list of implementation ConnectionInterface
object.
Returns: NULL
addModules(modules)
Adds a list of modules to a workflow.
modules
: list of implementation ModuleInterface
objects.
Returns: NULL
errorCheck(executionCheck = FALSE, ...)
Runs error checking on the internal state of a workflow.
executionCheck
: when set to TRUE
, runs additional checks to determine if ready for execution.
...
: character vectors of additional argument names from sources outside of connections, such as an enviroment.
Returns: NULL
, will raise a fatal error if an error is found
getWorkflowInputs()
Gets a named logical vector where names are the possible inputs into the workflow and the values indicate if an input is required.
Returns: logical vector
getModuleInputs(module)
Gets a named logical vector where the names are the inputs, excluding those provided by connections from upstream modules, into a module and the values indicate if an input is required.
module
: implementation obj of ModuleInterface
or a character string of a module in a workflow.
Returns: logical vector
getConnections(module1, module2)
Gets a list of connections between module1
and module2
.
module1
: implementation obj of ModuleInterface
or a character string of a module in a workflow. Because this is a directed implementation class, module1 is the head module.
module2
: implementation obj of ModuleInterface
or a character string of a module in a workflow. Because this is a directed implementation class, module1 is the tail module.
Returns: vector of character strings
getDownstreamModules(module)
Gets a list of modules downstream of module
.
module
: valid implementation ModuleInterface
obj or name of module that is present in a workflow.
Returns: list of downstream modules
hasCompletedAllDownstreamModules(module)
Checks the completion of all downstream modules of module
.
module
: valid implementation ModuleInterface
obj or name of module that is present in a workflow.
Returns: logical indicating all downstream modules are complete
getEndingModules()
Gets a list of ending modules in a workflow.
Returns: a list of ending modules
getAllModules()
gets a list of all modules in a workflow.
Returns: a list of all modules
getName()
Gets the name of a workflow.
Returns: character string
getSaveInfo()
DOES NOT APPLY TO WORKFLOWS.
Returns: NULL
getStartingModules()
Gets a list of starting modules in a workflow.
Returns: a list of starting modules
getUpstreamModules(module)
Gets a list of modules upstream of module
.
module
: valid implementation ModuleInterface
obj or name of module that is present in a workflow.
Returns: list of downstream modules
removeConnection(connection)
Removes a connection from a workflow.
connection
: implementation object of ConnectionInterface
, or a character vector of connection names
Returns: NULL
removeModule(module)
Removes a modules from a workflow. Also, removes associated connections with module
.
module
: implementation object of ModuleInterface
, or a character vector of module names
Returns: NULL
save(filename)
Saves a workflow onto disk at filename
.
filename
: location to store file
Returns: NULL
visualize()
Visualizes a workflow.
Returns: NULL. Output will be on a plot, etc.
connections
Stores a workflow's connections.
graph
Stores a workflow's internal graph representation.
modules
Stores a workflow's modules.
name
Stores a workflow's name.
getNeighbors(graph, module, direction)
Gets a list of the neighbor modules of module
in graph
.
graph
: valid igraph object.
module
: module obj or module name.
direction
: "in" for upstream neighbors or "out" for downstream neighbors.
Returns: a list of neighbor modules.
getRevertState()
Gets a list of data that can be used with the revert
method to revert a workflow to the state outputted from this method.
Returns: a list that contains revert state data.
revert(previousState)
Returns a workflow to the state stored in previousState
.
Returns: NULL
.