Project
Loading...
Searching...
No Matches
Utils.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
16
17#ifndef UTILS_H
18#define UTILS_H
19
22
23namespace o2f = o2::framework;
24
25namespace o2
26{
27namespace workflows
28{
29//
30o2f::Output getOutput(const o2f::OutputSpec outputSpec);
31std::shared_ptr<std::vector<o2f::Output>> getOutputList(const o2f::Outputs outputSpecs);
32
33// Broadcaster implementations
34o2f::DataProcessorSpec defineBroadcaster(std::string devName, o2f::InputSpec usrInput, o2f::Outputs usrOutputs,
35 std::function<size_t(o2f::DataRef)> const func);
36o2f::DataProcessorSpec defineBroadcaster(std::string devName, o2f::InputSpec usrInput, o2f::Outputs usrOutputs,
37 size_t fixMsgSize);
38o2f::DataProcessorSpec defineBroadcaster(std::string devName, o2f::InputSpec usrInput, o2f::Outputs usrOutputs);
39
41// Merger implementations
42o2f::DataProcessorSpec defineMerger(std::string devName, o2f::Inputs usrInputs, o2f::OutputSpec usrOutput,
43 std::function<void(OutputBuffer, const o2f::DataRef)> const mergerFunc);
44o2f::DataProcessorSpec defineMerger(std::string devName, o2f::Inputs usrInputs, o2f::OutputSpec usrOutput);
45
46// Splitter implementation
47o2f::DataProcessorSpec defineRouter(std::string devName, o2f::Inputs usrInput, o2f::Outputs usrOutputs,
48 std::function<size_t(const o2f::DataRef)> const mappingFunc);
49
50// Gatherer implementation
51o2f::DataProcessorSpec defineGatherer(std::string devName, o2f::Inputs usrInputs, o2f::OutputSpec usrOutput);
52
53} // namespace workflows
54} // namespace o2
55
56#endif // UTILS_H
GLenum func
Definition glcorearb.h:778
Defining PrimaryVertex explicitly as messageable.
Definition TFIDInfo.h:20
std::vector< InputSpec > Inputs
std::vector< OutputSpec > Outputs
std::vector< T, o2::pmr::polymorphic_allocator< T > > vector
o2f::Output getOutput(const o2f::OutputSpec outputSpec)
Definition Utils.cxx:28
o2f::DataProcessorSpec defineRouter(std::string devName, o2f::Inputs usrInput, o2f::Outputs usrOutputs, std::function< size_t(const o2f::DataRef)> const mappingFunc)
std::shared_ptr< std::vector< o2f::Output > > getOutputList(const o2f::Outputs outputSpecs)
Definition Utils.cxx:36
o2f::DataProcessorSpec defineMerger(std::string devName, o2f::Inputs usrInputs, o2f::OutputSpec usrOutput, std::function< void(OutputBuffer, const o2f::DataRef)> const mergerFunc)
o2f::DataProcessorSpec defineBroadcaster(std::string devName, o2f::InputSpec usrInput, o2f::Outputs usrOutputs, std::function< size_t(o2f::DataRef)> const func)
o2f::DataProcessorSpec defineGatherer(std::string devName, o2f::Inputs usrInputs, o2f::OutputSpec usrOutput)
o2::pmr::vector< char > OutputBuffer
Definition Utils.h:40
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...