Project
Loading...
Searching...
No Matches
DIMessages.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_DIMESSAGES_H
12#define O2_DIMESSAGES_H
13
14#include <string>
15#include <cstdint>
16#include <vector>
17#include <boost/optional.hpp>
18
19namespace DIMessages
20{
22 struct Specs {
23 struct Input {
24 std::string binding;
25 std::string sourceChannel;
26 size_t timeslice;
27
28 boost::optional<std::string> origin;
29 boost::optional<std::string> description;
30 boost::optional<uint32_t> subSpec;
31 };
32
33 struct Output {
34 std::string binding;
35 std::string channel;
36 size_t timeslice;
38
39 std::string origin;
40 std::string description;
41 boost::optional<uint32_t> subSpec;
42 };
43
44 struct Forward {
45 std::string binding;
46 size_t timeslice;
48 std::string channel;
49
50 boost::optional<std::string> origin;
51 boost::optional<std::string> description;
52 boost::optional<uint32_t> subSpec;
53 };
54
55 std::vector<Input> inputs;
56 std::vector<Output> outputs;
57 std::vector<Forward> forwards;
58
59 size_t rank;
60 size_t nSlots;
63 };
64
65 std::string name;
66 std::string runId;
68
69 std::string toJson();
70};
71} // namespace DIMessages
72
73#endif // O2_DIMESSAGES_H
boost::optional< std::string > origin
Definition DIMessages.h:50
boost::optional< std::string > description
Definition DIMessages.h:51
boost::optional< uint32_t > subSpec
Definition DIMessages.h:52
boost::optional< std::string > description
Definition DIMessages.h:29
boost::optional< uint32_t > subSpec
Definition DIMessages.h:30
boost::optional< std::string > origin
Definition DIMessages.h:28
boost::optional< uint32_t > subSpec
Definition DIMessages.h:41
std::vector< Output > outputs
Definition DIMessages.h:56
std::vector< Input > inputs
Definition DIMessages.h:55
std::vector< Forward > forwards
Definition DIMessages.h:57