SourceXtractorPlusPlus
0.14
Please provide a description of the project.
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
SEFramework
src
lib
Pipeline
Deblending.cpp
Go to the documentation of this file.
1
23
#include "
SEFramework/Pipeline/Deblending.h
"
24
25
namespace
SourceXtractor {
26
27
Deblending::Deblending
(
std::vector
<
std::shared_ptr<DeblendStep>
> deblend_steps)
28
: m_deblend_steps(std::
move
(deblend_steps)) {
29
}
30
31
void
Deblending::handleMessage
(
const
std::shared_ptr<SourceGroupInterface>
& group) {
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
std::set<PropertyId>
Deblending::requiredProperties
()
const
{
45
std::set<PropertyId>
properties;
46
for
(
auto
& step :
m_deblend_steps
) {
47
auto
step_props = step->requiredProperties();
48
std::copy
(step_props.begin(), step_props.end(),
std::inserter
(properties, properties.
end
()));
49
}
50
return
properties;
51
}
52
53
}
// SEFramework namespace
std::shared_ptr
std::copy
T copy(T...args)
SourceXtractor::Observable< std::shared_ptr< SourceGroupInterface > >::notifyObservers
void notifyObservers(const std::shared_ptr< SourceGroupInterface > &message) const
Definition:
Observable.h:71
SourceXtractor::Deblending::handleMessage
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
SourceXtractor::Deblending::m_deblend_steps
std::vector< std::shared_ptr< DeblendStep > > m_deblend_steps
Definition:
Deblending.h:74
SourceXtractor::Deblending::requiredProperties
std::set< PropertyId > requiredProperties() const
Returns the set of required properties to compute the deblending.
Definition:
Deblending.cpp:44
std::set::end
T end(T...args)
SourceXtractor::Deblending::Deblending
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
std::move
T move(T...args)
Deblending.h
std::set
STL class.
std::vector
STL class.
std::inserter
T inserter(T...args)
Generated by
1.8.5