SourceXtractorPlusPlus
0.15
Please provide a description of the project.
SEImplementation
src
lib
Plugin
Vignet
VignetTaskFactory.cpp
Go to the documentation of this file.
1
25
#include "
SEImplementation/Configuration/MeasurementImageConfig.h
"
26
#include "
SEImplementation/Plugin/Vignet/VignetTaskFactory.h
"
27
#include "
SEImplementation/Plugin/Vignet/VignetConfig.h
"
28
#include "
SEImplementation/Plugin/Vignet/Vignet.h
"
29
#include "
SEImplementation/Plugin/Vignet/VignetArray.h
"
30
#include "
SEImplementation/Plugin/Vignet/VignetSourceTask.h
"
31
#include "
SEImplementation/Plugin/Vignet/VignetArraySourceTask.h
"
32
33
namespace
SourceXtractor
{
34
35
void
VignetTaskFactory::reportConfigDependencies
(
Euclid::Configuration::ConfigManager
& manager)
const
{
36
manager.
registerConfiguration
<
VignetConfig
>();
37
}
38
39
void
VignetTaskFactory::configure
(
Euclid::Configuration::ConfigManager
& manager) {
40
auto
vignet_config = manager.
getConfiguration
<
VignetConfig
>();
41
m_vignet_size
= vignet_config.getVignetSize();
42
m_vignet_default_pixval
= vignet_config.getVignetDefaultPixval();
43
44
auto
& measurement_config = manager.
getConfiguration
<
MeasurementImageConfig
>();
45
const
auto
& image_infos = measurement_config.
getImageInfos
();
46
47
std::map<std::string, unsigned>
pos_in_group;
48
49
for
(
size_t
i = 0; i < image_infos.size(); ++i) {
50
m_images
.
push_back
(image_infos[i].m_id);
51
}
52
}
53
54
std::shared_ptr<Task>
VignetTaskFactory::createTask
(
const
PropertyId
& property_id)
const
{
55
if
(property_id.
getTypeId
() ==
typeid
(
Vignet
)) {
56
return
std::make_shared<VignetSourceTask>(property_id.
getIndex
(),
m_vignet_size
,
m_vignet_default_pixval
);
57
}
58
else
if
(property_id == PropertyId::create<VignetArray>()) {
59
return
std::make_shared<VignetArraySourceTask>(
m_images
);
60
}
61
return
nullptr
;
62
}
63
64
}
// end of namespace SourceXtractor
65
SourceXtractor::VignetTaskFactory::m_vignet_default_pixval
double m_vignet_default_pixval
Definition:
VignetTaskFactory.h:46
Euclid::Configuration::ConfigManager::registerConfiguration
void registerConfiguration()
SourceXtractor::VignetTaskFactory::m_images
std::vector< unsigned > m_images
Definition:
VignetTaskFactory.h:47
std::shared_ptr
STL class.
Euclid::Configuration::ConfigManager
SourceXtractor::MeasurementImageConfig
Definition:
MeasurementImageConfig.h:37
Vignet.h
VignetArray.h
VignetSourceTask.h
SourceXtractor::PropertyId::getTypeId
std::type_index getTypeId() const
Definition:
PropertyId.h:66
Euclid::Configuration::ConfigManager::getConfiguration
T & getConfiguration()
SourceXtractor::VignetConfig
Definition:
VignetConfig.h:30
SourceXtractor::Vignet
Definition:
Vignet.h:33
SourceXtractor::MeasurementImageConfig::getImageInfos
const std::vector< MeasurementImageInfo > & getImageInfos() const
Definition:
MeasurementImageConfig.h:70
std::vector::push_back
T push_back(T... args)
SourceXtractor::PropertyId
Identifier used to set and retrieve properties.
Definition:
PropertyId.h:40
SourceXtractor
Definition:
Aperture.h:30
VignetArraySourceTask.h
MeasurementImageConfig.h
VignetConfig.h
std::map
STL class.
SourceXtractor::PropertyId::getIndex
unsigned int getIndex() const
Definition:
PropertyId.h:70
SourceXtractor::VignetTaskFactory::createTask
std::shared_ptr< Task > createTask(const PropertyId &property_id) const override
Returns a Task producing a Property corresponding to the given PropertyId.
Definition:
VignetTaskFactory.cpp:54
VignetTaskFactory.h
SourceXtractor::VignetTaskFactory::m_vignet_size
std::array< int, 2 > m_vignet_size
Definition:
VignetTaskFactory.h:45
SourceXtractor::VignetTaskFactory::reportConfigDependencies
void reportConfigDependencies(Euclid::Configuration::ConfigManager &manager) const override
Registers all the Configuration dependencies.
Definition:
VignetTaskFactory.cpp:35
SourceXtractor::VignetTaskFactory::configure
void configure(Euclid::Configuration::ConfigManager &manager) override
Method which should initialize the object.
Definition:
VignetTaskFactory.cpp:39
Generated by
1.8.20