LSSTApplications  19.0.0-14-gb0260a2+72efe9b372,20.0.0+7927753e06,20.0.0+8829bf0056,20.0.0+995114c5d2,20.0.0+b6f4b2abd1,20.0.0+bddc4f4cbe,20.0.0-1-g253301a+8829bf0056,20.0.0-1-g2b7511a+0d71a2d77f,20.0.0-1-g5b95a8c+7461dd0434,20.0.0-12-g321c96ea+23efe4bbff,20.0.0-16-gfab17e72e+fdf35455f6,20.0.0-2-g0070d88+ba3ffc8f0b,20.0.0-2-g4dae9ad+ee58a624b3,20.0.0-2-g61b8584+5d3db074ba,20.0.0-2-gb780d76+d529cf1a41,20.0.0-2-ged6426c+226a441f5f,20.0.0-2-gf072044+8829bf0056,20.0.0-2-gf1f7952+ee58a624b3,20.0.0-20-geae50cf+e37fec0aee,20.0.0-25-g3dcad98+544a109665,20.0.0-25-g5eafb0f+ee58a624b3,20.0.0-27-g64178ef+f1f297b00a,20.0.0-3-g4cc78c6+e0676b0dc8,20.0.0-3-g8f21e14+4fd2c12c9a,20.0.0-3-gbd60e8c+187b78b4b8,20.0.0-3-gbecbe05+48431fa087,20.0.0-38-ge4adf513+a12e1f8e37,20.0.0-4-g97dc21a+544a109665,20.0.0-4-gb4befbc+087873070b,20.0.0-4-gf910f65+5d3db074ba,20.0.0-5-gdfe0fee+199202a608,20.0.0-5-gfbfe500+d529cf1a41,20.0.0-6-g64f541c+d529cf1a41,20.0.0-6-g9a5b7a1+a1cd37312e,20.0.0-68-ga3f3dda+5fca18c6a4,20.0.0-9-g4aef684+e18322736b,w.2020.45
LSSTDataManagementBasePackage
maskContinued.py
Go to the documentation of this file.
1 #
2 # LSST Data Management System
3 # Copyright 2008-2017 LSST/AURA.
4 #
5 # This product includes software developed by the
6 # LSST Project (http://www.lsst.org/).
7 #
8 # This program is free software: you can redistribute it and/or modify
9 # it under the terms of the GNU General Public License as published by
10 # the Free Software Foundation, either version 3 of the License, or
11 # (at your option) any later version.
12 #
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
17 #
18 # You should have received a copy of the LSST License Statement and
19 # the GNU General Public License along with this program. If not,
20 # see <http://www.lsstcorp.org/LegalNotices/>.
21 #
22 
23 __all__ = ["Mask", "MaskPixel"]
24 
25 import numpy as np
26 
27 from lsst.utils import TemplateMeta
28 from .fitsIoWithOptions import imageReadFitsWithOptions, imageWriteFitsWithOptions
29 from .image import MaskX
30 from ..slicing import supportSlicing
31 from ..disableArithmetic import disableMaskArithmetic
32 
33 MaskPixel = np.int32
34 
35 
36 class Mask(metaclass=TemplateMeta):
37  TEMPLATE_PARAMS = ("dtype",)
38  TEMPLATE_DEFAULTS = (MaskPixel,)
39 
40  def __reduce__(self):
41  from lsst.afw.fits import reduceToFits
42  return reduceToFits(self)
43 
44  def __str__(self):
45  return "{}, bbox={}, maskPlaneDict={}".format(self.array, self.getBBox(), self.getMaskPlaneDict())
46 
47  def __repr__(self):
48  return "{}.{}={}".format(self.__module__, self.__class__.__name__, str(self))
49 
50  readFitsWithOptions = classmethod(imageReadFitsWithOptions)
51 
52  writeFitsWithOptions = imageWriteFitsWithOptions
53 
54 
55 Mask.register(MaskPixel, MaskX)
56 Mask.alias("X", MaskX)
57 
58 for cls in (MaskX, ):
59  supportSlicing(cls)
lsst.pex.config.history.format
def format(config, name=None, writeSourceLine=True, prefix="", verbose=False)
Definition: history.py:174
lsst::afw::image.slicing.supportSlicing
def supportSlicing(cls)
Definition: slicing.py:244
lsst::afw::image.image.maskContinued.Mask.__reduce__
def __reduce__(self)
Definition: maskContinued.py:40
lsst::afw::image.disableArithmetic.disableMaskArithmetic
def disableMaskArithmetic(cls)
Definition: disableArithmetic.py:52
lsst::utils
Definition: Backtrace.h:29
lsst::afw::fits.pickleFits.reduceToFits
def reduceToFits(obj)
Definition: pickleFits.py:7
lsst::afw::image.image.maskContinued.Mask.__str__
def __str__(self)
Definition: maskContinued.py:44
lsst::afw::fits
Definition: fits.h:31
lsst::afw::image.image.maskContinued.Mask
Definition: maskContinued.py:36
lsst::afw::image.image.maskContinued.Mask.__repr__
def __repr__(self)
Definition: maskContinued.py:47