ifw-daq  2.1.0-pre1
IFW Data Acquisition modules
manager.cpp
Go to the documentation of this file.
1 /**
2  * @file
3  * @ingroup daq_config
4  * @copyright (c) Copyright ESO 2022
5  * All Rights Reserved
6  * ESO (eso.org) is an Intergovernmental Organisation, and therefore special legal conditions apply.
7  *
8  * @brief daq::config::Manager and associated types.
9  */
10 #include <daq/config/manager.hpp>
11 
12 #include <ostream>
13 
14 namespace daq::config {
15 
16 std::ostream& operator<<(std::ostream& os, Origin origin) {
17  switch (origin) {
18  case Origin::Runtime:
19  os << "Runtime";
20  break;
21  case Origin::CommandLine:
22  os << "CommandLine";
23  break;
24  case Origin::Configuration:
25  os << "Configuration";
26  break;
27  case Origin::EnvironmentVariable:
28  os << "EnvironmentVariable";
29  break;
30  case Origin::Default:
31  os << "Default";
32  break;
33  default:
34  os << "Unknown";
35  break;
36  };
37  return os;
38 }
39 
40 std::ostream& operator<<(std::ostream& os, OriginInfo const& origin) {
41  os << "origin: " << origin.origin << ", details: " << origin.description;
42  return os;
43 }
44 
45 } // namespace daq::config
daq::config::OriginInfo
Mutable metadata about a configuration attribute that describes where a value comes from.
Definition: manager.hpp:72
daq::config::operator<<
std::ostream & operator<<(std::ostream &os, Origin origin)
Format Origin.
Definition: manager.cpp:16
manager.hpp
daq::config::Manager and associated types.
daq::config::Origin::Runtime
@ Runtime
Runtime change via e.g.
daq::config::Origin
Origin
Configuration origins in descending priority.
Definition: manager.hpp:30
daq::config::OriginInfo::description
std::string description
May include additional information like which configuration file was used.
Definition: manager.hpp:77
daq::config::OriginInfo::origin
Origin origin
Definition: manager.hpp:73
daq::config
Definition: manager.cpp:14