Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
CliUtils.h
Go to the documentation of this file.
1#ifndef HYPERISO_CLI_UTILS_H
2#define HYPERISO_CLI_UTILS_H
3
4#include <map>
5#include <optional>
6#include <string>
7#include <vector>
8
9#include "Include.h"
10#include "HyperisoMaster.h"
11
21struct CliOptions {
22 std::vector<std::string> positionals;
23 std::map<std::string, std::vector<std::string>> options;
24
25 static CliOptions parse(int argc, char* argv[], int first = 1);
26
27 bool has(const std::string& key) const;
28 std::string get(const std::string& key, const std::string& fallback = "") const;
29 int get_int(const std::string& key, int fallback) const;
30 double get_double(const std::string& key, double fallback) const;
31 bool flag(const std::string& key, bool fallback = false) const;
32 std::vector<std::string> list(const std::string& key, const std::vector<std::string>& fallback = {}) const;
33};
34
36void print_section(const std::string& title);
37
39Model parse_model(const std::string& model);
40
42QCDOrder parse_qcd_order(const std::string& order);
43ContributionType parse_contribution(const std::string& contribution);
44
46HyperisoMaster init_hyperiso_from_cli(const CliOptions& opts);
47
48#endif
void print_section(const std::string &title)
Definition CliUtils.cpp:100
ContributionType parse_contribution(const std::string &contribution)
Definition CliUtils.cpp:122
HyperisoMaster init_hyperiso_from_cli(const CliOptions &opts)
Definition CliUtils.cpp:130
Model parse_model(const std::string &model)
Definition CliUtils.cpp:104
QCDOrder parse_qcd_order(const std::string &order)
Definition CliUtils.cpp:113
Model
QCDOrder
ContributionType
High-level helpers for initializing and monitoring the Hyperiso framework.
High-level interface to initialize and monitor the main framework configuration.
Small command-line parser for the Hyperiso terminal interface.
Definition CliUtils.h:21
double get_double(const std::string &key, double fallback) const
Definition CliUtils.cpp:77
std::vector< std::string > list(const std::string &key, const std::vector< std::string > &fallback={}) const
Definition CliUtils.cpp:88
bool has(const std::string &key) const
Definition CliUtils.cpp:62
bool flag(const std::string &key, bool fallback=false) const
Definition CliUtils.cpp:82
std::vector< std::string > positionals
Definition CliUtils.h:22
std::map< std::string, std::vector< std::string > > options
Definition CliUtils.h:23
int get_int(const std::string &key, int fallback) const
Definition CliUtils.cpp:72
static CliOptions parse(int argc, char *argv[], int first=1)
Definition CliUtils.cpp:32
std::string get(const std::string &key, const std::string &fallback="") const
Definition CliUtils.cpp:66