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
descriptionstr

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)

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

addTask(task, 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
labelstr

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

filenamestr

Path to the override file.

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

Apply single config override.

Parameters
labelstr

Label of the task.

key: `str`

Fully-qualified field name.

valueobject

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
labelstr

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
instrumentInstrument 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_stringstr

A string that is formatted according like a pipeline document

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

Remove a task from the pipeline.

Parameters
labelstr

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
generatorgenerator 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)