SourceXtractorPlusPlus
0.8
Please provide a description of the project.
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
SEFramework
SEFramework
Task
TaskFactory.h
Go to the documentation of this file.
1
23
#ifndef _SEFRAMEWORK_TASK_TASKFACTORY_H
24
#define _SEFRAMEWORK_TASK_TASKFACTORY_H
25
26
#include <vector>
27
#include <memory>
28
29
#include "
SEFramework/Property/PropertyId.h
"
30
#include "
SEFramework/Task/Task.h
"
31
#include "
SEFramework/Configuration/Configurable.h
"
32
#include "
SEFramework/Output/OutputRegistry.h
"
33
34
namespace
SourceXtractor {
35
42
class
TaskFactory
:
public
Configurable
{
43
44
public
:
45
47
virtual
~TaskFactory
() =
default
;
48
50
virtual
std::shared_ptr<Task>
createTask
(
const
PropertyId
& property_id)
const
= 0;
51
52
// Provides a default implementation of the Configurable interface that does nothing
53
void
reportConfigDependencies
(
Euclid::Configuration::ConfigManager
&)
const override
{}
54
void
configure
(
Euclid::Configuration::ConfigManager
&)
override
{}
55
56
virtual
void
registerPropertyInstances
(
OutputRegistry
&) {
57
// By default do nothing
58
}
59
60
private
:
61
62
};
/* End of TaskFactory class */
63
64
}
/* namespace SourceXtractor */
65
66
67
#endif
SourceXtractor::TaskFactory::createTask
virtual std::shared_ptr< Task > createTask(const PropertyId &property_id) const =0
Returns a Task producing a Property corresponding to the given PropertyId.
std::shared_ptr
SourceXtractor::OutputRegistry
Definition:
OutputRegistry.h:36
SourceXtractor::Configurable
Interface of objects which can be configured.
Definition:
Configurable.h:37
Euclid::Configuration::ConfigManager
PropertyId.h
SourceXtractor::TaskFactory
Creates a Task for computing a given property.
Definition:
TaskFactory.h:42
SourceXtractor::PropertyId
Identifier used to set and retrieve properties.
Definition:
PropertyId.h:40
OutputRegistry.h
SourceXtractor::TaskFactory::reportConfigDependencies
void reportConfigDependencies(Euclid::Configuration::ConfigManager &) const override
Registers all the Configuration dependencies.
Definition:
TaskFactory.h:53
Task.h
SourceXtractor::TaskFactory::configure
void configure(Euclid::Configuration::ConfigManager &) override
Method which should initialize the object.
Definition:
TaskFactory.h:54
SourceXtractor::TaskFactory::registerPropertyInstances
virtual void registerPropertyInstances(OutputRegistry &)
Definition:
TaskFactory.h:56
Configurable.h
SourceXtractor::TaskFactory::~TaskFactory
virtual ~TaskFactory()=default
Destructor.
Generated by
1.8.5