addUserDefinedTask: addUserDefinedTask

View source: R/utilities-task.R

addUserDefinedTaskR Documentation

addUserDefinedTask

Description

Add a user-defined function as a task accessible in the 'Workflow' field '$userDefinedTasks'

Usage

addUserDefinedTask(
  workflow,
  taskFunction,
  taskName = "userDefinedTask",
  active = TRUE,
  settings = NULL
)

Arguments

workflow

'Workflow' object or derived class

taskFunction

Function to be called by 'Task' object. For 'MeanModelWorkflow', input arguments of 'taskFunction' should include: 'simulationSet', and 'settings'. For 'PopulationWorkflow', input arguments of 'taskFunction' should include: 'simulationSets', 'xParameters', 'yParameters' and 'settings'

taskName

character name of task to initialize reporting of task

active

logical to set if task is run by workflow

settings

list of input arguments that can be used by 'settings' input argument of 'taskFunction'

Value

Updated 'Workflow' object

See Also

Other workflow tasks: GofPlotTask, PlotTask, PopulationPlotTask, PopulationSensitivityAnalysisTask, QualificationTask, SensitivityAnalysisTask, Task, loadCalculatePKParametersTask(), loadCalculateSensitivityTask(), loadGOFMergedTask(), loadPlotAbsorptionTask(), loadPlotDDIRatioTask(), loadPlotDemographyTask(), loadPlotMassBalanceTask(), loadPlotPKParametersTask(), loadPlotPKRatioTask(), loadPlotSensitivityTask(), loadPlotTimeProfilesAndResidualsTask(), loadQualificationComparisonTimeProfileTask(), loadQualificationTimeProfilesTask(), loadSimulateTask()

Examples

## Not run: 

# A workflow object needs to be created first
myWorkflow <- MeanModelWorkflow$new(workflowFolder, simulationSets)

# Create a function to output results for workflow
# Mean model workflows functions usually expect SimulationStructure objects as inputs
userDefinedFunction <- function(structureSet, settings = NULL) {
  # Insert some code to calculate results and tune their output
  userResults <- list()
  userPlot <- ggplot()
  userTable <- data.frame()
  userText <- "Comments about the results of thMy user results"

  userResults[[1]] <- saveTaskResults(
    id = "user-result-1",
    plot = userPlot,
    plotCaption = "Title of Figure 1",
    includePlot = TRUE,
    table = userTable,
    tableCaption = "Title of Table 1",
    includeTable = TRUE,
    textChunk = userText,
    includeTextChunk = TRUE
  )

  # Tasks will run through the list of userResults
  # And add their outputs to the report
  return(userResults)
}

# Add a user-defined task to workflow
addUserDefinedTask(
  workflow = myWorkflow,
  taskFunction = userDefinedFunction,
  taskName = "userDefinedTask",
  active = TRUE
)

# Checks structure of task using
# myWorkflow$userDefinedTasks[[index]]$

## End(Not run)


Open-Systems-Pharmacology/OSPSuite.ReportingEngine documentation built on March 30, 2024, 4:17 p.m.