13 #include "yaml-cpp/yaml.h"
64 std::vector<std::string>
getWavelets(
const std::string& values_str);
79 #define YAML_MACRO(TYPE, NAME, VALUE) \
81 TYPE NAME##_ = VALUE; \
84 TYPE NAME() const { return NAME##_; };
95 YAML_MACRO(
bool, positiveValueConstraint, true)
121 YAML_MACRO(t_int, number_of_measurements, 1e5)
124 YAML_MACRO(t_real, dualFBVarianceConvergence, 0)
125 YAML_MACRO(t_real, epsilonConvergenceScaling, 0)
126 YAML_MACRO(std::vector<std::
string>, wavelet_basis, {})
131 YAML_MACRO(std::vector<std::
string>, measurements, {})
136 YAML_MACRO(t_real, regularisation_parameter, 0)
139 YAML_MACRO(t_real, jmap_relVarianceConvergence, 0)
140 YAML_MACRO(t_real, jmap_objVarianceConvergence, 0)
147 YAML_MACRO(std::
string, CRR_function_model_path, "")
148 YAML_MACRO(std::
string, CRR_gradient_model_path, "")
156 YAML::Node config_file;
157 std::string out_path;
159 template <
typename T>
160 T get(
const YAML::Node& node_map,
const std::initializer_list<const char*> indicies);
void parseAndSetMeasureOperators(const YAML::Node &node)
void parseAndSetSARA(const YAML::Node &node)
std::string output_path() const
void parseAndSetGeneralConfiguration(const YAML::Node &node)
void parseAndSetAlgorithmOptions(const YAML::Node &node)
void setParserVariablesFromYaml()
std::vector< std::string > getWavelets(const std::string &values_str)
YamlParser(const std::string &filepath)
utilities::vis_params conjugate_w(const utilities::vis_params &uv_vis)
reflects visibilities into the w >= 0 domain
std::string version()
Returns library version.
#define YAML_MACRO(TYPE, NAME, VALUE)