SourceXtractorPlusPlus
1.0.3
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
SEImplementation
src
lib
Plugin
ReferenceCoordinates
ReferenceCoordinatesTaskFactory.cpp
Go to the documentation of this file.
1
17
18
19
#include "
SEImplementation/Configuration/DetectionImageConfig.h
"
20
21
#include "
SEImplementation/Plugin/ReferenceCoordinates/ReferenceCoordinates.h
"
22
#include "
SEImplementation/Plugin/ReferenceCoordinates/ReferenceCoordinatesTask.h
"
23
#include "
SEImplementation/Plugin/ReferenceCoordinates/ReferenceCoordinatesTaskFactory.h
"
24
25
using namespace
Euclid::Configuration
;
26
27
namespace
SourceXtractor
{
28
29
void
ReferenceCoordinatesTaskFactory::reportConfigDependencies
(
Euclid::Configuration::ConfigManager
& manager)
const
{
30
manager.
registerConfiguration
<
DetectionImageConfig
>();
31
}
32
33
void
ReferenceCoordinatesTaskFactory::configure
(
Euclid::Configuration::ConfigManager
& manager) {
34
auto
& detection_image_config = manager.
getConfiguration
<
DetectionImageConfig
>();
35
if
(detection_image_config.isReferenceImage()) {
36
m_coordinate_system
= detection_image_config.getCoordinateSystem();
37
}
38
}
39
40
std::shared_ptr<Task>
ReferenceCoordinatesTaskFactory::createTask
(
const
PropertyId
& property_id)
const
{
41
if
(property_id.
getTypeId
() ==
PropertyId::create<ReferenceCoordinates>
().getTypeId()) {
42
return
std::make_shared<ReferenceCoordinatesTask>
(property_id.
getIndex
(),
m_coordinate_system
);
43
}
else
{
44
return
nullptr
;
45
}
46
}
47
48
}
// SEImplementation namespace
49
50
51
52
DetectionImageConfig.h
ReferenceCoordinatesTaskFactory.h
ReferenceCoordinatesTask.h
ReferenceCoordinates.h
Euclid::Configuration::ConfigManager
Euclid::Configuration::ConfigManager::registerConfiguration
void registerConfiguration()
Euclid::Configuration::ConfigManager::getConfiguration
T & getConfiguration()
SourceXtractor::DetectionImageConfig
Provides the detection image.
Definition
DetectionImageConfig.h:38
SourceXtractor::PropertyId
Identifier used to set and retrieve properties.
Definition
PropertyId.h:40
SourceXtractor::PropertyId::create
static PropertyId create(unsigned int index=0)
Definition
PropertyId.h:45
SourceXtractor::PropertyId::getIndex
unsigned int getIndex() const
Definition
PropertyId.h:70
SourceXtractor::PropertyId::getTypeId
std::type_index getTypeId() const
Definition
PropertyId.h:66
SourceXtractor::ReferenceCoordinatesTaskFactory::configure
void configure(Euclid::Configuration::ConfigManager &manager) override
Method which should initialize the object.
Definition
ReferenceCoordinatesTaskFactory.cpp:33
SourceXtractor::ReferenceCoordinatesTaskFactory::m_coordinate_system
std::shared_ptr< CoordinateSystem > m_coordinate_system
Definition
ReferenceCoordinatesTaskFactory.h:47
SourceXtractor::ReferenceCoordinatesTaskFactory::reportConfigDependencies
void reportConfigDependencies(Euclid::Configuration::ConfigManager &manager) const override
Registers all the Configuration dependencies.
Definition
ReferenceCoordinatesTaskFactory.cpp:29
SourceXtractor::ReferenceCoordinatesTaskFactory::createTask
std::shared_ptr< Task > createTask(const PropertyId &property_id) const override
Returns a Task producing a Property corresponding to the given PropertyId.
Definition
ReferenceCoordinatesTaskFactory.cpp:40
std::make_shared
T make_shared(T... args)
Euclid::Configuration
SourceXtractor
Definition
Aperture.h:30
std::shared_ptr
Generated by
1.14.0