Pipeline

class lsst.pipe.base.Pipeline(description: str)

Bases: object

A Pipeline is a representation of a series of tasks to run, and the configuration for those tasks.

Parameters:
description : str

A description of that this pipeline does.

Methods Summary

addConfigFile(label, filename) Add overrides from a specified file.
addConfigOverride(label, key, value) Apply single config override.
addConfigPython(label, pythonString) Add Overrides by running a snippet of python code against a config.
addInstrument(instrument, str]) Add an instrument to the pipeline, or replace an instrument that is already defined.
addTask(task, str], label) Add a new task to the pipeline, or replace a task that is already associated with the supplied label.
fromFile(filename) Load a pipeline defined in a pipeline yaml file.
fromIR(deserialized_pipeline) Create a pipeline from an already created PipelineIR object.
fromPipeline(pipeline) Create a new pipeline by copying an already existing Pipeline.
fromString(pipeline_string) Create a pipeline from string formatted as a pipeline document.
removeTask(label) Remove a task from the pipeline.
toExpandedPipeline() Returns a generator of TaskDefs which can be used to create quantum graphs.
toFile(filename)

Methods Documentation

addConfigFile(label: str, filename: str)

Add overrides from a specified file.

Parameters:
label : str

The label used to identify the task associated with config to modify

filename : str

Path to the override file.

addConfigOverride(label: str, key: str, value: object)

Apply single config override.

Parameters:
label : str

Label of the task.

key: `str`

Fully-qualified field name.

value : object

Value to be given to a field.

addConfigPython(label: str, pythonString: str)

Add Overrides by running a snippet of python code against a config.

Parameters:
label : str

The label used to identity the task associated with config to modify.

pythonString: `str`

A string which is valid python code to be executed. This is done with config as the only local accessible value.

addInstrument(instrument: Union[Instrument, str])

Add an instrument to the pipeline, or replace an instrument that is already defined.

Parameters:
instrument : Instrument or str

Either a derived class object of a lsst.daf.butler.instrument or a string corresponding to a fully qualified lsst.daf.butler.instrument name.

addTask(task: Union[lsst.pipe.base.pipelineTask.PipelineTask, str], label: str)

Add a new task to the pipeline, or replace a task that is already associated with the supplied label.

Parameters:
task: `PipelineTask` or `str`

Either a derived class object of a PipelineTask or a string corresponding to a fully qualified PipelineTask name.

label: `str`

A label that is used to identify the PipelineTask being added

classmethod fromFile(filename: str) → lsst.pipe.base.pipeline.Pipeline

Load a pipeline defined in a pipeline yaml file.

Parameters:
filename: `str`

A path that points to a pipeline defined in yaml format

Returns:
pipeline: `Pipeline`
classmethod fromIR(deserialized_pipeline: lsst.pipe.base.pipelineIR.PipelineIR) → lsst.pipe.base.pipeline.Pipeline

Create a pipeline from an already created PipelineIR object.

Parameters:
deserialized_pipeline: `PipelineIR`

An already created pipeline intermediate representation object

Returns:
pipeline: `Pipeline`
classmethod fromPipeline(pipeline: lsst.pipe.base.pipelineIR.PipelineIR) → lsst.pipe.base.pipeline.Pipeline

Create a new pipeline by copying an already existing Pipeline.

Parameters:
pipeline: `Pipeline`

An already created pipeline intermediate representation object

Returns:
pipeline: `Pipeline`
classmethod fromString(pipeline_string: str) → lsst.pipe.base.pipeline.Pipeline

Create a pipeline from string formatted as a pipeline document.

Parameters:
pipeline_string : str

A string that is formatted according like a pipeline document

Returns:
pipeline: `Pipeline`
removeTask(label: str)

Remove a task from the pipeline.

Parameters:
label : str

The label used to identify the task that is to be removed

Raises:
KeyError

If no task with that label exists in the pipeline

toExpandedPipeline() → Generator[TaskDef]

Returns a generator of TaskDefs which can be used to create quantum graphs.

Returns:
generator : generator of TaskDef

The generator returned will be the sorted iterator of tasks which are to be used in constructing a quantum graph.

Raises:
NotImplementedError

If a dataId is supplied in a config block. This is in place for future use

toFile(filename: str)