63 std::vector<InputSpec> inputspecs = {
64 InputSpec{
"tpc",
"TPC",
"SOMEDATA", 0, Lifetime::Timeframe},
66 InputSpec{
"tof",
"TOF",
"SOMEDATA", 1, Lifetime::Timeframe}};
76 std::vector<InputRoute> schema = {
77 createRoute(
"tpc_source", inputspecs[0]),
78 createRoute(
"its_source", inputspecs[1]),
79 createRoute(
"tof_source", inputspecs[2])};
81 decltype(DataSet::values) checkValues;
82 DataSet::Messages messages;
84 auto createMessage = [&messages, &checkValues](
DataHeader dh) {
85 checkValues.emplace_back(fmt::format(
"{}_{}_{}", dh.dataOrigin, dh.dataDescription, dh.subSpecification));
86 std::string
const&
data = checkValues.back();
87 dh.payloadSize =
data.size();
90 auto it = messages.begin(),
end = messages.end();
91 for (; it !=
end; ++it) {
92 if (it->first == dh.dataOrigin) {
97 messages.resize(messages.size() + 1);
98 it = messages.end() - 1;
99 it->first = dh.dataOrigin;
101 auto& routemessages = it->second;
102 routemessages.emplace_back(std::make_unique<std::vector<char>>(
stack.size()));
103 memcpy(routemessages.back()->data(),
stack.data(), routemessages.back()->size());
104 routemessages.emplace_back(std::make_unique<std::vector<char>>(dh.payloadSize));
105 memcpy(routemessages.back()->data(),
data.data(), routemessages.back()->size());
137 return {std::move(schema), std::move(messages), std::move(checkValues), registry};
144 REQUIRE(dataset.messages.size() > 0);
145 REQUIRE(dataset.messages[0].second.at(0) !=
nullptr);
146 REQUIRE(inputs.
size() == 3);
147 REQUIRE((*inputs.
begin()).header == dataset.messages[0].second.at(0)->data());
151 auto const* dh = DataRefUtils::getHeader<o2::header::DataHeader*>(
ref);
152 auto const data = inputs.
get<std::string>(
ref);
158 std::vector<InputSpec>
filter{
159 {
"tpc",
"TPC",
"SOMEDATA", 0, Lifetime::Timeframe},
165 auto const data = inputs.
get<std::string>(
ref);