SourceXtractorPlusPlus  0.14
Please provide a description of the project.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
SourceXtractor::MaskedImage< T, M, Operator > Class Template Reference

#include <MaskedImage.h>

Inheritance diagram for SourceXtractor::MaskedImage< T, M, Operator >:
[legend]
Collaboration diagram for SourceXtractor::MaskedImage< T, M, Operator >:
[legend]

Public Member Functions

virtual ~MaskedImage ()=default
 
std::string getRepr () const final
 Get a string identifying this image in a human readable manner. More...
 
getValue (int x, int y) const final
 Returns the value of the pixel with the coordinates (x,y) More...
 
int getWidth () const final
 Returns the width of the image in pixels. More...
 
int getHeight () const final
 Returns the height of the image in pixels. More...
 
std::shared_ptr< ImageChunk< T > > getChunk (int x, int y, int width, int height) const final
 
- Public Member Functions inherited from SourceXtractor::ImageBase< T >
virtual ~ImageBase ()
 
- Public Member Functions inherited from SourceXtractor::Image< T >
virtual ~Image ()=default
 Destructor. More...
 
getValue (PixelCoordinate pc) const
 
bool isInside (int x, int y) const
 Returns true if the given coordinates are inside the image bounds. More...
 
- Public Member Functions inherited from std::enable_shared_from_this< ImageBase< T > >
enable_shared_from_this (T...args)
 
operator= (T...args)
 
shared_from_this (T...args)
 
~enable_shared_from_this (T...args)
 

Static Public Member Functions

static std::shared_ptr
< MaskedImage< T, M, Operator > > 
create (const std::shared_ptr< Image< T >> &image, const std::shared_ptr< Image< M >> &mask, T replacement, M mask_flag=0x01)
 

Private Member Functions

 MaskedImage (const std::shared_ptr< Image< T >> &image, const std::shared_ptr< Image< M >> &mask, T replacement, M mask_flag)
 

Private Attributes

std::shared_ptr< Image< T > > m_image
 
std::shared_ptr< Image< M > > m_mask
 
m_replacement
 
m_mask_flag
 
Operator< M > m_operator
 

Additional Inherited Members

- Public Types inherited from SourceXtractor::Image< T >
using PixelType = T
 

Detailed Description

template<typename T, typename M, template< typename > class Operator = std::bit_and>
class SourceXtractor::MaskedImage< T, M, Operator >

Mask an image, replacing masked values

Template Parameters
TPixel type of the masked image
MPixel type of the mask
OperatorOperator to apply on the mask pixels. Defaults to bitwise and (&)
Note
The image is masked where the operator evaluates to true on the mask image

Definition at line 45 of file MaskedImage.h.

Constructor & Destructor Documentation

template<typename T , typename M , template< typename > class Operator = std::bit_and>
SourceXtractor::MaskedImage< T, M, Operator >::MaskedImage ( const std::shared_ptr< Image< T >> &  image,
const std::shared_ptr< Image< M >> &  mask,
replacement,
mask_flag 
)
inlineprivate

Definition at line 47 of file MaskedImage.h.

template<typename T , typename M , template< typename > class Operator = std::bit_and>
virtual SourceXtractor::MaskedImage< T, M, Operator >::~MaskedImage ( )
virtualdefault

Member Function Documentation

template<typename T , typename M , template< typename > class Operator = std::bit_and>
static std::shared_ptr<MaskedImage<T, M, Operator> > SourceXtractor::MaskedImage< T, M, Operator >::create ( const std::shared_ptr< Image< T >> &  image,
const std::shared_ptr< Image< M >> &  mask,
replacement,
mask_flag = 0x01 
)
inlinestatic

Create a masked image

Parameters
imageImage to be masked
maskMask
replacementReplace masked pixels with this value
mask_flagIf Operator(mask pixel, mask_flag) is true, this given pixel is replaced
Returns
A new masked image

Definition at line 75 of file MaskedImage.h.

Referenced by SourceXtractor::SEBackgroundLevelAnalyzer::analyzeBackground(), and SourceXtractor::BgDFTConvolutionImageSource::generateTile().

template<typename T , typename M , template< typename > class Operator = std::bit_and>
std::shared_ptr<ImageChunk<T> > SourceXtractor::MaskedImage< T, M, Operator >::getChunk ( int  x,
int  y,
int  width,
int  height 
) const
inlinefinalvirtual
template<typename T , typename M , template< typename > class Operator = std::bit_and>
int SourceXtractor::MaskedImage< T, M, Operator >::getHeight ( ) const
inlinefinalvirtual

Returns the height of the image in pixels.

Implements SourceXtractor::Image< T >.

Definition at line 95 of file MaskedImage.h.

References SourceXtractor::MaskedImage< T, M, Operator >::m_image.

template<typename T , typename M , template< typename > class Operator = std::bit_and>
std::string SourceXtractor::MaskedImage< T, M, Operator >::getRepr ( ) const
inlinefinalvirtual

Get a string identifying this image in a human readable manner.

Implements SourceXtractor::Image< T >.

Definition at line 81 of file MaskedImage.h.

References SourceXtractor::MaskedImage< T, M, Operator >::m_image.

template<typename T , typename M , template< typename > class Operator = std::bit_and>
T SourceXtractor::MaskedImage< T, M, Operator >::getValue ( int  x,
int  y 
) const
inlinefinalvirtual
template<typename T , typename M , template< typename > class Operator = std::bit_and>
int SourceXtractor::MaskedImage< T, M, Operator >::getWidth ( ) const
inlinefinalvirtual

Returns the width of the image in pixels.

Implements SourceXtractor::Image< T >.

Definition at line 91 of file MaskedImage.h.

References SourceXtractor::MaskedImage< T, M, Operator >::m_image.

Member Data Documentation

template<typename T , typename M , template< typename > class Operator = std::bit_and>
std::shared_ptr<Image<T> > SourceXtractor::MaskedImage< T, M, Operator >::m_image
private
template<typename T , typename M , template< typename > class Operator = std::bit_and>
std::shared_ptr<Image<M> > SourceXtractor::MaskedImage< T, M, Operator >::m_mask
private
template<typename T , typename M , template< typename > class Operator = std::bit_and>
M SourceXtractor::MaskedImage< T, M, Operator >::m_mask_flag
private
template<typename T , typename M , template< typename > class Operator = std::bit_and>
Operator<M> SourceXtractor::MaskedImage< T, M, Operator >::m_operator
private
template<typename T , typename M , template< typename > class Operator = std::bit_and>
T SourceXtractor::MaskedImage< T, M, Operator >::m_replacement
private

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