LSSTApplications
20.0.0
LSSTDataManagementBasePackage
stack
1a1d771
Linux64
pipe_base
20.0.0
python
lsst
pipe
base
taskFactory.py
Go to the documentation of this file.
1
# This file is part of pipe_base.
2
#
3
# Developed for the LSST Data Management System.
4
# This product includes software developed by the LSST Project
5
# (http://www.lsst.org).
6
# See the COPYRIGHT file at the top-level directory of this distribution
7
# for details of code ownership.
8
#
9
# This program is free software: you can redistribute it and/or modify
10
# it under the terms of the GNU General Public License as published by
11
# the Free Software Foundation, either version 3 of the License, or
12
# (at your option) any later version.
13
#
14
# This program is distributed in the hope that it will be useful,
15
# but WITHOUT ANY WARRANTY; without even the implied warranty of
16
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
# GNU General Public License for more details.
18
#
19
# You should have received a copy of the GNU General Public License
20
# along with this program. If not, see <http://www.gnu.org/licenses/>.
21
22
"""Module defining TaskFactory interface.
23
"""
24
25
__all__ = [
"TaskFactory"
]
26
27
from
abc
import
ABCMeta, abstractmethod
28
29
30
class
TaskFactory
(metaclass=ABCMeta):
31
"""Abstract base class for task factory.
32
33
Task factory is responsible for creating instances of PipelineTask
34
subclasses.
35
"""
36
37
@abstractmethod
38
def
makeTask
(self, taskClass, config, overrides, butler):
39
"""Create new PipelineTask instance from its class.
40
41
Parameters
42
----------
43
taskClass : `type`
44
`PipelineTask` sub-class.
45
config : `pex.Config` or `None`
46
Configuration object, if `None` then use task-defined
47
configuration class (``taskClass.ConfigClass``) to create new
48
instance.
49
overrides : `ConfigOverrides` or `None`
50
Configuration overrides, this should contain all overrides to be
51
applied to a default task config, including instrument-specific,
52
obs-package specific, and possibly command-line overrides. This
53
parameter is exclusive with ``config``, only one of the two can be
54
specified as not-`None`.
55
butler : `~lsst.daf.butler.Butler` or None
56
Butler instance used to obtain initialization inputs for
57
PipelineTasks. If `None`, some PipelineTasks will not be usable
58
59
Returns
60
-------
61
task : `PipelineTask`
62
Instance of a `PipelineTask` class or `None` on errors.
63
64
Raises
65
------
66
Any exceptions that are raised by PipelineTask constructor or its
67
configuration class are propagated back to caller.
68
"""
lsst.pipe.base.taskFactory.TaskFactory
Definition:
taskFactory.py:30
lsst.pipe.base.taskFactory.TaskFactory.makeTask
def makeTask(self, taskClass, config, overrides, butler)
Definition:
taskFactory.py:38
Generated on Wed Jun 24 2020 18:10:11 for LSSTApplications by
1.8.18