SourceXtractorPlusPlus  0.8
Please provide a description of the project.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
SEMain Class Reference
Inheritance diagram for SEMain:
[legend]
Collaboration diagram for SEMain:
[legend]

Public Member Functions

 SEMain (const std::string &plugin_path, const std::vector< std::string > &plugin_list)
 
po::options_description getConfigParameters ()
 
std::pair
< po::options_description,
po::positional_options_description > 
defineProgramArguments () override
 Return the arguments that the program accepts. More...
 
void printDefaults ()
 Print a configuration file populated with defaults. More...
 
Elements::ExitCode mainMethod (std::map< std::string, po::variable_value > &args) override
 
- Public Member Functions inherited from Elements::Program
 Program ()=default
 
virtual ~Program ()
 
virtual
boost::program_options::options_description 
defineSpecificProgramOptions ()
 
virtual ExitCode mainMethod (std::map< std::string, boost::program_options::variable_value > &args)=0
 

Static Public Member Functions

template<typename T >
static void writeDefault (std::ostream &out, const po::option_description &opt, const boost::any &default_value)
 Print a simple option. More...
 
template<typename T >
static void writeDefaultMultiple (std::ostream &out, const po::option_description &opt, const boost::any &default_value)
 Print a multiple-value option. More...
 

Private Attributes

std::shared_ptr
< TaskFactoryRegistry
task_factory_registry = std::make_shared<TaskFactoryRegistry>()
 
std::shared_ptr< TaskProvidertask_provider = std::make_shared<TaskProvider>(task_factory_registry)
 
std::shared_ptr< OutputRegistryoutput_registry = std::make_shared<OutputRegistry>()
 
SegmentationFactory segmentation_factory {task_provider}
 
OutputFactory output_factory { output_registry }
 
PluginManager plugin_manager
 
std::shared_ptr< SourceFactorysource_factory
 
std::shared_ptr
< SourceGroupFactory
group_factory
 
PartitionFactory partition_factory {source_factory}
 
GroupingFactory grouping_factory {group_factory}
 
DeblendingFactory deblending_factory {source_factory}
 
MeasurementFactory measurement_factory { output_registry }
 
BackgroundAnalyzerFactory background_level_analyzer_factory {}
 
ProgressReporterFactory progress_printer_factory {}
 
bool config_initialized = false
 
po::options_description config_parameters
 

Detailed Description

Definition at line 132 of file SourceXtractor.cpp.

Constructor & Destructor Documentation

SEMain::SEMain ( const std::string plugin_path,
const std::vector< std::string > &  plugin_list 
)
inline

Definition at line 156 of file SourceXtractor.cpp.

References config_manager_id.

Member Function Documentation

std::pair<po::options_description, po::positional_options_description> SEMain::defineProgramArguments ( )
inlineoverridevirtual

Return the arguments that the program accepts.

Reimplemented from Elements::Program.

Definition at line 191 of file SourceXtractor.cpp.

References std::string::c_str(), DUMP_CONFIG, LIST_OUTPUT_PROPERTIES, PROPERTY_COLUMN_MAPPING, and PROPERTY_COLUMN_MAPPING_ALL.

Here is the call graph for this function:

po::options_description SEMain::getConfigParameters ( )
inline

Return the options that the underyling configuration register accepts This is now separated from defineProgramArguments so printDefaults can access these settings, while ignoring flags that are only used for printing help information (i.e the property list)

Definition at line 163 of file SourceXtractor.cpp.

References config_manager_id, SourceXtractor::CheckImages::getInstance(), and SourceXtractor::CheckImages::reportConfigDependencies().

Here is the call graph for this function:

Elements::ExitCode SEMain::mainMethod ( std::map< std::string, po::variable_value > &  args)
inlineoverride
void SEMain::printDefaults ( )
inline

Print a configuration file populated with defaults.

Definition at line 231 of file SourceXtractor.cpp.

References std::endl().

Here is the call graph for this function:

template<typename T >
static void SEMain::writeDefault ( std::ostream out,
const po::option_description &  opt,
const boost::any &  default_value 
)
inlinestatic

Print a simple option.

Definition at line 213 of file SourceXtractor.cpp.

References std::endl().

Here is the call graph for this function:

template<typename T >
static void SEMain::writeDefaultMultiple ( std::ostream out,
const po::option_description &  opt,
const boost::any &  default_value 
)
inlinestatic

Print a multiple-value option.

Definition at line 219 of file SourceXtractor.cpp.

References std::endl().

Here is the call graph for this function:

Member Data Documentation

BackgroundAnalyzerFactory SEMain::background_level_analyzer_factory {}
private

Definition at line 148 of file SourceXtractor.cpp.

bool SEMain::config_initialized = false
private

Definition at line 151 of file SourceXtractor.cpp.

po::options_description SEMain::config_parameters
private

Definition at line 152 of file SourceXtractor.cpp.

DeblendingFactory SEMain::deblending_factory {source_factory}
private

Definition at line 146 of file SourceXtractor.cpp.

std::shared_ptr<SourceGroupFactory> SEMain::group_factory
private
Initial value:
=
std::make_shared<SourceGroupWithOnDemandPropertiesFactory>(task_provider)

Definition at line 142 of file SourceXtractor.cpp.

GroupingFactory SEMain::grouping_factory {group_factory}
private

Definition at line 145 of file SourceXtractor.cpp.

MeasurementFactory SEMain::measurement_factory { output_registry }
private

Definition at line 147 of file SourceXtractor.cpp.

OutputFactory SEMain::output_factory { output_registry }
private

Definition at line 138 of file SourceXtractor.cpp.

std::shared_ptr<OutputRegistry> SEMain::output_registry = std::make_shared<OutputRegistry>()
private

Definition at line 136 of file SourceXtractor.cpp.

PartitionFactory SEMain::partition_factory {source_factory}
private

Definition at line 144 of file SourceXtractor.cpp.

PluginManager SEMain::plugin_manager
private

Definition at line 139 of file SourceXtractor.cpp.

ProgressReporterFactory SEMain::progress_printer_factory {}
private

Definition at line 149 of file SourceXtractor.cpp.

SegmentationFactory SEMain::segmentation_factory {task_provider}
private

Definition at line 137 of file SourceXtractor.cpp.

std::shared_ptr<SourceFactory> SEMain::source_factory
private
Initial value:
=
std::make_shared<SourceWithOnDemandPropertiesFactory>(task_provider)

Definition at line 140 of file SourceXtractor.cpp.

std::shared_ptr<TaskFactoryRegistry> SEMain::task_factory_registry = std::make_shared<TaskFactoryRegistry>()
private

Definition at line 134 of file SourceXtractor.cpp.

Definition at line 135 of file SourceXtractor.cpp.


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