SourceXtractorPlusPlus  0.12
Please provide a description of the project.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PeakValueTaskFactory.h
Go to the documentation of this file.
1 
17 /*
18  * PeakValueTaskFactory.h
19  *
20  * Created on: Feb 9, 2017
21  * Author: mschefer
22  */
23 
24 #ifndef _SEIMPLEMENTATION_PLUGIN_PEAKVALUE_PEAKVALUETASKFACTORY_H_
25 #define _SEIMPLEMENTATION_PLUGIN_PEAKVALUE_PEAKVALUETASKFACTORY_H_
26 
28 
31 
32 
33 namespace SourceXtractor {
34 
36 public:
38 
40  virtual ~PeakValueTaskFactory() = default;
41 
42  // TaskFactory implementation
43  virtual std::shared_ptr<Task> createTask(const PropertyId& property_id) const override {
44  if (property_id == PropertyId::create<PeakValue>()) {
45  return std::make_shared<PeakValueTask>();
46  } else {
47  return nullptr;
48  }
49  }
50 };
51 
52 
53 } /* namespace SourceXtractor */
54 
55 
56 #endif /* _SEIMPLEMENTATION_PLUGIN_PEAKVALUE_PEAKVALUETASKFACTORY_H_ */
virtual std::shared_ptr< Task > createTask(const PropertyId &property_id) const override
Returns a Task producing a Property corresponding to the given PropertyId.
Creates a Task for computing a given property.
Definition: TaskFactory.h:42
virtual ~PeakValueTaskFactory()=default
Destructor.
Identifier used to set and retrieve properties.
Definition: PropertyId.h:40