SourceXtractorPlusPlus 1.0.3
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
SourceXtractor::VectorImage< T > Class Template Referencefinal

Image implementation which keeps the pixel values in memory. More...

#include <VectorImage.h>

Inheritance diagram for SourceXtractor::VectorImage< T >:
Collaboration diagram for SourceXtractor::VectorImage< T >:

Public Member Functions

std::string getRepr () const final
 Get a string identifying this image in a human readable manner.
int getHeight () const final
 Returns the height of the image in pixels.
int getWidth () const final
 Returns the width of the image in pixels.
getValue (int x, int y) const
getValue (PixelCoordinate coord) const
void setValue (int x, int y, T value) final
void setValue (PixelCoordinate pc, T value)
T & at (int x, int y)
const T & at (int x, int y) const
void fillValue (T value)
const std::vector< T > & getData () const
std::vector< T > & getData ()
virtual ~VectorImage ()=default
 Destructor.
std::shared_ptr< ImageChunk< T > > getChunk (int x, int y, int width, int height) const override
Public Member Functions inherited from SourceXtractor::Image< T >
virtual ~Image ()=default
 Destructor.
std::shared_ptr< ImageChunk< T > > getChunk (const PixelCoordinate &start, const PixelCoordinate &end) const
bool isInside (int x, int y) const
 Returns true if the given coordinates are inside the image bounds.

Static Public Member Functions

template<typename... Args>
static std::shared_ptr< VectorImage< T > > create (Args &&... args)

Protected Member Functions

 VectorImage (const VectorImage< T > &other)
 VectorImage (VectorImage< T > &&other)=default
 VectorImage (int width, int height)
 VectorImage (int width, int height, std::vector< T > data)
template<typename Iter>
 VectorImage (int width, int height, Iter data_begin, Iter data_end, typename std::enable_if< std::is_base_of< std::input_iterator_tag, typename std::iterator_traits< Iter >::iterator_category >::value and std::is_same< T, typename std::iterator_traits< Iter >::value_type >::value >::type *=0)
 VectorImage (const Image< T > &other_image)
 VectorImage (const std::shared_ptr< const Image< T > > &other_image)

Private Attributes

int m_width
int m_height
std::shared_ptr< std::vector< T > > m_data

Additional Inherited Members

Public Types inherited from SourceXtractor::Image< T >
using PixelType = T
Public Attributes inherited from SourceXtractor::WriteableImage< T >
std::mutex m_write_mutex

Detailed Description

template<typename T>
class SourceXtractor::VectorImage< T >

Image implementation which keeps the pixel values in memory.

The pixel values are kept in a vector. The first element of the vector is the pixel with coordinate (0,0) and the following elements have increasing x and y indices, with the x index (in the width direction) increasing more rapidly. This means the order of the vector elements should be:

(0,0), (1,0), (2,0), ..., (width-1,0), (0,1), (1,1), ..., (width-1,height-1)

Template Parameters
Tthe type of the pixel values

Definition at line 52 of file VectorImage.h.

Constructor & Destructor Documentation

◆ VectorImage() [1/7]

template<typename T>
SourceXtractor::VectorImage< T >::VectorImage ( const VectorImage< T > & other)
inlineprotected

◆ VectorImage() [2/7]

template<typename T>
SourceXtractor::VectorImage< T >::VectorImage ( VectorImage< T > && other)
protecteddefault

◆ VectorImage() [3/7]

template<typename T>
SourceXtractor::VectorImage< T >::VectorImage ( int width,
int height )
inlineprotected

Definition at line 61 of file VectorImage.h.

◆ VectorImage() [4/7]

template<typename T>
SourceXtractor::VectorImage< T >::VectorImage ( int width,
int height,
std::vector< T > data )
inlineprotected

Definition at line 66 of file VectorImage.h.

◆ VectorImage() [5/7]

template<typename T>
template<typename Iter>
SourceXtractor::VectorImage< T >::VectorImage ( int width,
int height,
Iter data_begin,
Iter data_end,
typename std::enable_if< std::is_base_of< std::input_iterator_tag, typename std::iterator_traits< Iter >::iterator_category >::value and std::is_same< T, typename std::iterator_traits< Iter >::value_type >::value >::type * = 0 )
inlineprotected

Definition at line 73 of file VectorImage.h.

◆ VectorImage() [6/7]

template<typename T>
SourceXtractor::VectorImage< T >::VectorImage ( const Image< T > & other_image)
inlineexplicitprotected

Definition at line 83 of file VectorImage.h.

◆ VectorImage() [7/7]

template<typename T>
SourceXtractor::VectorImage< T >::VectorImage ( const std::shared_ptr< const Image< T > > & other_image)
inlineexplicitprotected

Definition at line 95 of file VectorImage.h.

◆ ~VectorImage()

template<typename T>
virtual SourceXtractor::VectorImage< T >::~VectorImage ( )
virtualdefault

Destructor.

Member Function Documentation

◆ at() [1/2]

◆ at() [2/2]

template<typename T>
const T & SourceXtractor::VectorImage< T >::at ( int x,
int y ) const
inline

Definition at line 137 of file VectorImage.h.

◆ create()

template<typename T>
template<typename... Args>
std::shared_ptr< VectorImage< T > > SourceXtractor::VectorImage< T >::create ( Args &&... args)
inlinestatic

Definition at line 100 of file VectorImage.h.

Referenced by SourceXtractor::SimpleBackgroundAnalyzer::analyzeBackground(), BenchConvolution::benchmark(), SourceXtractor::BgConvolutionImageSource::BgConvolutionImageSource(), SourceXtractor::DetectionFrameGroupStampTask::computeProperties(), SourceXtractor::DetectionFrameSourceStampTask::computeProperties(), SourceXtractor::MoffatModelFittingTask::computeProperties(), SourceXtractor::PsfTask::computeProperties(), SourceXtractor::SourcePsfTask::computeProperties(), SourceXtractor::VignetSourceTask::computeProperties(), SourceXtractor::DirectConvolution< T, TPadding >::convolve(), SourceXtractor::FlexibleModelFittingIterativeTask::createDeblendImage(), SourceXtractor::FlexibleModelFittingIterativeTask::createImageCopy(), SourceXtractor::FlexibleModelFittingTask::createImageCopy(), SourceXtractor::FlexibleModelFittingIterativeTask::createWeightImage(), SourceXtractor::FlexibleModelFittingTask::createWeightImage(), ModelFitting::ImageTraits< WriteableInterfaceTypePtr >::factory(), SourceXtractor::PsfPluginConfig::generateGaussianPsf(), BenchBackgroundConvolution::generateImage(), BenchConvolution::generateImage(), SourceXtractor::BgDFTConvolutionImageSource::generateTile(), SourceXtractor::SegmentationConfig::getDefaultFilter(), SourceXtractor::VariablePsf::getPsf(), SourceXtractor::VariablePsfStack::getPsf(), SourceXtractor::ImagePsf::getScaledKernel(), SourceXtractor::ImageMode< T >::ImageMode(), SourceXtractor::ImageTileWithType< T >::ImageTileWithType(), SourceXtractor::SegmentationConfig::loadASCIIFilter(), TestImage::mainMethod(), BenchRendering::measureRasterToImage(), SourceXtractor::NeighbourInfo::NeighbourInfo(), SourceXtractor::MedianFilter< T >::operator()(), SourceXtractor::MultiThresholdPartitionStep::partition(), SourceXtractor::readImage(), SourceXtractor::readPsfEx(), and SourceXtractor::ReplaceUndef().

◆ fillValue()

template<typename T>
void SourceXtractor::VectorImage< T >::fillValue ( T value)
inline

Definition at line 142 of file VectorImage.h.

◆ getChunk()

template<typename T>
std::shared_ptr< ImageChunk< T > > SourceXtractor::VectorImage< T >::getChunk ( int x,
int y,
int width,
int height ) const
inlineoverridevirtual

Implements SourceXtractor::Image< T >.

Definition at line 159 of file VectorImage.h.

◆ getData() [1/2]

template<typename T>
std::vector< T > & SourceXtractor::VectorImage< T >::getData ( )
inline

Definition at line 150 of file VectorImage.h.

◆ getData() [2/2]

template<typename T>
const std::vector< T > & SourceXtractor::VectorImage< T >::getData ( ) const
inline

◆ getHeight()

◆ getRepr()

template<typename T>
std::string SourceXtractor::VectorImage< T >::getRepr ( ) const
inlinefinalvirtual

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

Implements SourceXtractor::Image< T >.

Definition at line 104 of file VectorImage.h.

◆ getValue() [1/2]

◆ getValue() [2/2]

template<typename T>
T SourceXtractor::VectorImage< T >::getValue ( PixelCoordinate coord) const
inline

Definition at line 120 of file VectorImage.h.

◆ getWidth()

◆ setValue() [1/2]

◆ setValue() [2/2]

template<typename T>
void SourceXtractor::VectorImage< T >::setValue ( PixelCoordinate pc,
T value )
inline

Definition at line 128 of file VectorImage.h.

Member Data Documentation

◆ m_data

template<typename T>
std::shared_ptr<std::vector<T> > SourceXtractor::VectorImage< T >::m_data
private

Definition at line 167 of file VectorImage.h.

◆ m_height

template<typename T>
int SourceXtractor::VectorImage< T >::m_height
private

Definition at line 166 of file VectorImage.h.

◆ m_width

template<typename T>
int SourceXtractor::VectorImage< T >::m_width
private

Definition at line 165 of file VectorImage.h.


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