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

Performs a number of steps on a SourceGroup that can add or remove Sources for deblending the group. More...

#include <Deblending.h>

Inheritance diagram for SourceXtractor::Deblending:
Collaboration diagram for SourceXtractor::Deblending:

Public Member Functions

virtual ~Deblending ()=default
 Destructor.
 Deblending (std::vector< std::shared_ptr< DeblendStep > > deblend_steps)
 Constructor - takes a vector of DeblendStep to be applied, in order, to every SourceGroup.
void receiveSource (std::unique_ptr< SourceGroupInterface > group) override
 Handles a new SourceGroup, applies the DeblendSteps and then notifies the observers with the result.
void receiveProcessSignal (const ProcessSourcesEvent &event) override
std::set< PropertyIdrequiredProperties () const
 Returns the set of required properties to compute the deblending.
Public Member Functions inherited from SourceXtractor::PipelineReceiver< SourceGroupInterface >
virtual ~PipelineReceiver ()=default
Public Member Functions inherited from SourceXtractor::PipelineEmitter< SourceGroupInterface >
 ~PipelineEmitter () override=default
void setNextStage (std::shared_ptr< PipelineReceiver< SourceGroupInterface > > next)
Public Member Functions inherited from SourceXtractor::Observable< SourceGroupInterface >
virtual ~Observable ()=default
 Destructor.
virtual void addObserver (std::shared_ptr< Observer< SourceGroupInterface > > observer)
 Adds an Observer that will be notified when notify Observers is called.
virtual void removeObserver (std::shared_ptr< Observer< SourceGroupInterface > > observer)
 Removes a previously added Observer from the list of Observers to notify.

Private Attributes

std::vector< std::shared_ptr< DeblendStep > > m_deblend_steps

Additional Inherited Members

Protected Member Functions inherited from SourceXtractor::PipelineEmitter< SourceGroupInterface >
void sendSource (std::unique_ptr< SourceGroupInterface > source) const
void sendProcessSignal (const ProcessSourcesEvent &event) const
Protected Member Functions inherited from SourceXtractor::Observable< SourceGroupInterface >
void notifyObservers (const SourceGroupInterface &message) const

Detailed Description

Performs a number of steps on a SourceGroup that can add or remove Sources for deblending the group.

Definition at line 56 of file Deblending.h.

Constructor & Destructor Documentation

◆ ~Deblending()

virtual SourceXtractor::Deblending::~Deblending ( )
virtualdefault

Destructor.

◆ Deblending()

SourceXtractor::Deblending::Deblending ( std::vector< std::shared_ptr< DeblendStep > > deblend_steps)
explicit

Constructor - takes a vector of DeblendStep to be applied, in order, to every SourceGroup.

Definition at line 27 of file Deblending.cpp.

References m_deblend_steps, and std::move().

Here is the call graph for this function:

Member Function Documentation

◆ receiveProcessSignal()

void SourceXtractor::Deblending::receiveProcessSignal ( const ProcessSourcesEvent & event)
overridevirtual

Receive a signal to process sources when grouping

Parameters
event

Implements SourceXtractor::PipelineReceiver< SourceGroupInterface >.

Definition at line 53 of file Deblending.cpp.

References SourceXtractor::PipelineEmitter< SourceGroupInterface >::sendProcessSignal().

Here is the call graph for this function:

◆ receiveSource()

void SourceXtractor::Deblending::receiveSource ( std::unique_ptr< SourceGroupInterface > group)
overridevirtual

Handles a new SourceGroup, applies the DeblendSteps and then notifies the observers with the result.

Implements SourceXtractor::PipelineReceiver< SourceGroupInterface >.

Definition at line 31 of file Deblending.cpp.

References m_deblend_steps, std::move(), and SourceXtractor::PipelineEmitter< SourceGroupInterface >::sendSource().

Here is the call graph for this function:

◆ requiredProperties()

std::set< PropertyId > SourceXtractor::Deblending::requiredProperties ( ) const

Returns the set of required properties to compute the deblending.

Definition at line 44 of file Deblending.cpp.

References std::copy(), std::set< K >::end(), std::inserter(), and m_deblend_steps.

Here is the call graph for this function:

Member Data Documentation

◆ m_deblend_steps

std::vector<std::shared_ptr<DeblendStep> > SourceXtractor::Deblending::m_deblend_steps
private

Definition at line 75 of file Deblending.h.

Referenced by Deblending(), receiveSource(), and requiredProperties().


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