GenericPlugin¶
- class lsst.meas.base.GenericPlugin(config, name, schema, metadata, logName=None)¶
Bases:
BasePlugin
Abstract base class for a generic plugin.
- Parameters:
- config
lsst.pex.config.Config
An instance of this class’
ConfigClass
.- name
str
Name of this measurement plguin, for registering.
- schema
lsst.afw.table.Schema
The catalog schema. New fields should be added here to hold measurements produced by this plugin.
- metadata
lsst.daf.base.PropertySet
Metadata that will be attached to the output catalog.
- logName
str
, optional Name of log component.
- config
Notes
A generic plugin can be used with the
singleFramePluginFromGeneric
and/orforcedPluginFromGeneric
wrappers to create classes that can be used for single frame measurement and/or forced measurement (as appropriate). The only real difference betweenSingleFramePlugin
andForcedPlugin
is themeasure
method; this class introduces a shared signature formeasure
that, in combination with the aforementioned wrappers, allows both plugin styles to share a single implementation.This doesn’t use
abc.ABCMeta
because I couldn’t get it to work with a superclass.Sub-classes should set
ConfigClass
and implement themeasure
andmeasureN
methods. They may optionally provide alternative implementations for the__init__
,fail
andgetExecutionOrder
methods.This default implementation simply adds a field for recording a fatal failure of the measurement plugin.
Attributes Summary
Order for algorithms which require shape, centroid and flux (
float
).Order for algorithms which require only Footprint and Peaks (
float
).Plugin configuration information (
lsst.pex.config.Config
).Order for catalog calculation plugins.
Order for algorithms which require a shape and a centroid (
float
).Order for algorithms which require a centroid (
float
).Methods Summary
fail
(measRecord[, error])Record a measurement failure.
Get the relative execution order of this plugin.
Get the measurement transformation appropriate to this plugin.
makeForcedPlugin
(name)Produce a ForcedPlugin subclass from this GenericPlugin class.
makeSingleFramePlugin
(name)Produce a SingleFramePlugin subclass from this GenericPlugin class.
measure
(measRecord, exposure, center)Measure a single source.
measureN
(measCat, exposure, refCat, refWcs)Measure multiple sources.
Attributes Documentation
- APCORR_ORDER = 3.0¶
Order for algorithms which require shape, centroid and flux (
float
).Notes
These algorithms may assume that
getCentroid
andgetShape
will return good values, that flux has been measured, and that and that a Footprint and its Peaks are available.
- CENTROID_ORDER = 0.0¶
Order for algorithms which require only Footprint and Peaks (
float
).Notes
Algorithms with this execution order include centroids.
- ConfigClass = None¶
Plugin configuration information (
lsst.pex.config.Config
).
- DEFAULT_CATALOGCALCULATION = 4.0¶
Order for catalog calculation plugins.
Notes
These plugins only operate on catalogs; they may not access pixel values.
- FLUX_ORDER = 2.0¶
Order for algorithms which require a shape and a centroid (
float
).Notes
These algorithms may assume that both
getCentroid
andgetShape
will return good values, and that a Footprint and its Peaks are available.
- SHAPE_ORDER = 1.0¶
Order for algorithms which require a centroid (
float
).Notes
These algorithms may refer assume that
getCentroid
will return a good centroid, and that a Footprint and its Peaks are available.
Methods Documentation
- fail(measRecord, error=None)¶
Record a measurement failure.
This default implementation simply records the failure in the source record.
- Parameters:
- measRecord
lsst.afw.table.SourceRecord
Catalog record for the source being measured.
- error
Exception
Error causing failure, or
None
.
- measRecord
- classmethod getExecutionOrder()¶
Get the relative execution order of this plugin.
Must be reimplemented as a class method by concrete derived classes.
- getLogName()¶
- static getTransformClass()¶
Get the measurement transformation appropriate to this plugin.
This returns a subclass of
transforms.MeasurementTransform
, which may be instantiated with details of the algorithm configuration and then called with information about calibration and WCS to convert from raw measurement quantities to calibrated units. Calibrated data is then provided in a separate output table.Notes
By default, we copy everything from the input to the output without transformation.
- classmethod makeForcedPlugin(name)¶
Produce a ForcedPlugin subclass from this GenericPlugin class.
The class is also registered.
- Parameters:
- name
str
Name of plugin to register.
- name
- classmethod makeSingleFramePlugin(name)¶
Produce a SingleFramePlugin subclass from this GenericPlugin class.
The class is also registered.
- Parameters:
- name
str
Name of plugin to register.
- name
- measure(measRecord, exposure, center)¶
Measure a single source.
It is the responsibility of this method to perform the desired measurement and record the result in the
measRecord
.- Parameters:
- measRecord
lsst.afw.table.SourceRecord
Catalog record for the source being measured.
- exposure
lsst.afw.image.Exposure
Exposure on which the source is being measured.
- center
lsst.geom.Point2D
Pixel coordinates of the object.
- measRecord
- Raises:
- MeasurementError
Raised if the measurement fails for a known/justifiable reason.
- measureN(measCat, exposure, refCat, refWcs)¶
Measure multiple sources.
It is the responsibility of this method to perform the desired measurement and record the result in the
measCat
.- Parameters:
- measCat
lsst.afw.table.SourceCatalog
Catalog for the sources being measured.
- exposure
lsst.afw.image.Exposure
Exposure on which the source is being measured.
- refCat
lsst.afw.table.SourceCatalog
Reference catalog.
- refWcs
lsst.afw.image.Wcs
Astrometric solution for the reference image.
- measCat
- Raises:
- MeasurementError
Raised if the measurement fails for a known/justifiable reason.