Skip to content
Snippets Groups Projects

Rework event building configuration. Refs #2921

Merged Volker Friese requested to merge v.friese/cbmroot:evbuild_config into master
Files
43
+ 36
0
/* Copyright (C) 2023 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
SPDX-License-Identifier: GPL-3.0-only
Authors: Volker Friese [committer] */
#include "Config.h"
#include <fstream>
#include <yaml-cpp/yaml.h>
namespace cbm::algo::evbuild
{
// ----- Constructor from YAML --------------------------------------------
Config::Config(YAML::Node node)
: fTrigger(node["trigger"])
, fBuilder(node["eventbuilder"])
, fSelector(node["selector"])
{
if (!node) throw std::runtime_error("no configuration node for event building");
}
// ----------------------------------------------------------------------------
// ----- Save configuration to YAML file ----------------------------------
YAML::Node Config::ToYaml() const
{
YAML::Node result;
result["trigger"] = fTrigger.ToYaml(); // Digi trigger config
result["eventbuilder"] = fBuilder.ToYaml(); // Event builder config
result["selector"] = fSelector.ToYaml(); // Event selector config
return result;
}
// ----------------------------------------------------------------------------
} // namespace cbm::algo::evbuild
Loading