lsst.afw  v23.0.x-g89e8071bfa+60ce4897b0
Public Member Functions | Protected Member Functions | Friends | List of all members
lsst::afw::image::ImageBaseFitsReader Class Reference

Base class for image FITS readers. More...

#include <ImageBaseFitsReader.h>

Inheritance diagram for lsst::afw::image::ImageBaseFitsReader:
lsst::afw::image::ImageFitsReader lsst::afw::image::MaskFitsReader

Public Member Functions

 ImageBaseFitsReader (std::string const &fileName, int hdu=fits::DEFAULT_HDU)
 Construct a FITS reader object. More...
 
 ImageBaseFitsReader (fits::MemFileManager &manager, int hdu=fits::DEFAULT_HDU)
 Construct a FITS reader object. More...
 
 ImageBaseFitsReader (fits::Fits *fitsFile)
 Construct a FITS reader object. More...
 
 ImageBaseFitsReader (ImageBaseFitsReader const &)=delete
 
 ImageBaseFitsReader (ImageBaseFitsReader &&)=delete
 
ImageBaseFitsReaderoperator= (ImageBaseFitsReader const &)=delete
 
ImageBaseFitsReaderoperator= (ImageBaseFitsReader &&)=delete
 
std::string readDType () const
 Read a string describing the pixel type of the on-disk image. More...
 
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...
 
std::shared_ptr< daf::base::PropertyListreadMetadata ()
 Read the image's FITS header. More...
 
template<typename T >
ndarray::Array< T, 2, 2 > readArray (lsst::geom::Box2I const &bbox, ImageOrigin origin=PARENT, bool allowUnsafe=false)
 Read the image's data array. More...
 
int getHdu () const noexcept
 Return the HDU this reader targets. More...
 
std::string getFileName () const
 Return the name of the file this reader targets. More...
 

Protected Member Functions

 ~ImageBaseFitsReader () noexcept
 

Friends

class MaskedImageFitsReader
 

Detailed Description

Base class for image FITS readers.

This class should be considered an implementation detail of ImageFitsReader and MaskFitsReader that provides their common methods, not the definition of an interface.

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

Definition at line 47 of file ImageBaseFitsReader.h.

Constructor & Destructor Documentation

◆ ImageBaseFitsReader() [1/5]

lsst::afw::image::ImageBaseFitsReader::ImageBaseFitsReader ( std::string const &  fileName,
int  hdu = fits::DEFAULT_HDU 
)
explicit

Construct a FITS reader object.

Parameters
fileNameName of a file to open.
hduHDU index, where 0 is the primary HDU and DEFAULT_HDU is the first non-empty HDU.

Definition at line 27 of file ImageBaseFitsReader.cc.

◆ ImageBaseFitsReader() [2/5]

lsst::afw::image::ImageBaseFitsReader::ImageBaseFitsReader ( fits::MemFileManager manager,
int  hdu = fits::DEFAULT_HDU 
)
explicit

Construct a FITS reader object.

Parameters
managerMemory block containing a FITS file.
hduHDU index, where 0 is the primary HDU and DEFAULT_HDU is the first non-empty HDU.

Definition at line 37 of file ImageBaseFitsReader.cc.

◆ ImageBaseFitsReader() [3/5]

lsst::afw::image::ImageBaseFitsReader::ImageBaseFitsReader ( 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 47 of file ImageBaseFitsReader.cc.

◆ ImageBaseFitsReader() [4/5]

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

◆ ImageBaseFitsReader() [5/5]

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

◆ ~ImageBaseFitsReader()

lsst::afw::image::ImageBaseFitsReader::~ImageBaseFitsReader ( )
protectednoexcept

Definition at line 61 of file ImageBaseFitsReader.cc.

Member Function Documentation

◆ getFileName()

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

Return the name of the file this reader targets.

Definition at line 141 of file ImageBaseFitsReader.h.

◆ getHdu()

int lsst::afw::image::ImageBaseFitsReader::getHdu ( ) const
inlinenoexcept

Return the HDU this reader targets.

Definition at line 136 of file ImageBaseFitsReader.h.

◆ operator=() [1/2]

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

◆ operator=() [2/2]

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

◆ readArray()

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

Read the image's data array.

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.

Definition at line 171 of file ImageBaseFitsReader.cc.

◆ readBBox()

lsst::geom::Box2I lsst::afw::image::ImageBaseFitsReader::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 86 of file ImageBaseFitsReader.cc.

◆ readDType()

std::string lsst::afw::image::ImageBaseFitsReader::readDType ( ) const

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

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

Definition at line 80 of file ImageBaseFitsReader.cc.

◆ readMetadata()

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

Read the image's FITS header.

Definition at line 105 of file ImageBaseFitsReader.cc.

◆ readXY0()

lsst::geom::Point2I lsst::afw::image::ImageBaseFitsReader::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 box (default) to use the whole image.
originCoordinate system convention for the given box. Ignored if bbox is empty.

Definition at line 94 of file ImageBaseFitsReader.cc.

Friends And Related Function Documentation

◆ MaskedImageFitsReader

friend class MaskedImageFitsReader
friend

Definition at line 151 of file ImageBaseFitsReader.h.


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