SourceXtractorPlusPlus 1.0.3
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
SourceXtractor::AperturePhotometryTaskFactory Class Reference

#include <AperturePhotometryTaskFactory.h>

Inheritance diagram for SourceXtractor::AperturePhotometryTaskFactory:
Collaboration diagram for SourceXtractor::AperturePhotometryTaskFactory:

Public Member Functions

 AperturePhotometryTaskFactory ()
virtual ~AperturePhotometryTaskFactory ()=default
 Destructor.
void reportConfigDependencies (Euclid::Configuration::ConfigManager &manager) const override
 Registers all the Configuration dependencies.
void configure (Euclid::Configuration::ConfigManager &manager) override
 Method which should initialize the object.
std::shared_ptr< TaskcreateTask (const PropertyId &property_id) const override
 Returns a Task producing a Property corresponding to the given PropertyId.
void registerPropertyInstances (OutputRegistry &) override
Public Member Functions inherited from SourceXtractor::TaskFactory
virtual ~TaskFactory ()=default
 Destructor.
void reportConfigDependencies (Euclid::Configuration::ConfigManager &) const override
 Registers all the Configuration dependencies.
void configure (Euclid::Configuration::ConfigManager &) override
 Method which should initialize the object.
Public Member Functions inherited from SourceXtractor::Configurable
virtual ~Configurable ()=default
 Destructor.

Private Attributes

SeFloat m_magnitude_zero_point
bool m_symmetry_usage
std::map< unsigned, std::vector< float > > m_aperture_config
std::vector< float > m_all_apertures
std::map< unsigned, std::stringm_col_prefix
std::map< unsigned, std::vector< unsigned > > m_apertures_per_output

Detailed Description

The configuration of this plugin can be kind of convoluted, so some clarifications may be needed: We have a set of frames, and each frame has a set of apertures. These set of apertures are aggregated under one single column. So we need to compute the set of apertures per image per source (AperturePhotometry), but we need to gather and group then into multidimensional columns (AperturePhotometryArray). Since there can be more than one column, there can be more than one instance of AperturePhotometryArray, each one corresponding to a column. For instance, we may have 4 frames, so there will be 4 instances of AperturePhotometry. Since they belong to two bands, there will be two columns aperture_r and aperture_g. aperture_r (instance 0) needs to "gather" the apertures for frames 0 and 1, and aperture_g (instance 1) from 2 and 3. Thus, handling AperturePhotometry is easy, but for AperturePhotometryArray (the output), we need to register the converter with two different instances, keeping a map between the instance of AperturePhotometryArray and the instances of AperturePhotometry that are aggregated.

Definition at line 48 of file AperturePhotometryTaskFactory.h.

Constructor & Destructor Documentation

◆ AperturePhotometryTaskFactory()

SourceXtractor::AperturePhotometryTaskFactory::AperturePhotometryTaskFactory ( )
inline

Definition at line 50 of file AperturePhotometryTaskFactory.h.

References m_magnitude_zero_point, and m_symmetry_usage.

◆ ~AperturePhotometryTaskFactory()

virtual SourceXtractor::AperturePhotometryTaskFactory::~AperturePhotometryTaskFactory ( )
virtualdefault

Destructor.

Member Function Documentation

◆ configure()

void SourceXtractor::AperturePhotometryTaskFactory::configure ( Euclid::Configuration::ConfigManager & manager)
overridevirtual

Method which should initialize the object.

The given manager is guaranteed to already be in the initialized state, so all the required Configurations can be accessed using its getConfiguration() method.

Parameters
managerThe manager to get the Configurations from

Implements SourceXtractor::Configurable.

Definition at line 95 of file AperturePhotometryTaskFactory.cpp.

References std::find(), Euclid::Configuration::ConfigManager::getConfiguration(), m_all_apertures, m_aperture_config, m_apertures_per_output, m_col_prefix, m_magnitude_zero_point, and m_symmetry_usage.

Here is the call graph for this function:

◆ createTask()

std::shared_ptr< Task > SourceXtractor::AperturePhotometryTaskFactory::createTask ( const PropertyId & property_id) const
overridevirtual

◆ registerPropertyInstances()

void SourceXtractor::AperturePhotometryTaskFactory::registerPropertyInstances ( OutputRegistry & registry)
overridevirtual

◆ reportConfigDependencies()

void SourceXtractor::AperturePhotometryTaskFactory::reportConfigDependencies ( Euclid::Configuration::ConfigManager & manager) const
overridevirtual

Registers all the Configuration dependencies.

Configurable implementations should implement this method to register to the given ConfigManager (using the registerConfiguration() method) all the Configurations they are going to use

Parameters
managerThe manager to register the dependencies to

Implements SourceXtractor::Configurable.

Definition at line 88 of file AperturePhotometryTaskFactory.cpp.

References Euclid::Configuration::ConfigManager::registerConfiguration().

Here is the call graph for this function:

Member Data Documentation

◆ m_all_apertures

std::vector<float> SourceXtractor::AperturePhotometryTaskFactory::m_all_apertures
private

Definition at line 70 of file AperturePhotometryTaskFactory.h.

Referenced by configure(), and createTask().

◆ m_aperture_config

std::map<unsigned, std::vector<float> > SourceXtractor::AperturePhotometryTaskFactory::m_aperture_config
private

Definition at line 68 of file AperturePhotometryTaskFactory.h.

Referenced by configure(), and createTask().

◆ m_apertures_per_output

std::map<unsigned, std::vector<unsigned> > SourceXtractor::AperturePhotometryTaskFactory::m_apertures_per_output
private

◆ m_col_prefix

std::map<unsigned, std::string> SourceXtractor::AperturePhotometryTaskFactory::m_col_prefix
private

Definition at line 72 of file AperturePhotometryTaskFactory.h.

Referenced by configure(), and registerPropertyInstances().

◆ m_magnitude_zero_point

SeFloat SourceXtractor::AperturePhotometryTaskFactory::m_magnitude_zero_point
private

◆ m_symmetry_usage

bool SourceXtractor::AperturePhotometryTaskFactory::m_symmetry_usage
private

The documentation for this class was generated from the following files: