Skip to content

Commit 39ab589

Browse files
authored
Clarify publication in doc (#177)
1 parent f699c8a commit 39ab589

1 file changed

Lines changed: 1 addition & 53 deletions

File tree

doc/ModulesDevelopment.md

Lines changed: 1 addition & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -42,58 +42,6 @@ The main data flow is represented in blue. Data samples are selected by the Data
4242

4343
An example of a workflow definition which describes the processing steps (_Data Processors_), their inputs and their outputs can be seen in [runBasic.cxx](https://github.com/AliceO2Group/QualityControl/blob/master/Framework/runBasic.cxx). In the QC we define the workflows in files whose names are prefixed with `run`.
4444

45-
<!--
46-
47-
THIS IS OLD STUFF BELOW
48-
49-
Quality Control has been adapted to be used as Data Processor in
50-
[O2 framework](https://github.com/AliceO2Group/AliceO2/tree/dev/Framework/Core#data-processing-layer-in-o2-framework).
51-
Keep in mind, that checkers are not available at this moment.
52-
To add a QC task into workflow:
53-
54-
1. Create your module using SkeletonDPL as a base. Refer to the steps mentioned
55-
in the chapter [Modules development](https://github.com/AliceO2Group/QualityControl#modules-development),
56-
they are the same.
57-
2. Define input data and parameters of your QC Task in .json config file. Use
58-
[Framework/qcTaskDplConfig.json](https://github.com/AliceO2Group/QualityControl/blob/master/Framework/qcTaskDplConfig.json)
59-
as a reference - just update the variables in the section 'Tasks'.
60-
3. Insert following lines in your workflow declaration code. Change the names
61-
accordingly.
62-
```
63-
...
64-
65-
#include "QualityControl/TaskRunnerFactory.h"
66-
#include "QualityControl/TaskRunner.h"
67-
#include "Framework/DataSampling.h"
68-
#include "Framework/runDataProcessing.h"
69-
70-
...
71-
72-
WorkflowSpec defineDataProcessing(ConfigContext const&) {
73-
74-
std::vector<DataProcessorSpec> specs;
75-
...
76-
77-
// A path to your config .json file. In this case, it is a file installed during compilation.
78-
const std::string qcConfigurationSource = std::string("file://") + getenv("QUALITYCONTROL_ROOT") + "/etc/qcTaskDplConfig.json";
79-
// An entry in config file which describes your QC task
80-
const std::string qcTaskName = "skeletonTask";
81-
o2::quality_control::core::TaskRunnerFactory qcFactory;
82-
specs.push_back(qcFactory.create(qcTaskName, qcConfigurationSource));
83-
84-
o2::framework::DataSampling::GenerateInfrastructure(specs, qcConfigurationSource);
85-
86-
return specs;
87-
}
88-
```
89-
4. Compile & run.
90-
91-
In [Framework/src/runTaskDPL.cxx](https://github.com/AliceO2Group/QualityControl/blob/master/Framework/src/runTaskDPL.cxx)
92-
there is an exemplary DPL workflow with QC task. It is compiled to an
93-
executable `taskDPL`.
94-
95-
-->
96-
9745
### Data Sampling
9846

9947
The Data Sampling provides the possibility to sample data in DPL workflows, based on certain conditions ( 5% randomly, when payload is greater than 4234 bytes, etc.). The job of passing the right data is done by a data processor called `Dispatcher`. A desired data stream is specified in the form of Data Sampling Policies, defined in the QC JSON configuration file. Please refer to the main [Data Sampling readme](https://github.com/AliceO2Group/AliceO2/blob/dev/Framework/Core/README.md#data-sampling) for more details.
@@ -245,7 +193,7 @@ You should see the QcTask at qcg-test.cern.ch with an object `Example` updating.
245193

246194
## Modification of a Task
247195

248-
Fill in the methods in RawDataQcTask.cxx. For example, make it send a second histogram.
196+
Fill in the methods in RawDataQcTask.cxx. For example, make it publish a second histogram. Objects must be published only once and they will then be updated automatically every cycle (10 seconds for our example, 1 minute in general).
249197
Once done, recompile it (see section above) and run it. You should see the second object published in the qcg.
250198

251199
TODO give actual steps

0 commit comments

Comments
 (0)