LSSTApplications  18.0.0+54,19.0.0,19.0.0+1,19.0.0+16,19.0.0+17,19.0.0+19,19.0.0+24,19.0.0+3,19.0.0-1-g20d9b18+10,19.0.0-1-g425ff20,19.0.0-1-g5549ca4,19.0.0-1-g580fafe+10,19.0.0-1-g6fe20d0+2,19.0.0-1-g8c57eb9+10,19.0.0-1-gbfe0924+1,19.0.0-1-gdc0e4a7+15,19.0.0-1-ge272bc4+10,19.0.0-1-ge3aa853+1,19.0.0-14-gbb28fe44+1,19.0.0-16-g8258e2a+1,19.0.0-2-g0d9f9cd+17,19.0.0-2-g260436e+1,19.0.0-2-g9b11441+4,19.0.0-2-gd955cfd+23,19.0.0-3-g6513920+1,19.0.0-3-gc4f6e04,19.0.0-4-g41ffa1d+3,19.0.0-4-g725f80e+19,19.0.0-4-ga8eba22,19.0.0-5-g0745e3f+1,19.0.0-5-gd943061d,19.0.0-6-gb6b8b0a+1,19.0.0-7-ge358e0fc4,19.0.0-7-gea0a0fe+6,w.2020.03
LSSTDataManagementBasePackage
Functions
lsst.afw.fits.pickleFits Namespace Reference

Functions

def reduceToFits (obj)
 
def unreduceFromFits (cls, data, size)
 

Function Documentation

◆ reduceToFits()

def lsst.afw.fits.pickleFits.reduceToFits (   obj)
Pickle to FITS

Intended to be used by the ``__reduce__`` method of a class.

Parameters
----------
obj
    any object with a ``writeFits`` method taking a
    `~lsst.afw.fits.MemFileManager` and possibly an
    `~lsst.afw.fits.ImageWriteOptions`.

Returns
-------
reduced : `tuple` [callable, `tuple`]
    a tuple in the format returned by `~object.__reduce__`

Definition at line 7 of file pickleFits.py.

7 def reduceToFits(obj):
8  """Pickle to FITS
9 
10  Intended to be used by the ``__reduce__`` method of a class.
11 
12  Parameters
13  ----------
14  obj
15  any object with a ``writeFits`` method taking a
16  `~lsst.afw.fits.MemFileManager` and possibly an
17  `~lsst.afw.fits.ImageWriteOptions`.
18 
19  Returns
20  -------
21  reduced : `tuple` [callable, `tuple`]
22  a tuple in the format returned by `~object.__reduce__`
23  """
24  manager = MemFileManager()
25  options = ImageWriteOptions(ImageCompressionOptions(ImageCompressionOptions.NONE))
26  table = getattr(obj, 'table', None)
27  if isinstance(table, lsst.afw.table.BaseTable):
28  # table objects don't take `options`
29  obj.writeFits(manager)
30  else:
31  # MaskedImage and Exposure both require options for each plane (image, mask, variance)
33  obj.writeFits(manager, options, options, options)
34  else:
35  obj.writeFits(manager, options)
36  size = manager.getLength()
37  data = manager.getData()
38  return (unreduceFromFits, (obj.__class__, data, size))
39 
40 
A class to contain the data, WCS, and other information needed to describe an image of the sky...
Definition: Exposure.h:72
A class to manipulate images, masks, and variance as a single object.
Definition: MaskedImage.h:73
Base class for all tables.
Definition: BaseTable.h:61

◆ unreduceFromFits()

def lsst.afw.fits.pickleFits.unreduceFromFits (   cls,
  data,
  size 
)
Unpickle from FITS

Unpack data produced by `reduceToFits`. This method is used by the
pickling framework and should not need to be called from user code.

Parameters
----------
cls : `type`
    the class of object to unpickle. Must have a class-level ``readFits``
    method taking a `~lsst.afw.fits.MemFileManager`.
data : `bytes`
    an in-memory representation of the object, compatible with
    `~lsst.afw.fits.MemFileManager`
size : `int`
    the length of `data`

Returns
-------
unpickled : ``cls``
    the object represented by ``data``

Definition at line 41 of file pickleFits.py.

41 def unreduceFromFits(cls, data, size):
42  """Unpickle from FITS
43 
44  Unpack data produced by `reduceToFits`. This method is used by the
45  pickling framework and should not need to be called from user code.
46 
47  Parameters
48  ----------
49  cls : `type`
50  the class of object to unpickle. Must have a class-level ``readFits``
51  method taking a `~lsst.afw.fits.MemFileManager`.
52  data : `bytes`
53  an in-memory representation of the object, compatible with
54  `~lsst.afw.fits.MemFileManager`
55  size : `int`
56  the length of `data`
57 
58  Returns
59  -------
60  unpickled : ``cls``
61  the object represented by ``data``
62  """
63  manager = MemFileManager(size)
64  manager.setData(data, size)
65  return cls.readFits(manager)
66 
def unreduceFromFits(cls, data, size)
Definition: pickleFits.py:41