QualityControl  1.5.1
O2 Data Quality Control Framework
TaskFactory.h
Go to the documentation of this file.
1 // Copyright CERN and copyright holders of ALICE O2. This software is
2 // distributed under the terms of the GNU General Public License v3 (GPL
3 // Version 3), copied verbatim in the file "COPYING".
4 //
5 // See http://alice-o2.web.cern.ch/license for full licensing information.
6 //
7 // In applying this license CERN does not waive the privileges and immunities
8 // granted to it by virtue of its status as an Intergovernmental Organization
9 // or submit itself to any jurisdiction.
10 
15 
16 #ifndef QC_CORE_TASKFACTORY_H
17 #define QC_CORE_TASKFACTORY_H
18 
19 // STL
20 #include <memory>
21 // QC
24 
26 {
27 
28 class TaskInterface;
29 class ObjectsManager;
30 
36 {
37  public:
38  TaskFactory() = default;
39  virtual ~TaskFactory() = default;
40 
45  TaskInterface* create(TaskConfig& taskConfig, std::shared_ptr<ObjectsManager> objectsManager);
46 };
47 
48 } // namespace o2::quality_control::core
49 
50 #endif // QC_CORE_TASKFACTORY_H
Skeleton of a QC task.
Definition: TaskInterface.h:53
Container for the configuration of a Task.
Definition: TaskConfig.h:26
These methods can be used to build a complex processing topology. It spawns 3 separate dummy processi...
Definition: Activity.h:19
Factory in charge of creating tasks.
Definition: TaskFactory.h:35
TaskInterface * create(TaskConfig &taskConfig, std::shared_ptr< ObjectsManager > objectsManager)
Create a new instance of a TaskInterface. The TaskInterface actual class is decided based on the para...
Definition: TaskFactory.cxx:24