lsst.ip.isr  19.0.0-24-g923e380
Public Member Functions | Public Attributes | List of all members
lsst.ip.isr.calibType.IsrCalib Class Reference
Inheritance diagram for lsst.ip.isr.calibType.IsrCalib:
lsst.ip.isr.calibType.IsrProvenance

Public Member Functions

def __init__ (self, detectorName=None, detectorSerial=None, detector=None, log=None, **kwargs)
 
def __str__ (self)
 
def __eq__ (self, other)
 
def requiredAttributes (self)
 
def requiredAttributes (self, value)
 
def getMetadata (self)
 
def setMetadata (self, metadata)
 
def updateMetadata (self, setDate=False, **kwargs)
 
def readText (cls, filename)
 
def writeText (self, filename, format='auto')
 
def readFits (cls, filename)
 
def writeFits (self, filename)
 
def fromDetector (self, detector)
 
def fromDict (cls, dictionary)
 
def toDict (self)
 
def fromTable (cls, tableList)
 
def toTable (self)
 
def validate (self, other=None)
 
def apply (self, target)
 

Public Attributes

 requiredAttributes
 
 log
 

Detailed Description

Generic calibration type.

Subclasses must implement the toDict, fromDict, toTable, fromTable
methods that allow the calibration information to be converted
from dictionaries and afw tables.  This will allow the calibration
to be persisted using the base class read/write methods.

The validate method is intended to provide a common way to check
that the calibration is valid (internally consistent) and
appropriate (usable with the intended data).  The apply method is
intended to allow the calibration to be applied in a consistent
manner.

Parameters
----------
detectorName : `str`, optional
    Name of the detector this calibration is for.
detectorSerial : `str`, optional
    Identifier for the detector.
detector : `lsst.afw.cameraGeom.Detector`, optional
    Detector to extract metadata from.
log : `lsst.log.Log`, optional
    Log for messages.

Definition at line 36 of file calibType.py.

Constructor & Destructor Documentation

◆ __init__()

def lsst.ip.isr.calibType.IsrCalib.__init__ (   self,
  detectorName = None,
  detectorSerial = None,
  detector = None,
  log = None,
**  kwargs 
)

Definition at line 66 of file calibType.py.

Member Function Documentation

◆ __eq__()

def lsst.ip.isr.calibType.IsrCalib.__eq__ (   self,
  other 
)
Calibration equivalence.

Subclasses will need to check specific sub-properties.  The
default is only to check common entries.

Reimplemented in lsst.ip.isr.calibType.IsrProvenance.

Definition at line 84 of file calibType.py.

◆ __str__()

def lsst.ip.isr.calibType.IsrCalib.__str__ (   self)

Reimplemented in lsst.ip.isr.calibType.IsrProvenance.

Definition at line 81 of file calibType.py.

◆ apply()

def lsst.ip.isr.calibType.IsrCalib.apply (   self,
  target 
)
Method to apply the calibration to the target object.

Parameters
----------
target : `object`
    Thing to validate against.

Returns
-------
valid : `bool`
    Returns true if the calibration was applied correctly.

Raises
------
NotImplementedError :
    Raised if not implemented.

Definition at line 409 of file calibType.py.

◆ fromDetector()

def lsst.ip.isr.calibType.IsrCalib.fromDetector (   self,
  detector 
)
Modify the calibration parameters to match the supplied detector.

Parameters
----------
detector : `lsst.afw.cameraGeom.Detector`
    Detector to use to set parameters from.

Raises
------
NotImplementedError
    This needs to be implemented by subclasses for each
    calibration type.

Definition at line 296 of file calibType.py.

◆ fromDict()

def lsst.ip.isr.calibType.IsrCalib.fromDict (   cls,
  dictionary 
)
Construct a calibration from a dictionary of properties.

Must be implemented by the specific calibration subclasses.

Parameters
----------
dictionary : `dict`
    Dictionary of properties.

Returns
------
calib : `lsst.ip.isr.CalibType`
    Constructed calibration.

Raises
------
NotImplementedError :
    Raised if not implemented.

Reimplemented in lsst.ip.isr.calibType.IsrProvenance.

Definition at line 313 of file calibType.py.

◆ fromTable()

def lsst.ip.isr.calibType.IsrCalib.fromTable (   cls,
  tableList 
)
Construct a calibration from a dictionary of properties.

Must be implemented by the specific calibration subclasses.

Parameters
----------
tableList : `list` [`lsst.afw.table.Table`]
    List of tables of properties.

Returns
------
calib : `lsst.ip.isr.CalibType`
    Constructed calibration.

Raises
------
NotImplementedError :
    Raised if not implemented.

Reimplemented in lsst.ip.isr.calibType.IsrProvenance.

Definition at line 354 of file calibType.py.

◆ getMetadata()

def lsst.ip.isr.calibType.IsrCalib.getMetadata (   self)
Retrieve metadata associated with this calibration.

Returns
-------
meta : `lsst.daf.base.PropertyList`
    Metadata. The returned `~lsst.daf.base.PropertyList` can be
    modified by the caller and the changes will be written to
    external files.

Definition at line 107 of file calibType.py.

◆ readFits()

def lsst.ip.isr.calibType.IsrCalib.readFits (   cls,
  filename 
)
Read calibration data from a FITS file.

Parameters
----------
filename : `str`
    Filename to read data from.

Returns
-------
calib : `lsst.ip.isr.IsrCalib`
    Calibration contained within the file.

Definition at line 246 of file calibType.py.

◆ readText()

def lsst.ip.isr.calibType.IsrCalib.readText (   cls,
  filename 
)
Read calibration representation from a yaml/ecsv file.

Parameters
----------
filename : `str`
    Name of the file containing the calibration definition.

Returns
-------
calib : `~lsst.ip.isr.IsrCalibType`
    Calibration class.

Raises
------
RuntimeError :
    Raised if the filename does not end in ".ecsv" or ".yaml".

Definition at line 163 of file calibType.py.

◆ requiredAttributes() [1/2]

def lsst.ip.isr.calibType.IsrCalib.requiredAttributes (   self)

Definition at line 100 of file calibType.py.

◆ requiredAttributes() [2/2]

def lsst.ip.isr.calibType.IsrCalib.requiredAttributes (   self,
  value 
)

Definition at line 104 of file calibType.py.

◆ setMetadata()

def lsst.ip.isr.calibType.IsrCalib.setMetadata (   self,
  metadata 
)
Store a copy of the supplied metadata with this calibration.

Parameters
----------
metadata : `lsst.daf.base.PropertyList`
    Metadata to associate with the calibration.  Will be copied and
    overwrite existing metadata.

Definition at line 120 of file calibType.py.

◆ toDict()

def lsst.ip.isr.calibType.IsrCalib.toDict (   self)
Return a dictionary containing the calibration properties.

The dictionary should be able to be round-tripped through
`fromDict`.

Returns
-------
dictionary : `dict`
    Dictionary of properties.

Raises
------
NotImplementedError :
    Raised if not implemented.

Reimplemented in lsst.ip.isr.calibType.IsrProvenance.

Definition at line 335 of file calibType.py.

◆ toTable()

def lsst.ip.isr.calibType.IsrCalib.toTable (   self)
Return a list of tables containing the calibration properties.

The table list should be able to be round-tripped through
`fromDict`.

Returns
-------
tableList : `list` [`lsst.afw.table.Table`]
    List of tables of properties.

Raises
------
NotImplementedError :
    Raised if not implemented.

Reimplemented in lsst.ip.isr.calibType.IsrProvenance.

Definition at line 376 of file calibType.py.

◆ updateMetadata()

def lsst.ip.isr.calibType.IsrCalib.updateMetadata (   self,
  setDate = False,
**  kwargs 
)
Update metadata keywords with new values.

Parameters
----------
setDate : `bool`, optional
    Ensure the metadata CALIBDATE fields are set to the current datetime.
kwargs :
    Set of key=value pairs to assign to the metadata.

Reimplemented in lsst.ip.isr.calibType.IsrProvenance.

Definition at line 137 of file calibType.py.

◆ validate()

def lsst.ip.isr.calibType.IsrCalib.validate (   self,
  other = None 
)
Validate that this calibration is defined and can be used.

Parameters
----------
other : `object`, optional
    Thing to validate against.

Returns
-------
valid : `bool`
    Returns true if the calibration is valid and appropriate.

Definition at line 394 of file calibType.py.

◆ writeFits()

def lsst.ip.isr.calibType.IsrCalib.writeFits (   self,
  filename 
)
Write calibration data to a FITS file.

Parameters
----------
filename : `str`
    Filename to write data to.

Returns
-------
used : `str`
    The name of the file used to write the data.

Definition at line 272 of file calibType.py.

◆ writeText()

def lsst.ip.isr.calibType.IsrCalib.writeText (   self,
  filename,
  format = 'auto' 
)
Write the calibration data to a text file.

Parameters
----------
filename : `str`
    Name of the file to write.
format : `str`
    Format to write the file as.  Supported values are:
``"auto"`` : Determine filetype from filename.
``"yaml"`` : Write as yaml.
``"ecsv"`` : Write as ecsv.
Returns
-------
used : `str`
    The name of the file used to write the data.  This may
    differ from the input if the format is explicitly chosen.

Raises
------
RuntimeError :
    Raised if filename does not end in a known extension, or
    if all information cannot be written.

Notes
-----
The file is written to YAML/ECSV format and will include any
associated metadata.

Definition at line 192 of file calibType.py.

Member Data Documentation

◆ log

lsst.ip.isr.calibType.IsrCalib.log

Definition at line 75 of file calibType.py.

◆ requiredAttributes

lsst.ip.isr.calibType.IsrCalib.requiredAttributes

Definition at line 72 of file calibType.py.


The documentation for this class was generated from the following file: