LSST Applications 27.0.0,g0265f82a02+469cd937ee,g02d81e74bb+21ad69e7e1,g1470d8bcf6+cbe83ee85a,g2079a07aa2+e67c6346a6,g212a7c68fe+04a9158687,g2305ad1205+94392ce272,g295015adf3+81dd352a9d,g2bbee38e9b+469cd937ee,g337abbeb29+469cd937ee,g3939d97d7f+72a9f7b576,g487adcacf7+71499e7cba,g50ff169b8f+5929b3527e,g52b1c1532d+a6fc98d2e7,g591dd9f2cf+df404f777f,g5a732f18d5+be83d3ecdb,g64a986408d+21ad69e7e1,g858d7b2824+21ad69e7e1,g8a8a8dda67+a6fc98d2e7,g99cad8db69+f62e5b0af5,g9ddcbc5298+d4bad12328,ga1e77700b3+9c366c4306,ga8c6da7877+71e4819109,gb0e22166c9+25ba2f69a1,gb6a65358fc+469cd937ee,gbb8dafda3b+69d3c0e320,gc07e1c2157+a98bf949bb,gc120e1dc64+615ec43309,gc28159a63d+469cd937ee,gcf0d15dbbd+72a9f7b576,gdaeeff99f8+a38ce5ea23,ge6526c86ff+3a7c1ac5f1,ge79ae78c31+469cd937ee,gee10cc3b42+a6fc98d2e7,gf1cff7945b+21ad69e7e1,gfbcc870c63+9a11dc8c8f
LSST Data Management Base Package
|
Public Member Functions | |
__init__ (self, DataCoordinate fixed, DimensionGroup|DimensionGraph|None dimensions=None, Mapping[str, int]|None bands=None, int|None n_bands=None, int|None n_tracts=None, int|None n_patches=None) | |
ConfigurableField | make_config_field (cls, str doc="How to pack tract, patch, and possibly band into an integer.") |
SkyMapDimensionPacker | from_config (cls, DataCoordinate data_id, SkyMapDimensionPackerConfig config) |
int | maxBits (self) |
DataCoordinate | unpack (self, int packedId) |
Static Public Attributes | |
tuple | SUPPORTED_FILTERS |
ConfigClass = SkyMapDimensionPackerConfig | |
Protected Member Functions | |
int | _pack (self, DataCoordinate dataId) |
Protected Attributes | |
_bands | |
_n_bands | |
_n_tracts | |
_n_patches | |
_bands_list | |
A `DimensionPacker` for tract, patch and optionally band, given a SkyMap. Parameters ---------- fixed : `lsst.daf.butler.DataCoordinate` Data ID that identifies just the ``skymap`` dimension. Must have dimension records attached unless ``n_tracts`` and ``n_patches`` are not `None`. dimensions : `lsst.daf.butler.DimensionGraph`, or \ `lsst.daf.butler.DimensionGroup`, optional The dimensions of data IDs packed by this instance. Must include ``{skymap, tract, patch}``, and may include ``band``. If not provided, this will be set to include ``band`` if ``n_bands != 0``. bands : `~collections.abc.Mapping` [ `str`, `int` ] or `None`, optional Mapping from band name to integer to use in the packed ID. `None` uses a fixed set of bands defined in this class. When calling code can enumerate the bands it is likely to see, providing an explicit mapping is preferable. n_bands : `int` or `None`, optional The number of bands to leave room for in the packed ID. If `None`, this will be set to ``len(bands)``. If ``0``, the band will not be included in the dimensions at all. If ``1``, the band will be included in the dimensions but will not occupy any extra bits in the packed ID. This may be larger or smaller than ``len(bands)``, to reserve extra space for the future or align to byte boundaries, or support a subset of a larger mapping, respectively. n_tracts : `int` or `None`, optional The number of tracts to leave room for in the packed ID. If `None`, this will be set via the ``skymap`` dimension record in ``fixed``. n_patches : `int` or `None`, optional The number of patches (per tract) to leave room for in the packed ID. If `None`, this will be set via the ``skymap`` dimension record in ``fixed``. Notes ----- The standard pattern for constructing instances of this class is to use `make_config_field`:: class SomeConfig(lsst.pex.config.Config): packer = ObservationDimensionPacker.make_config_field() class SomeTask(lsst.pipe.base.Task): ConfigClass = SomeConfig def run(self, ..., data_id: DataCoordinate): packer = self.config.packer.apply(data_id) packed_id = packer.pack(data_id) ...
Definition at line 67 of file packers.py.
lsst.skymap.packers.SkyMapDimensionPacker.__init__ | ( | self, | |
DataCoordinate | fixed, | ||
DimensionGroup | DimensionGraph | None | dimensions = None, | ||
Mapping[str, int] | None | bands = None, | ||
int | None | n_bands = None, | ||
int | None | n_tracts = None, | ||
int | None | n_patches = None ) |
Definition at line 137 of file packers.py.
|
protected |
Definition at line 247 of file packers.py.
SkyMapDimensionPacker lsst.skymap.packers.SkyMapDimensionPacker.from_config | ( | cls, | |
DataCoordinate | data_id, | ||
SkyMapDimensionPackerConfig | config ) |
Construct a dimension packer from a config object and a data ID. Parameters ---------- data_id : `lsst.daf.butler.DataCoordinate` Data ID that identifies at least the ``skymap`` dimension. Must have dimension records attached unless ``config.n_tracts`` and ``config.n_patches`` are both not `None`. config : `SkyMapDimensionPackerConfig` Configuration object. Returns ------- packer : `SkyMapDimensionPackerConfig` New dimension packer. Notes ----- This interface is provided for consistency with the `lsst.pex.config` "Configurable" concept, and is invoked when ``apply(data_id)`` is called on a config instance attribute that corresponds to a field created by `make_config_field`. The constructor signature cannot play this role easily for backwards compatibility reasons.
Definition at line 204 of file packers.py.
ConfigurableField lsst.skymap.packers.SkyMapDimensionPacker.make_config_field | ( | cls, | |
str | doc = "How to pack tract, patch, and possibly band into an integer." ) |
Make a config field to control how skymap data IDs are packed. Parameters ---------- doc : `str`, optional Documentation for the config field. Returns ------- field : `lsst.pex.config.ConfigurableField` A config field whose instance values are [wrapper proxies to] `SkyMapDimensionPackerConfig` instances.
Definition at line 184 of file packers.py.
int lsst.skymap.packers.SkyMapDimensionPacker.maxBits | ( | self | ) |
Definition at line 240 of file packers.py.
DataCoordinate lsst.skymap.packers.SkyMapDimensionPacker.unpack | ( | self, | |
int | packedId ) |
Definition at line 268 of file packers.py.
|
protected |
Definition at line 177 of file packers.py.
|
protected |
Definition at line 181 of file packers.py.
|
protected |
Definition at line 178 of file packers.py.
|
protected |
Definition at line 180 of file packers.py.
|
protected |
Definition at line 179 of file packers.py.
|
static |
Definition at line 135 of file packers.py.
|
static |
Definition at line 121 of file packers.py.