PerTractCcdDataIdContainer

class lsst.meas.base.PerTractCcdDataIdContainer(level=None)

Bases: lsst.pipe.base.DataIdContainer

A data ID container which combines raw data IDs with a tract.

Notes

Required because we need to add “tract” to the raw data ID keys (defined as whatever we use for src) when no tract is provided (so that the user is not required to know which tracts are spanned by the raw data ID).

This subclass of DataIdContainer assumes that a calexp is being measured using the detection information, a set of reference catalogs, from the set of coadds which intersect with the calexp. It needs the calexp id (e.g. visit, raft, sensor), but is also uses the tract to decide what set of coadds to use. The references from the tract whose patches intersect with the calexp are used.

Methods Summary

castDataIds(butler) Validate data IDs and cast them to the correct type (modify idList in place).
makeDataRefList(namespace) Make self.refList from self.idList
setDatasetType(datasetType) Set actual dataset type, once it is known.

Methods Documentation

castDataIds(butler)

Validate data IDs and cast them to the correct type (modify idList in place).

This code casts the values in the data IDs dicts in dataIdList to the type required by the butler. Data IDs are read from the command line as str, but the butler requires some values to be other types. For example “visit” values should be int.

Parameters:
butler : lsst.daf.persistence.Butler

Data butler.

makeDataRefList(namespace)

Make self.refList from self.idList

setDatasetType(datasetType)

Set actual dataset type, once it is known.

Parameters:
datasetType : str

Dataset type.

Notes

The reason datasetType is not a constructor argument is that some subclasses do not know the dataset type until the command is parsed. Thus, to reduce special cases in the code, datasetType is always set after the command is parsed.