LSST Applications  21.0.0-147-g0e635eb1+1acddb5be5,22.0.0+052faf71bd,22.0.0+1ea9a8b2b2,22.0.0+6312710a6c,22.0.0+729191ecac,22.0.0+7589c3a021,22.0.0+9f079a9461,22.0.1-1-g7d6de66+b8044ec9de,22.0.1-1-g87000a6+536b1ee016,22.0.1-1-g8e32f31+6312710a6c,22.0.1-10-gd060f87+016f7cdc03,22.0.1-12-g9c3108e+df145f6f68,22.0.1-16-g314fa6d+c825727ab8,22.0.1-19-g93a5c75+d23f2fb6d8,22.0.1-19-gb93eaa13+aab3ef7709,22.0.1-2-g8ef0a89+b8044ec9de,22.0.1-2-g92698f7+9f079a9461,22.0.1-2-ga9b0f51+052faf71bd,22.0.1-2-gac51dbf+052faf71bd,22.0.1-2-gb66926d+6312710a6c,22.0.1-2-gcb770ba+09e3807989,22.0.1-20-g32debb5+b8044ec9de,22.0.1-23-gc2439a9a+fb0756638e,22.0.1-3-g496fd5d+09117f784f,22.0.1-3-g59f966b+1e6ba2c031,22.0.1-3-g849a1b8+f8b568069f,22.0.1-3-gaaec9c0+c5c846a8b1,22.0.1-32-g5ddfab5d3+60ce4897b0,22.0.1-4-g037fbe1+64e601228d,22.0.1-4-g8623105+b8044ec9de,22.0.1-5-g096abc9+d18c45d440,22.0.1-5-g15c806e+57f5c03693,22.0.1-7-gba73697+57f5c03693,master-g6e05de7fdc+c1283a92b8,master-g72cdda8301+729191ecac,w.2021.39
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::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 42 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 480 of file ExposureFitsReader.cc.

480 : _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 482 of file ExposureFitsReader.cc.

482 : _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 484 of file ExposureFitsReader.cc.

484 : _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 290 of file ExposureFitsReader.h.

290 { 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 718 of file ExposureFitsReader.cc.

721  {
722  auto mi =
723  readMaskedImage<ImagePixelT, MaskPixelT, VariancePixelT>(bbox, origin, conformMasks, allowUnsafe);
724  return Exposure<ImagePixelT, MaskPixelT, VariancePixelT>(mi, readExposureInfo());
725 }
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 560 of file ExposureFitsReader.cc.

560  {
561  _ensureReaders();
562  return _archiveReader->readComponent<ApCorrMap>(_getFitsFile(), ArchiveReader::AP_CORR_MAP);
563 }

◆ 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 488 of file ExposureFitsReader.cc.

488  {
489  return _maskedImageReader.readBBox(origin);
490 }
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 565 of file ExposureFitsReader.cc.

565  {
566  _ensureReaders();
567  return _archiveReader->readComponent<CoaddInputs>(_getFitsFile(), ArchiveReader::COADD_INPUTS);
568 }

◆ 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 586 of file ExposureFitsReader.cc.

586  {
587  _ensureReaders();
588  return _archiveReader->readComponent<typehandling::Storable>(_getFitsFile(), componentName);
589 }

◆ readDetector()

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

Read the Exposure's detector.

Definition at line 581 of file ExposureFitsReader.cc.

581  {
582  _ensureReaders();
583  return _archiveReader->readComponent<cameraGeom::Detector>(_getFitsFile(), ArchiveReader::DETECTOR);
584 }

◆ readExposureInfo()

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

Read the ExposureInfo containing all non-image components.

Definition at line 596 of file ExposureFitsReader.cc.

596  {
597  auto result = std::make_shared<ExposureInfo>();
598  result->setMetadata(readMetadata());
599  result->setPhotoCalib(readPhotoCalib());
600  result->setVisitInfo(readVisitInfo());
601  // When reading an ExposureInfo (as opposed to reading individual
602  // components), we warn and try to proceed when a component is present
603  // but can't be read due its serialization factory not being set up
604  // (that's what throws the NotFoundErrors caught below).
605  try {
606  result->setPsf(readPsf());
607  } catch (pex::exceptions::NotFoundError& err) {
608  LOGLS_WARN(_log, "Could not read PSF; setting to null: " << err.what());
609  }
610  try {
611  result->setCoaddInputs(readCoaddInputs());
612  } catch (pex::exceptions::NotFoundError& err) {
613  LOGLS_WARN(_log, "Could not read CoaddInputs; setting to null: " << err.what());
614  }
615  try {
616  result->setApCorrMap(readApCorrMap());
617  } catch (pex::exceptions::NotFoundError& err) {
618  LOGLS_WARN(_log, "Could not read ApCorrMap; setting to null: " << err.what());
619  }
620  try {
621  result->setValidPolygon(readValidPolygon());
622  } catch (pex::exceptions::NotFoundError& err) {
623  LOGLS_WARN(_log, "Could not read ValidPolygon; setting to null: " << err.what());
624  }
625  try {
626  result->setTransmissionCurve(readTransmissionCurve());
627  } catch (pex::exceptions::NotFoundError& err) {
628  LOGLS_WARN(_log, "Could not read TransmissionCurve; setting to null: " << err.what());
629  }
630  try {
631  result->setDetector(readDetector());
632  } catch (pex::exceptions::NotFoundError& err) {
633  LOGLS_WARN(_log, "Could not read Detector; setting to null: " << err.what());
634  }
635  // In the case of WCS, we fall back to the metadata WCS if the one from
636  // the archive can't be read.
637  _ensureReaders();
638  result->setWcs(_metadataReader->wcs);
639  try {
640  auto wcs = _archiveReader->readComponent<afw::geom::SkyWcs>(_getFitsFile(), ArchiveReader::WCS);
641  if (!wcs) {
642  LOGLS_DEBUG(_log, "No WCS found in binary table");
643  } else {
644  result->setWcs(wcs);
645  }
646  } catch (pex::exceptions::NotFoundError& err) {
647  auto msg = str(boost::format("Could not read WCS extension; setting to null: %s") % err.what());
648  if (result->hasWcs()) {
649  msg += " ; using WCS from FITS header";
650  }
651  LOGLS_WARN(_log, msg);
652  }
653  for (const auto& keyValue : readExtraComponents()) {
655  std::string key = keyValue.first;
656  StorablePtr object = std::dynamic_pointer_cast<StorablePtr::element_type>(keyValue.second);
657 
658  if (object.use_count() > 0) { // Failed cast guarantees empty pointer, but not a null one
659  result->setComponent(typehandling::makeKey<StorablePtr>(key), object);
660  } else {
661  LOGLS_WARN(_log, "Data corruption: generic component " << key << " is not a Storable; skipping.");
662  }
663  }
664  // Convert old-style Filter to new-style FilterLabel
665  // In newer versions this is handled by readExtraComponents()
666  if (_metadataReader->version < 2 && !result->hasFilterLabel()) {
667  result->setFilterLabel(readFilterLabel());
668  }
669  return result;
670 } // 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
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::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 591 of file ExposureFitsReader.cc.

591  {
592  _ensureReaders();
593  return _archiveReader->readExtraComponents(_getFitsFile());
594 }

◆ readFilter()

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

Read the Exposure's filter.

Definition at line 521 of file ExposureFitsReader.cc.

521  {
523  if (label) {
524  return makeFilter(*label);
525  } else {
526  // Old exposures always had a Filter, even if only the default
527  return Filter();
528  }
529 }
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 531 of file ExposureFitsReader.cc.

531  {
532  _ensureReaders();
533  if (_metadataReader->version < 2) {
534  return _metadataReader->filterLabel;
535  } else {
536  return _archiveReader->readComponent<FilterLabel>(_getFitsFile(), ExposureInfo::KEY_FILTER.getId());
537  }
538 }
static typehandling::Key< std::string, std::shared_ptr< FilterLabel const > > const KEY_FILTER
Standard key for looking up filter information.
Definition: ExposureInfo.h:107

◆ 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 673 of file ExposureFitsReader.cc.

674  {
675  return _maskedImageReader.readImage<ImagePixelT>(bbox, origin, allowUnsafe);
676 }
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 679 of file ExposureFitsReader.cc.

680  {
681  return _maskedImageReader.readImageArray<ImagePixelT>(bbox, origin, allowUnsafe);
682 }
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 501 of file ExposureFitsReader.cc.

501 { 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 685 of file ExposureFitsReader.cc.

686  {
687  return _maskedImageReader.readMask<MaskPixelT>(bbox, origin, conformMasks, allowUnsafe);
688 }
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 691 of file ExposureFitsReader.cc.

692  {
693  return _maskedImageReader.readMaskArray<MaskPixelT>(bbox, origin, allowUnsafe);
694 }
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 503 of file ExposureFitsReader.cc.

503 { 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 710 of file ExposureFitsReader.cc.

711  {
712  return _maskedImageReader.read<ImagePixelT, MaskPixelT, VariancePixelT>(bbox, origin, conformMasks,
713  /* needAllHdus= */ false,
714  allowUnsafe);
715 }
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 507 of file ExposureFitsReader.cc.

507  {
508  _ensureReaders();
509  return _metadataReader->metadata;
510 }

◆ readPhotoCalib()

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

Read the Exposure's photometric calibration.

Definition at line 540 of file ExposureFitsReader.cc.

540  {
541  _ensureReaders();
542  if (_metadataReader->version == 0) {
543  return _metadataReader->photoCalib;
544  } else {
545  return _archiveReader->readComponent<image::PhotoCalib>(_getFitsFile(), ArchiveReader::PHOTOCALIB);
546  }
547 }
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 549 of file ExposureFitsReader.cc.

549  {
550  _ensureReaders();
551  return _archiveReader->readComponent<detection::Psf>(_getFitsFile(), ArchiveReader::PSF);
552 }

◆ readSerializationVersion()

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

Read the serialization version number from the header.

Definition at line 496 of file ExposureFitsReader.cc.

496  {
497  _ensureReaders();
498  return _metadataReader->version;
499 }

◆ readTransmissionCurve()

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

Read the Exposure's transmission curve.

Definition at line 575 of file ExposureFitsReader.cc.

575  {
576  _ensureReaders();
577  return _archiveReader->readComponent<TransmissionCurve>(_getFitsFile(),
579 }

◆ 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 554 of file ExposureFitsReader.cc.

554  {
555  _ensureReaders();
556  return _archiveReader->readComponent<afw::geom::polygon::Polygon>(_getFitsFile(),
558 }

◆ 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 697 of file ExposureFitsReader.cc.

698  {
699  return _maskedImageReader.readVariance<VariancePixelT>(bbox, origin, allowUnsafe);
700 }
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 703 of file ExposureFitsReader.cc.

705  {
706  return _maskedImageReader.readVarianceArray<VariancePixelT>(bbox, origin, allowUnsafe);
707 }
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 505 of file ExposureFitsReader.cc.

505 { 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 570 of file ExposureFitsReader.cc.

570  {
571  _ensureReaders();
572  return _metadataReader->visitInfo;
573 }

◆ readWcs()

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

Read the Exposure's world coordinate system.

Definition at line 512 of file ExposureFitsReader.cc.

512  {
513  _ensureReaders();
514  auto r = _archiveReader->readComponent<afw::geom::SkyWcs>(_getFitsFile(), ArchiveReader::WCS);
515  if (!r) {
516  r = _metadataReader->wcs;
517  }
518  return r;
519 }

◆ 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 492 of file ExposureFitsReader.cc.

492  {
493  return _maskedImageReader.readXY0(bbox, origin);
494 }
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: