SourceXtractorPlusPlus
1.0.3
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
SEImplementation
src
lib
Configuration
MinAreaPartitionConfig.cpp
Go to the documentation of this file.
1
17
/*
18
* @file MinAreaPartitionConfig.cpp
19
* @author nikoapos
20
*/
21
22
#include "
SEImplementation/Configuration/MinAreaPartitionConfig.h
"
23
#include "
SEImplementation/Configuration/PartitionStepConfig.h
"
24
#include "
SEImplementation/Configuration/DetectionFrameConfig.h
"
25
26
#include "
SEImplementation/Partition/MinAreaPartitionStep.h
"
27
28
using namespace
Euclid::Configuration
;
29
namespace
po
=
boost::program_options
;
30
31
namespace
SourceXtractor
{
32
33
static
const
std::string
DETECT_MINAREA
{
"detection-minimum-area"
};
34
35
MinAreaPartitionConfig::MinAreaPartitionConfig
(
long
manager_id) :
Configuration
(manager_id) {
36
declareDependency<PartitionStepConfig>
();
37
declareDependency<DetectionFrameConfig>
();
38
}
39
40
auto
MinAreaPartitionConfig::getProgramOptions
() ->
std::map<std::string, OptionDescriptionList>
{
41
return
{ {
"Extraction"
, {
42
{
DETECT_MINAREA
.c_str(), po::value<int>()->default_value(3),
"min. # of pixels above threshold"
}
43
}}};
44
}
45
46
void
MinAreaPartitionConfig::initialize
(
const
UserValues
& args) {
47
if
(
getDependency<DetectionFrameConfig>
().getDetectionFrames().size() > 0) {
48
if
(args.
count
(
DETECT_MINAREA
) != 0) {
49
auto
min_pixel_count = args.
at
(
DETECT_MINAREA
).as<
int
>();
50
getDependency<PartitionStepConfig>
().addPartitionStepCreator(
51
[min_pixel_count](
std::shared_ptr<SourceFactory>
) {
52
return
std::make_shared<MinAreaPartitionStep>
(min_pixel_count);
53
}
54
);
55
}
56
}
57
}
58
59
}
// SourceXtractor namespace
DetectionFrameConfig.h
MinAreaPartitionConfig.h
MinAreaPartitionStep.h
PartitionStepConfig.h
std::map::at
T at(T... args)
std::string
Euclid::Configuration::Configuration::declareDependency
void declareDependency()
Euclid::Configuration::Configuration::Configuration
Configuration(long manager_id)
Euclid::Configuration::Configuration::UserValues
std::map< std::string, boost::program_options::variable_value > UserValues
Euclid::Configuration::Configuration::getDependency
T & getDependency()
SourceXtractor::MinAreaPartitionConfig::MinAreaPartitionConfig
MinAreaPartitionConfig(long manager_id)
Definition
MinAreaPartitionConfig.cpp:35
SourceXtractor::MinAreaPartitionConfig::initialize
void initialize(const UserValues &args) override
Definition
MinAreaPartitionConfig.cpp:46
SourceXtractor::MinAreaPartitionConfig::getProgramOptions
std::map< std::string, OptionDescriptionList > getProgramOptions() override
Definition
MinAreaPartitionConfig.cpp:40
std::map::count
T count(T... args)
std::make_shared
T make_shared(T... args)
std::map
Euclid::Configuration
SourceXtractor
Definition
Aperture.h:30
SourceXtractor::DETECT_MINAREA
static const std::string DETECT_MINAREA
Definition
MinAreaPartitionConfig.cpp:33
boost::program_options
std::shared_ptr
Generated by
1.15.0