SourceXtractorPlusPlus  0.10
Please provide a description of the project.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Deblending.cpp
Go to the documentation of this file.
1 
24 
25 namespace SourceXtractor {
26 
28  : m_deblend_steps(std::move(deblend_steps)) {
29 }
30 
32 
33  // Applies every DeblendStep to the SourceGroup
34  for (auto& step : m_deblend_steps) {
35  step->deblend(*group);
36  }
37 
38  // If the SourceGroup still contains sources, we notify the observers
39  if (group->begin() != group->end()) {
40  notifyObservers(group);
41  }
42 }
43 
44 } // SEFramework namespace
void notifyObservers(const std::shared_ptr< SourceGroupInterface > &message) const
Definition: Observable.h:71
virtual void handleMessage(const std::shared_ptr< SourceGroupInterface > &group) override
Handles a new SourceGroup, applies the DeblendSteps and then notifies the observers with the result...
Definition: Deblending.cpp:31
std::vector< std::shared_ptr< DeblendStep > > m_deblend_steps
Definition: Deblending.h:68
Deblending(std::vector< std::shared_ptr< DeblendStep >> deblend_steps)
Constructor - takes a vector of DeblendStep to be applied, in order, to every SourceGroup.
Definition: Deblending.cpp:27
T move(T...args)
STL class.