LSST Applications  21.0.0-172-gfb10e10a+18fedfabac,22.0.0+297cba6710,22.0.0+80564b0ff1,22.0.0+8d77f4f51a,22.0.0+a28f4c53b1,22.0.0+dcf3732eb2,22.0.1-1-g7d6de66+2a20fdde0d,22.0.1-1-g8e32f31+297cba6710,22.0.1-1-geca5380+7fa3b7d9b6,22.0.1-12-g44dc1dc+2a20fdde0d,22.0.1-15-g6a90155+515f58c32b,22.0.1-16-g9282f48+790f5f2caa,22.0.1-2-g92698f7+dcf3732eb2,22.0.1-2-ga9b0f51+7fa3b7d9b6,22.0.1-2-gd1925c9+bf4f0e694f,22.0.1-24-g1ad7a390+a9625a72a8,22.0.1-25-g5bf6245+3ad8ecd50b,22.0.1-25-gb120d7b+8b5510f75f,22.0.1-27-g97737f7+2a20fdde0d,22.0.1-32-gf62ce7b1+aa4237961e,22.0.1-4-g0b3f228+2a20fdde0d,22.0.1-4-g243d05b+871c1b8305,22.0.1-4-g3a563be+32dcf1063f,22.0.1-4-g44f2e3d+9e4ab0f4fa,22.0.1-42-gca6935d93+ba5e5ca3eb,22.0.1-5-g15c806e+85460ae5f3,22.0.1-5-g58711c4+611d128589,22.0.1-5-g75bb458+99c117b92f,22.0.1-6-g1c63a23+7fa3b7d9b6,22.0.1-6-g50866e6+84ff5a128b,22.0.1-6-g8d3140d+720564cf76,22.0.1-6-gd805d02+cc5644f571,22.0.1-8-ge5750ce+85460ae5f3,master-g6e05de7fdc+babf819c66,master-g99da0e417a+8d77f4f51a,w.2021.48
LSST Data Management Base Package
Classes | Public Member Functions | List of all members
lsst::afw::image::ExposureFitsReader Class Reference

A FITS reader class for Exposures and their components. More...

#include <ExposureFitsReader.h>

Classes

class  ArchiveReader
 
class  MetadataReader
 

Public Member Functions

 ExposureFitsReader (std::string const &fileName)
 Construct a FITS reader object. More...
 
 ExposureFitsReader (fits::MemFileManager &manager)
 Construct a FITS reader object. More...
 
 ExposureFitsReader (fits::Fits *fitsFile)
 Construct a FITS reader object. More...
 
 ExposureFitsReader (ExposureFitsReader const &)=delete
 
 ExposureFitsReader (ExposureFitsReader &&)=delete
 
ExposureFitsReaderoperator= (ExposureFitsReader const &)=delete
 
ExposureFitsReaderoperator= (ExposureFitsReader &&)=delete
 
 ~ExposureFitsReader () noexcept
 
lsst::geom::Box2I readBBox (ImageOrigin origin=PARENT)
 Read the bounding box of the on-disk image. More...
 
lsst::geom::Point2I readXY0 (lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT)
 Read the image origin from the on-disk image or a subimage thereof. More...
 
int readSerializationVersion ()
 Read the serialization version number from the header. More...
 
std::shared_ptr< daf::base::PropertyListreadMetadata ()
 Read the flexible metadata associated with the Exposure. More...
 
std::optional< table::RecordIdreadExposureId ()
 Read the Exposure's exposure ID, if it exists. More...
 
std::shared_ptr< afw::geom::SkyWcsreadWcs ()
 Read the Exposure's world coordinate system. More...
 
Filter readFilter ()
 Read the Exposure's filter. More...
 
std::shared_ptr< FilterLabelreadFilterLabel ()
 Read the Exposure's filter information. More...
 
std::shared_ptr< PhotoCalibreadPhotoCalib ()
 Read the Exposure's photometric calibration. More...
 
std::shared_ptr< detection::PsfreadPsf ()
 Read the Exposure's point-spread function. More...
 
std::shared_ptr< afw::geom::polygon::PolygonreadValidPolygon ()
 Read the polygon describing the region of validity for the Exposure. More...
 
std::shared_ptr< ApCorrMapreadApCorrMap ()
 Read the Exposure's aperture correction map. More...
 
std::shared_ptr< CoaddInputsreadCoaddInputs ()
 Read the Exposure's coadd input catalogs. More...
 
std::shared_ptr< VisitInforeadVisitInfo ()
 Read the Exposure's visit metadata. More...
 
std::shared_ptr< TransmissionCurvereadTransmissionCurve ()
 Read the Exposure's transmission curve. More...
 
std::shared_ptr< cameraGeom::DetectorreadDetector ()
 Read the Exposure's detector. More...
 
std::shared_ptr< typehandling::StorablereadComponent (std::string const &componentName)
 Read an arbitrary non-standard component by name. More...
 
std::map< std::string, std::shared_ptr< table::io::Persistable > > readExtraComponents ()
 Read the Exposure's non-standard components. More...
 
std::shared_ptr< ExposureInforeadExposureInfo ()
 Read the ExposureInfo containing all non-image components. More...
 
template<typename MaskPixelT >
Mask< MaskPixelT > readMask (lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool conformMasks=false, bool allowUnsafe=false)
 Read the mask plane. More...
 
template<typename MaskPixelT >
ndarray::Array< MaskPixelT, 2, 2 > readMaskArray (lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool allowUnsafe=false)
 Read the mask plane. More...
 
template<typename ImagePixelT , typename MaskPixelT = MaskPixel, typename VariancePixelT = VariancePixel>
MaskedImage< ImagePixelT, MaskPixelT, VariancePixelT > readMaskedImage (lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool conformMasks=false, bool allowUnsafe=false)
 Read the MaskedImage. More...
 
template<typename ImagePixelT , typename MaskPixelT = MaskPixel, typename VariancePixelT = VariancePixel>
Exposure< ImagePixelT, MaskPixelT, VariancePixelT > read (lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool conformMasks=false, bool allowUnsafe=false)
 Read the full Exposure. More...
 
std::string getFileName () const
 Return the name of the file this reader targets. More...
 
std::string readImageDType () const
 Read a string describing the pixel type of the on-disk image plane. More...
 
std::string readMaskDType () const
 Read a string describing the pixel type of the on-disk image plane. More...
 
std::string readVarianceDType () const
 Read a string describing the pixel type of the on-disk image plane. More...
 
template<typename ImagePixelT >
Image< ImagePixelT > readImage (lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool allowUnsafe=false)
 Read the image plane. More...
 
template<typename ImagePixelT >
ndarray::Array< ImagePixelT, 2, 2 > readImageArray (lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool allowUnsafe=false)
 Read the image plane. More...
 
template<typename VariancePixelT >
Image< VariancePixelT > readVariance (lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool allowUnsafe=false)
 Read the variance plane. More...
 
template<typename VariancePixelT >
ndarray::Array< VariancePixelT, 2, 2 > readVarianceArray (lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool allowUnsafe=false)
 Read the variance plane. More...
 

Detailed Description

A FITS reader class for Exposures and their components.

Exception Safety
All ExposureFitsReader methods provide strong exception safety, but exceptions thrown by the internal fits::Fits object itself may change its status variable or HDU pointer; ExposureFitsReader guards against this by resetting those before any use of the Fits object.

Definition at line 44 of file ExposureFitsReader.h.

Constructor & Destructor Documentation

◆ ExposureFitsReader() [1/5]

lsst::afw::image::ExposureFitsReader::ExposureFitsReader ( std::string const &  fileName)
explicit

Construct a FITS reader object.

Parameters
fileNameName of a file to open.

Definition at line 490 of file ExposureFitsReader.cc.

490 : _maskedImageReader(fileName) {}

◆ ExposureFitsReader() [2/5]

lsst::afw::image::ExposureFitsReader::ExposureFitsReader ( fits::MemFileManager manager)
explicit

Construct a FITS reader object.

Parameters
managerMemory block containing a FITS file.

Definition at line 492 of file ExposureFitsReader.cc.

492 : _maskedImageReader(manager) {}

◆ ExposureFitsReader() [3/5]

lsst::afw::image::ExposureFitsReader::ExposureFitsReader ( fits::Fits fitsFile)
explicit

Construct a FITS reader object.

Parameters
fitsFilePointer to a CFITSIO file object. Lifetime will not be managed by the Reader object.

Definition at line 494 of file ExposureFitsReader.cc.

494 : _maskedImageReader(fitsFile) {}

◆ ExposureFitsReader() [4/5]

lsst::afw::image::ExposureFitsReader::ExposureFitsReader ( ExposureFitsReader const &  )
delete

◆ ExposureFitsReader() [5/5]

lsst::afw::image::ExposureFitsReader::ExposureFitsReader ( ExposureFitsReader &&  )
delete

◆ ~ExposureFitsReader()

lsst::afw::image::ExposureFitsReader::~ExposureFitsReader ( )
defaultnoexcept

Member Function Documentation

◆ getFileName()

std::string lsst::afw::image::ExposureFitsReader::getFileName ( ) const
inline

Return the name of the file this reader targets.

Definition at line 294 of file ExposureFitsReader.h.

294 { return _maskedImageReader.getFileName(); }
std::string getFileName() const
Return the name of the file this reader targets.

◆ operator=() [1/2]

ExposureFitsReader& lsst::afw::image::ExposureFitsReader::operator= ( ExposureFitsReader &&  )
delete

◆ operator=() [2/2]

ExposureFitsReader& lsst::afw::image::ExposureFitsReader::operator= ( ExposureFitsReader const &  )
delete

◆ read()

template<typename ImagePixelT , typename MaskPixelT , typename VariancePixelT >
template Exposure< std::uint64_t, MaskPixel, VariancePixel > lsst::afw::image::ExposureFitsReader::read ( lsst::geom::Box2I const &  bbox = lsst::geom::Box2I(),
ImageOrigin  origin = PARENT,
bool  conformMasks = false,
bool  allowUnsafe = false 
)

Read the full Exposure.

Parameters
bboxA bounding box used to defined a subimage, or an empty box (default) to read the whole image.
originCoordinate system convention for the given box.
conformMasksIf True, conform the global mask dict to match this file.
allowUnsafePermit reading into the requested pixel type even when on-disk values may overflow or truncate.

In Python, this templated method is wrapped with an additional dtype argument to provide the type to read (for the image plane). This defaults to the type of the on-disk image.

Definition at line 738 of file ExposureFitsReader.cc.

741  {
742  auto mi =
743  readMaskedImage<ImagePixelT, MaskPixelT, VariancePixelT>(bbox, origin, conformMasks, allowUnsafe);
744  return Exposure<ImagePixelT, MaskPixelT, VariancePixelT>(mi, readExposureInfo());
745 }
AmpInfoBoxKey bbox
Definition: Amplifier.cc:117
std::shared_ptr< ExposureInfo > readExposureInfo()
Read the ExposureInfo containing all non-image components.

◆ readApCorrMap()

std::shared_ptr< ApCorrMap > lsst::afw::image::ExposureFitsReader::readApCorrMap ( )

Read the Exposure's aperture correction map.

Definition at line 575 of file ExposureFitsReader.cc.

575  {
576  _ensureReaders();
577  return _archiveReader->readComponent<ApCorrMap>(_getFitsFile(), ArchiveReader::AP_CORR_MAP);
578 }

◆ readBBox()

lsst::geom::Box2I lsst::afw::image::ExposureFitsReader::readBBox ( ImageOrigin  origin = PARENT)

Read the bounding box of the on-disk image.

Parameters
originCoordinate system convention for the returned box. If LOCAL, the returned box will always have a minimum of (0, 0).

Definition at line 498 of file ExposureFitsReader.cc.

498  {
499  return _maskedImageReader.readBBox(origin);
500 }
lsst::geom::Box2I readBBox(ImageOrigin origin=PARENT)
Read the bounding box of the on-disk image.

◆ readCoaddInputs()

std::shared_ptr< CoaddInputs > lsst::afw::image::ExposureFitsReader::readCoaddInputs ( )

Read the Exposure's coadd input catalogs.

Definition at line 580 of file ExposureFitsReader.cc.

580  {
581  _ensureReaders();
582  return _archiveReader->readComponent<CoaddInputs>(_getFitsFile(), ArchiveReader::COADD_INPUTS);
583 }

◆ readComponent()

std::shared_ptr< typehandling::Storable > lsst::afw::image::ExposureFitsReader::readComponent ( std::string const &  componentName)

Read an arbitrary non-standard component by name.

Definition at line 601 of file ExposureFitsReader.cc.

601  {
602  _ensureReaders();
603  return _archiveReader->readComponent<typehandling::Storable>(_getFitsFile(), componentName);
604 }

◆ readDetector()

std::shared_ptr< cameraGeom::Detector > lsst::afw::image::ExposureFitsReader::readDetector ( )

Read the Exposure's detector.

Definition at line 596 of file ExposureFitsReader.cc.

596  {
597  _ensureReaders();
598  return _archiveReader->readComponent<cameraGeom::Detector>(_getFitsFile(), ArchiveReader::DETECTOR);
599 }

◆ readExposureId()

std::optional< table::RecordId > lsst::afw::image::ExposureFitsReader::readExposureId ( )

Read the Exposure's exposure ID, if it exists.

Definition at line 522 of file ExposureFitsReader.cc.

522  {
523  _ensureReaders();
524  return _metadataReader->exposureId;
525 }

◆ readExposureInfo()

std::shared_ptr< ExposureInfo > lsst::afw::image::ExposureFitsReader::readExposureInfo ( )

Read the ExposureInfo containing all non-image components.

Definition at line 611 of file ExposureFitsReader.cc.

611  {
612  auto result = std::make_shared<ExposureInfo>();
613  result->setMetadata(readMetadata());
614  result->setPhotoCalib(readPhotoCalib());
615  result->setVisitInfo(readVisitInfo());
616  // Override ID set in visitInfo, if necessary
617  std::optional<table::RecordId> exposureId = readExposureId();
618  if (exposureId) {
619  result->setId(*exposureId);
620  }
621  // When reading an ExposureInfo (as opposed to reading individual
622  // components), we warn and try to proceed when a component is present
623  // but can't be read due its serialization factory not being set up
624  // (that's what throws the NotFoundErrors caught below).
625  try {
626  result->setPsf(readPsf());
627  } catch (pex::exceptions::NotFoundError& err) {
628  LOGLS_WARN(_log, "Could not read PSF; setting to null: " << err.what());
629  }
630  try {
631  result->setCoaddInputs(readCoaddInputs());
632  } catch (pex::exceptions::NotFoundError& err) {
633  LOGLS_WARN(_log, "Could not read CoaddInputs; setting to null: " << err.what());
634  }
635  try {
636  result->setApCorrMap(readApCorrMap());
637  } catch (pex::exceptions::NotFoundError& err) {
638  LOGLS_WARN(_log, "Could not read ApCorrMap; setting to null: " << err.what());
639  }
640  try {
641  result->setValidPolygon(readValidPolygon());
642  } catch (pex::exceptions::NotFoundError& err) {
643  LOGLS_WARN(_log, "Could not read ValidPolygon; setting to null: " << err.what());
644  }
645  try {
646  result->setTransmissionCurve(readTransmissionCurve());
647  } catch (pex::exceptions::NotFoundError& err) {
648  LOGLS_WARN(_log, "Could not read TransmissionCurve; setting to null: " << err.what());
649  }
650  try {
651  result->setDetector(readDetector());
652  } catch (pex::exceptions::NotFoundError& err) {
653  LOGLS_WARN(_log, "Could not read Detector; setting to null: " << err.what());
654  }
655  // In the case of WCS, we fall back to the metadata WCS if the one from
656  // the archive can't be read.
657  _ensureReaders();
658  result->setWcs(_metadataReader->wcs);
659  try {
660  auto wcs = _archiveReader->readComponent<afw::geom::SkyWcs>(_getFitsFile(), ArchiveReader::WCS);
661  if (!wcs) {
662  LOGLS_DEBUG(_log, "No WCS found in binary table");
663  } else {
664  result->setWcs(wcs);
665  }
666  } catch (pex::exceptions::NotFoundError& err) {
667  auto msg = str(boost::format("Could not read WCS extension; setting to null: %s") % err.what());
668  if (result->hasWcs()) {
669  msg += " ; using WCS from FITS header";
670  }
671  LOGLS_WARN(_log, msg);
672  }
673  for (const auto& keyValue : readExtraComponents()) {
675  std::string key = keyValue.first;
676  StorablePtr object = std::dynamic_pointer_cast<StorablePtr::element_type>(keyValue.second);
677 
678  if (object.use_count() > 0) { // Failed cast guarantees empty pointer, but not a null one
679  result->setComponent(typehandling::makeKey<StorablePtr>(key), object);
680  } else {
681  LOGLS_WARN(_log, "Data corruption: generic component " << key << " is not a Storable; skipping.");
682  }
683  }
684  // Convert old-style Filter to new-style FilterLabel
685  // In newer versions this is handled by readExtraComponents()
686  if (_metadataReader->version < 2 && !result->hasFilterLabel()) {
687  result->setFilterLabel(readFilterLabel());
688  }
689  return result;
690 } // namespace image
py::object result
Definition: _schema.cc:429
#define LOGLS_WARN(logger, message)
Log a warn-level message using an iostream-based interface.
Definition: Log.h:659
#define LOGLS_DEBUG(logger, message)
Log a debug-level message using an iostream-based interface.
Definition: Log.h:619
table::Key< table::Array< std::uint8_t > > wcs
Definition: SkyWcs.cc:66
table::Key< table::RecordId > exposureId
Definition: VisitInfo.cc:199
std::shared_ptr< TransmissionCurve > readTransmissionCurve()
Read the Exposure's transmission curve.
std::shared_ptr< FilterLabel > readFilterLabel()
Read the Exposure's filter information.
std::map< std::string, std::shared_ptr< table::io::Persistable > > readExtraComponents()
Read the Exposure's non-standard components.
std::shared_ptr< detection::Psf > readPsf()
Read the Exposure's point-spread function.
std::shared_ptr< afw::geom::polygon::Polygon > readValidPolygon()
Read the polygon describing the region of validity for the Exposure.
std::shared_ptr< daf::base::PropertyList > readMetadata()
Read the flexible metadata associated with the Exposure.
std::shared_ptr< PhotoCalib > readPhotoCalib()
Read the Exposure's photometric calibration.
std::optional< table::RecordId > readExposureId()
Read the Exposure's exposure ID, if it exists.
std::shared_ptr< ApCorrMap > readApCorrMap()
Read the Exposure's aperture correction map.
std::shared_ptr< CoaddInputs > readCoaddInputs()
Read the Exposure's coadd input catalogs.
std::shared_ptr< cameraGeom::Detector > readDetector()
Read the Exposure's detector.
std::shared_ptr< VisitInfo > readVisitInfo()
Read the Exposure's visit metadata.
def format(config, name=None, writeSourceLine=True, prefix="", verbose=False)
Definition: history.py:174

◆ readExtraComponents()

std::map< std::string, std::shared_ptr< table::io::Persistable > > lsst::afw::image::ExposureFitsReader::readExtraComponents ( )

Read the Exposure's non-standard components.

Definition at line 606 of file ExposureFitsReader.cc.

606  {
607  _ensureReaders();
608  return _archiveReader->readExtraComponents(_getFitsFile());
609 }

◆ readFilter()

Filter lsst::afw::image::ExposureFitsReader::readFilter ( )

Read the Exposure's filter.

Definition at line 536 of file ExposureFitsReader.cc.

536  {
538  if (label) {
539  return makeFilter(*label);
540  } else {
541  // Old exposures always had a Filter, even if only the default
542  return Filter();
543  }
544 }
Filter makeFilter(FilterLabel const &label)
Convert a FilterLabel back to an old-style Filter.

◆ readFilterLabel()

std::shared_ptr< FilterLabel > lsst::afw::image::ExposureFitsReader::readFilterLabel ( )

Read the Exposure's filter information.

Definition at line 546 of file ExposureFitsReader.cc.

546  {
547  _ensureReaders();
548  if (_metadataReader->version < 2) {
549  return _metadataReader->filterLabel;
550  } else {
551  return _archiveReader->readComponent<FilterLabel>(_getFitsFile(), ExposureInfo::KEY_FILTER.getId());
552  }
553 }
static typehandling::Key< std::string, std::shared_ptr< FilterLabel const > > const KEY_FILTER
Standard key for looking up filter information.
Definition: ExposureInfo.h:110

◆ readImage()

template<typename ImagePixelT >
template Image< std::uint64_t > lsst::afw::image::ExposureFitsReader::readImage ( lsst::geom::Box2I const &  bbox = lsst::geom::Box2I(),
ImageOrigin  origin = PARENT,
bool  allowUnsafe = false 
)

Read the image plane.

Parameters
bboxA bounding box used to defined a subimage, or an empty box (default) to read the whole image.
originCoordinate system convention for the given box.
allowUnsafePermit reading into the requested pixel type even when on-disk values may overflow or truncate.

In Python, this templated method is wrapped with an additional dtype argument to provide the type to read. This defaults to the type of the on-disk image.

Definition at line 693 of file ExposureFitsReader.cc.

694  {
695  return _maskedImageReader.readImage<ImagePixelT>(bbox, origin, allowUnsafe);
696 }
Image< ImagePixelT > readImage(lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool allowUnsafe=false)
Read the image plane.

◆ readImageArray()

template<typename ImagePixelT >
template ndarray::Array< std::uint64_t, 2, 2 > lsst::afw::image::ExposureFitsReader::readImageArray ( lsst::geom::Box2I const &  bbox = lsst::geom::Box2I(),
ImageOrigin  origin = PARENT,
bool  allowUnsafe = false 
)

Read the image plane.

Parameters
bboxA bounding box used to defined a subimage, or an empty box (default) to read the whole image.
originCoordinate system convention for the given box.
allowUnsafePermit reading into the requested pixel type even when on-disk values may overflow or truncate.

In Python, this templated method is wrapped with an additional dtype argument to provide the type to read. This defaults to the type of the on-disk image.

Definition at line 699 of file ExposureFitsReader.cc.

700  {
701  return _maskedImageReader.readImageArray<ImagePixelT>(bbox, origin, allowUnsafe);
702 }
ndarray::Array< ImagePixelT, 2, 2 > readImageArray(lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool allowUnsafe=false)
Read the image plane.

◆ readImageDType()

std::string lsst::afw::image::ExposureFitsReader::readImageDType ( ) const

Read a string describing the pixel type of the on-disk image plane.

Returns
A string of the form [u](int|float)<bits> (e.g. "uint16", "float64").

Definition at line 511 of file ExposureFitsReader.cc.

511 { return _maskedImageReader.readImageDType(); }
std::string readImageDType() const
Read a string describing the pixel type of the on-disk image plane.

◆ readMask()

template<typename MaskPixelT >
template Mask< MaskPixel > lsst::afw::image::ExposureFitsReader::readMask ( lsst::geom::Box2I const &  bbox = lsst::geom::Box2I(),
ImageOrigin  origin = PARENT,
bool  conformMasks = false,
bool  allowUnsafe = false 
)

Read the mask plane.

Parameters
bboxA bounding box used to defined a subimage, or an empty box (default) to read the whole image.
originCoordinate system convention for the given box.
conformMasksIf True, conform the global mask dict to match this file.
allowUnsafePermit reading into the requested pixel type even when on-disk values may overflow or truncate.

In Python, this templated method is wrapped with an additional dtype argument to provide the type to read. This defaults to the type of the on-disk image.

Definition at line 705 of file ExposureFitsReader.cc.

706  {
707  return _maskedImageReader.readMask<MaskPixelT>(bbox, origin, conformMasks, allowUnsafe);
708 }
Mask< MaskPixelT > readMask(lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool conformMasks=false, bool allowUnsafe=false)
Read the mask plane.

◆ readMaskArray()

template<typename MaskPixelT >
template ndarray::Array< MaskPixel, 2, 2 > lsst::afw::image::ExposureFitsReader::readMaskArray ( lsst::geom::Box2I const &  bbox = lsst::geom::Box2I(),
ImageOrigin  origin = PARENT,
bool  allowUnsafe = false 
)

Read the mask plane.

Parameters
bboxA bounding box used to defined a subimage, or an empty box (default) to read the whole image.
originCoordinate system convention for the given box.
allowUnsafePermit reading into the requested pixel type even when on-disk values may overflow or truncate.

In Python, this templated method is wrapped with an additional dtype argument to provide the type to read. This defaults to the type of the on-disk image.

Definition at line 711 of file ExposureFitsReader.cc.

712  {
713  return _maskedImageReader.readMaskArray<MaskPixelT>(bbox, origin, allowUnsafe);
714 }
ndarray::Array< MaskPixelT, 2, 2 > readMaskArray(lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool allowUnsafe=false)
Read the mask plane.

◆ readMaskDType()

std::string lsst::afw::image::ExposureFitsReader::readMaskDType ( ) const

Read a string describing the pixel type of the on-disk image plane.

Returns
A string of the form [u](int|float)<bits> (e.g. "uint16", "float64").

Definition at line 513 of file ExposureFitsReader.cc.

513 { return _maskedImageReader.readMaskDType(); }
std::string readMaskDType() const
Read a string describing the pixel type of the on-disk image plane.

◆ readMaskedImage()

template<typename ImagePixelT , typename MaskPixelT , typename VariancePixelT >
template MaskedImage< std::uint64_t, MaskPixel, VariancePixel > lsst::afw::image::ExposureFitsReader::readMaskedImage ( lsst::geom::Box2I const &  bbox = lsst::geom::Box2I(),
ImageOrigin  origin = PARENT,
bool  conformMasks = false,
bool  allowUnsafe = false 
)

Read the MaskedImage.

Parameters
bboxA bounding box used to defined a subimage, or an empty box (default) to read the whole image.
originCoordinate system convention for the given box.
conformMasksIf True, conform the global mask dict to match this file.
allowUnsafePermit reading into the requested pixel type even when on-disk values may overflow or truncate.

In Python, this templated method is wrapped with an additional dtype argument to provide the type to read (for the image plane). This defaults to the type of the on-disk image.

Definition at line 730 of file ExposureFitsReader.cc.

731  {
732  return _maskedImageReader.read<ImagePixelT, MaskPixelT, VariancePixelT>(bbox, origin, conformMasks,
733  /* needAllHdus= */ false,
734  allowUnsafe);
735 }
MaskedImage< ImagePixelT, MaskPixelT, VariancePixelT > read(lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool conformMasks=false, bool needAllHdus=false, bool allowUnsafe=false)
Read the full MaskedImage.

◆ readMetadata()

std::shared_ptr< daf::base::PropertyList > lsst::afw::image::ExposureFitsReader::readMetadata ( )

Read the flexible metadata associated with the Exposure.

FITS header keys used to construct other Exposure components will be stripped.

Definition at line 517 of file ExposureFitsReader.cc.

517  {
518  _ensureReaders();
519  return _metadataReader->metadata;
520 }

◆ readPhotoCalib()

std::shared_ptr< PhotoCalib > lsst::afw::image::ExposureFitsReader::readPhotoCalib ( )

Read the Exposure's photometric calibration.

Definition at line 555 of file ExposureFitsReader.cc.

555  {
556  _ensureReaders();
557  if (_metadataReader->version == 0) {
558  return _metadataReader->photoCalib;
559  } else {
560  return _archiveReader->readComponent<image::PhotoCalib>(_getFitsFile(), ArchiveReader::PHOTOCALIB);
561  }
562 }
The photometric calibration of an exposure.
Definition: PhotoCalib.h:114

◆ readPsf()

std::shared_ptr< detection::Psf > lsst::afw::image::ExposureFitsReader::readPsf ( )

Read the Exposure's point-spread function.

Definition at line 564 of file ExposureFitsReader.cc.

564  {
565  _ensureReaders();
566  return _archiveReader->readComponent<detection::Psf>(_getFitsFile(), ArchiveReader::PSF);
567 }

◆ readSerializationVersion()

int lsst::afw::image::ExposureFitsReader::readSerializationVersion ( )

Read the serialization version number from the header.

Definition at line 506 of file ExposureFitsReader.cc.

506  {
507  _ensureReaders();
508  return _metadataReader->version;
509 }

◆ readTransmissionCurve()

std::shared_ptr< TransmissionCurve > lsst::afw::image::ExposureFitsReader::readTransmissionCurve ( )

Read the Exposure's transmission curve.

Definition at line 590 of file ExposureFitsReader.cc.

590  {
591  _ensureReaders();
592  return _archiveReader->readComponent<TransmissionCurve>(_getFitsFile(),
594 }

◆ readValidPolygon()

std::shared_ptr< afw::geom::polygon::Polygon > lsst::afw::image::ExposureFitsReader::readValidPolygon ( )

Read the polygon describing the region of validity for the Exposure.

Definition at line 569 of file ExposureFitsReader.cc.

569  {
570  _ensureReaders();
571  return _archiveReader->readComponent<afw::geom::polygon::Polygon>(_getFitsFile(),
573 }

◆ readVariance()

template<typename VariancePixelT >
template Image< VariancePixel > lsst::afw::image::ExposureFitsReader::readVariance ( lsst::geom::Box2I const &  bbox = lsst::geom::Box2I(),
ImageOrigin  origin = PARENT,
bool  allowUnsafe = false 
)

Read the variance plane.

Parameters
bboxA bounding box used to defined a subimage, or an empty box (default) to read the whole image.
originCoordinate system convention for the given box.
allowUnsafePermit reading into the requested pixel type even when on-disk values may overflow or truncate.

In Python, this templated method is wrapped with an additional dtype argument to provide the type to read. This defaults to the type of the on-disk image.

Definition at line 717 of file ExposureFitsReader.cc.

718  {
719  return _maskedImageReader.readVariance<VariancePixelT>(bbox, origin, allowUnsafe);
720 }
Image< VariancePixelT > readVariance(lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool allowUnsafe=false)
Read the variance plane.

◆ readVarianceArray()

template<typename VariancePixelT >
template ndarray::Array< VariancePixel, 2, 2 > lsst::afw::image::ExposureFitsReader::readVarianceArray ( lsst::geom::Box2I const &  bbox = lsst::geom::Box2I(),
ImageOrigin  origin = PARENT,
bool  allowUnsafe = false 
)

Read the variance plane.

Parameters
bboxA bounding box used to defined a subimage, or an empty box (default) to read the whole image.
originCoordinate system convention for the given box.
allowUnsafePermit reading into the requested pixel type even when on-disk values may overflow or truncate.

In Python, this templated method is wrapped with an additional dtype argument to provide the type to read. This defaults to the type of the on-disk image.

Definition at line 723 of file ExposureFitsReader.cc.

725  {
726  return _maskedImageReader.readVarianceArray<VariancePixelT>(bbox, origin, allowUnsafe);
727 }
ndarray::Array< VariancePixelT, 2, 2 > readVarianceArray(lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT, bool allowUnsafe=false)
Read the variance plane.

◆ readVarianceDType()

std::string lsst::afw::image::ExposureFitsReader::readVarianceDType ( ) const

Read a string describing the pixel type of the on-disk image plane.

Returns
A string of the form [u](int|float)<bits> (e.g. "uint16", "float64").

Definition at line 515 of file ExposureFitsReader.cc.

515 { return _maskedImageReader.readVarianceDType(); }
std::string readVarianceDType() const
Read a string describing the pixel type of the on-disk image plane.

◆ readVisitInfo()

std::shared_ptr< VisitInfo > lsst::afw::image::ExposureFitsReader::readVisitInfo ( )

Read the Exposure's visit metadata.

Definition at line 585 of file ExposureFitsReader.cc.

585  {
586  _ensureReaders();
587  return _metadataReader->visitInfo;
588 }

◆ readWcs()

std::shared_ptr< afw::geom::SkyWcs > lsst::afw::image::ExposureFitsReader::readWcs ( )

Read the Exposure's world coordinate system.

Definition at line 527 of file ExposureFitsReader.cc.

527  {
528  _ensureReaders();
529  auto r = _archiveReader->readComponent<afw::geom::SkyWcs>(_getFitsFile(), ArchiveReader::WCS);
530  if (!r) {
531  r = _metadataReader->wcs;
532  }
533  return r;
534 }

◆ readXY0()

lsst::geom::Point2I lsst::afw::image::ExposureFitsReader::readXY0 ( lsst::geom::Box2I const &  bbox = lsst::geom::Box2I(),
ImageOrigin  origin = PARENT 
)

Read the image origin from the on-disk image or a subimage thereof.

Parameters
bboxA bounding box used to defined a subimage, or an empty
originCoordinate system convention for the given box. Ignored if bbox is empty.

Definition at line 502 of file ExposureFitsReader.cc.

502  {
503  return _maskedImageReader.readXY0(bbox, origin);
504 }
lsst::geom::Point2I readXY0(lsst::geom::Box2I const &bbox=lsst::geom::Box2I(), ImageOrigin origin=PARENT)
Read the image origin from the on-disk image or a subimage thereof.

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