SourceXtractorPlusPlus 1.0.3
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
SourceXtractor::FitsImageSource Class Reference

#include <FitsImageSource.h>

Inheritance diagram for SourceXtractor::FitsImageSource:
Collaboration diagram for SourceXtractor::FitsImageSource:

Public Member Functions

 FitsImageSource (const std::string &filename, int hdu_number=0, ImageTile::ImageType image_type=ImageTile::AutoType, std::shared_ptr< FileManager > manager=FileManager::getDefault())
 FitsImageSource (const std::string &filename, int width, int height, ImageTile::ImageType image_type, const std::shared_ptr< CoordinateSystem > coord_system=nullptr, bool append=false, bool empty_primary=false, std::shared_ptr< FileManager > manager=FileManager::getDefault())
virtual ~FitsImageSource ()=default
std::string getRepr () const override
 Human readable representation of this source.
int getWidth () const override
 Returns the width of the image in pixels.
int getHeight () const override
 Returns the height of the image in pixels.
int getDepth () const
 Returns the depth of the image in pixels.
void setLayer (int layer)
std::shared_ptr< ImageTilegetImageTile (int x, int y, int width, int height) const override
void saveTile (ImageTile &tile) override
template<typename TT>
bool readFitsKeyword (const std::string &header_keyword, TT &out_value) const
int getHDU () const
ImageTile::ImageType getType () const override
std::unique_ptr< std::vector< char > > getFitsHeaders (int &number_of_records) const
const std::map< std::string, MetadataEntry > & getMetadata () const override
void setMetadata (const std::string &key, const MetadataEntry &value) override
Public Member Functions inherited from SourceXtractor::ImageSource
 ImageSource ()
virtual ~ImageSource ()=default
Public Member Functions inherited from std::enable_shared_from_this< ImageSource >
enable_shared_from_this (T... args)
operator= (T... args)
shared_from_this (T... args)
~enable_shared_from_this (T... args)

Private Member Functions

void switchHdu (fitsfile *fptr, int hdu_number) const
int getDataType () const
int getImageType () const

Private Attributes

std::string m_filename
std::shared_ptr< FileManagerm_file_manager
std::shared_ptr< FileHandlerm_handler
int m_hdu_number
int m_width
int m_height
int m_depth
ImageTile::ImageType m_image_type
int m_current_layer

Detailed Description

Definition at line 46 of file FitsImageSource.h.

Constructor & Destructor Documentation

◆ FitsImageSource() [1/2]

SourceXtractor::FitsImageSource::FitsImageSource ( const std::string & filename,
int hdu_number = 0,
ImageTile::ImageType image_type = ImageTile::AutoType,
std::shared_ptr< FileManager > manager = FileManager::getDefault() )
explicit

Constructor

Parameters
filenamePath to the FITS file
hdu_numberHDU number. If <= 0, the constructor will use the first HDU containing an image
manager

Definition at line 74 of file FitsImageSource.cpp.

References SourceXtractor::FitsFile::getFitsFilePtr(), m_depth, m_file_manager, m_filename, m_handler, m_hdu_number, m_height, m_image_type, m_width, std::move(), and switchHdu().

Here is the call graph for this function:

◆ FitsImageSource() [2/2]

SourceXtractor::FitsImageSource::FitsImageSource ( const std::string & filename,
int width,
int height,
ImageTile::ImageType image_type,
const std::shared_ptr< CoordinateSystem > coord_system = nullptr,
bool append = false,
bool empty_primary = false,
std::shared_ptr< FileManager > manager = FileManager::getDefault() )

◆ ~FitsImageSource()

virtual SourceXtractor::FitsImageSource::~FitsImageSource ( )
virtualdefault

Member Function Documentation

◆ getDataType()

◆ getDepth()

int SourceXtractor::FitsImageSource::getDepth ( ) const
inline

Returns the depth of the image in pixels.

Definition at line 86 of file FitsImageSource.h.

References m_depth.

◆ getFitsHeaders()

std::unique_ptr< std::vector< char > > SourceXtractor::FitsImageSource::getFitsHeaders ( int & number_of_records) const

◆ getHDU()

int SourceXtractor::FitsImageSource::getHDU ( ) const
inline

Definition at line 107 of file FitsImageSource.h.

References m_hdu_number.

◆ getHeight()

int SourceXtractor::FitsImageSource::getHeight ( ) const
inlineoverridevirtual

Returns the height of the image in pixels.

Implements SourceXtractor::ImageSource.

Definition at line 81 of file FitsImageSource.h.

References m_height.

◆ getImageTile()

std::shared_ptr< ImageTile > SourceXtractor::FitsImageSource::getImageTile ( int x,
int y,
int width,
int height ) const
overridevirtual

◆ getImageType()

◆ getMetadata()

const std::map< std::string, MetadataEntry > & SourceXtractor::FitsImageSource::getMetadata ( ) const
overridevirtual
Returns
A copy of the metadata set

Reimplemented from SourceXtractor::ImageSource.

Definition at line 327 of file FitsImageSource.cpp.

References SourceXtractor::FitsFile::getHDUHeaders(), m_handler, and m_hdu_number.

Referenced by getFitsHeaders(), and readFitsKeyword().

Here is the call graph for this function:

◆ getRepr()

std::string SourceXtractor::FitsImageSource::getRepr ( ) const
inlineoverridevirtual

Human readable representation of this source.

Implements SourceXtractor::ImageSource.

Definition at line 71 of file FitsImageSource.h.

References m_filename.

◆ getType()

ImageTile::ImageType SourceXtractor::FitsImageSource::getType ( ) const
inlineoverridevirtual

Implements SourceXtractor::ImageSource.

Definition at line 111 of file FitsImageSource.h.

References m_image_type.

◆ getWidth()

int SourceXtractor::FitsImageSource::getWidth ( ) const
inlineoverridevirtual

Returns the width of the image in pixels.

Implements SourceXtractor::ImageSource.

Definition at line 76 of file FitsImageSource.h.

References m_width.

◆ readFitsKeyword()

template<typename TT>
bool SourceXtractor::FitsImageSource::readFitsKeyword ( const std::string & header_keyword,
TT & out_value ) const
inline

Definition at line 97 of file FitsImageSource.h.

References getMetadata(), and SourceXtractor::VariantCast().

Here is the call graph for this function:

◆ saveTile()

◆ setLayer()

void SourceXtractor::FitsImageSource::setLayer ( int layer)

Definition at line 275 of file FitsImageSource.cpp.

References m_current_layer, m_depth, and m_filename.

◆ setMetadata()

void SourceXtractor::FitsImageSource::setMetadata ( const std::string & key,
const MetadataEntry & value )
overridevirtual

◆ switchHdu()

void SourceXtractor::FitsImageSource::switchHdu ( fitsfile * fptr,
int hdu_number ) const
private

Definition at line 258 of file FitsImageSource.cpp.

References m_filename.

Referenced by FitsImageSource(), getImageTile(), saveTile(), and setMetadata().

Member Data Documentation

◆ m_current_layer

int SourceXtractor::FitsImageSource::m_current_layer
private

Definition at line 139 of file FitsImageSource.h.

Referenced by getImageTile(), and setLayer().

◆ m_depth

int SourceXtractor::FitsImageSource::m_depth
private

Definition at line 136 of file FitsImageSource.h.

Referenced by FitsImageSource(), getDepth(), and setLayer().

◆ m_file_manager

std::shared_ptr<FileManager> SourceXtractor::FitsImageSource::m_file_manager
private

Definition at line 129 of file FitsImageSource.h.

Referenced by FitsImageSource(), and FitsImageSource().

◆ m_filename

std::string SourceXtractor::FitsImageSource::m_filename
private

Definition at line 128 of file FitsImageSource.h.

Referenced by FitsImageSource(), FitsImageSource(), getRepr(), setLayer(), and switchHdu().

◆ m_handler

std::shared_ptr<FileHandler> SourceXtractor::FitsImageSource::m_handler
private

◆ m_hdu_number

int SourceXtractor::FitsImageSource::m_hdu_number
private

◆ m_height

int SourceXtractor::FitsImageSource::m_height
private

Definition at line 135 of file FitsImageSource.h.

Referenced by FitsImageSource(), FitsImageSource(), and getHeight().

◆ m_image_type

ImageTile::ImageType SourceXtractor::FitsImageSource::m_image_type
private

◆ m_width

int SourceXtractor::FitsImageSource::m_width
private

Definition at line 134 of file FitsImageSource.h.

Referenced by FitsImageSource(), FitsImageSource(), and getWidth().


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