SourceXtractorPlusPlus  0.15
Please provide a description of the project.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CoreThresholdPartitionTaskFactory.h
Go to the documentation of this file.
1 
23 #ifndef _SEIMPLEMENTATION_PLUGIN_CORETHRESHOLDTASKFACTORY_H_
24 #define _SEIMPLEMENTATION_PLUGIN_CORETHRESHOLDTASKFACTORY_H_
25 
29 
30 namespace SourceXtractor {
32 public:
34  virtual ~CoreThresholdPartitionTaskFactory() = default;
35 
38  };
39 
41  auto snr_level_config = manager.getConfiguration<CoreThresholdPartitionConfig>();
42  m_core_threshold = snr_level_config.getCoreThreshold();
43  };
44 
45  // TaskFactory implementation
46  virtual std::shared_ptr<Task> createTask(const PropertyId& property_id) const {
47  if (property_id == PropertyId::create<NCorePixel>()) {
48  return std::make_shared<CoreThresholdPartitionTask>(m_core_threshold);
49  }
50  else{
51  return nullptr;
52  }
53  }
54 
55 private:
57 }; // end of CoreThresholdPartitionTaskFactory class
58 } // namespace SExtractor
59 #endif /* _SEIMPLEMENTATION_PLUGIN_CORETHRESHOLDTASKFACTORY_H_ */
void configure(Euclid::Configuration::ConfigManager &manager)
Method which should initialize the object.
virtual std::shared_ptr< Task > createTask(const PropertyId &property_id) const
Returns a Task producing a Property corresponding to the given PropertyId.
void reportConfigDependencies(Euclid::Configuration::ConfigManager &manager) const
Registers all the Configuration dependencies.
Creates a Task for computing a given property.
Definition: TaskFactory.h:42
Identifier used to set and retrieve properties.
Definition: PropertyId.h:40