Project
Loading...
Searching...
No Matches
AnalysisSupportHelpers.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11#ifndef O2_FRAMEWORK_ANALYSISSUPPORTHELPERS_H_
12#define O2_FRAMEWORK_ANALYSISSUPPORTHELPERS_H_
13
15#include "Framework/InputSpec.h"
18#include "Headers/DataHeader.h"
19#include <array>
20
21namespace o2::framework
22{
23static constexpr std::array<header::DataOrigin, 3> AODOrigins{header::DataOrigin{"AOD"}, header::DataOrigin{"AOD1"}, header::DataOrigin{"AOD2"}};
24static constexpr std::array<header::DataOrigin, 5> extendedAODOrigins{header::DataOrigin{"AOD"}, header::DataOrigin{"AOD1"}, header::DataOrigin{"AOD2"}, header::DataOrigin{"DYN"}, header::DataOrigin{"AMD"}};
25static constexpr std::array<header::DataOrigin, 4> writableAODOrigins{header::DataOrigin{"AOD"}, header::DataOrigin{"AOD1"}, header::DataOrigin{"AOD2"}, header::DataOrigin{"DYN"}};
26
27class DataOutputDirector;
28class ConfigContext;
29
30// Helper class to be moved in the AnalysisSupport plugin at some point
35 static void addMissingOutputsToReader(std::vector<OutputSpec> const& providedOutputs,
36 std::vector<InputSpec> const& requestedInputs,
37 DataProcessorSpec& publisher);
38 static void addMissingOutputsToSpawner(std::vector<OutputSpec> const& providedSpecials,
39 std::vector<InputSpec> const& requestedSpecials,
40 std::vector<InputSpec>& requestedAODs,
41 DataProcessorSpec& publisher);
42 static void addMissingOutputsToBuilder(std::vector<InputSpec> const& requestedSpecials,
43 std::vector<InputSpec>& requestedAODs,
44 std::vector<InputSpec>& requestedDYNs,
45 DataProcessorSpec& publisher);
46
53 static std::shared_ptr<DataOutputDirector> getDataOutputDirector(ConfigContext const& ctx);
54};
55
56}; // namespace o2::framework
57
58#endif // O2_FRAMEWORK_ANALYSISSUPPORTHELPERS_H_
Defining PrimaryVertex explicitly as messageable.
Definition TFIDInfo.h:20
Descriptor< gSizeDataOriginString > DataOrigin
Definition DataHeader.h:550
static void addMissingOutputsToBuilder(std::vector< InputSpec > const &requestedSpecials, std::vector< InputSpec > &requestedAODs, std::vector< InputSpec > &requestedDYNs, DataProcessorSpec &publisher)
static std::shared_ptr< DataOutputDirector > getDataOutputDirector(ConfigContext const &ctx)
Get the data director.
static void addMissingOutputsToReader(std::vector< OutputSpec > const &providedOutputs, std::vector< InputSpec > const &requestedInputs, DataProcessorSpec &publisher)
static void addMissingOutputsToSpawner(std::vector< OutputSpec > const &providedSpecials, std::vector< InputSpec > const &requestedSpecials, std::vector< InputSpec > &requestedAODs, DataProcessorSpec &publisher)
static DataProcessorSpec getGlobalAODSink(ConfigContext const &)
writes inputs of kind AOD to file
static DataProcessorSpec getOutputObjHistSink(ConfigContext const &)