Rename files, classes and variables in relation to the configuration file

In particular, makes clearer the distinction between configuration and
configuration file. The former includes information that is not in the
latter (command-line options.)
master
Sébastien Villemot 2023-12-11 17:16:49 +01:00
parent 7dd125e43a
commit 4389e5320d
No known key found for this signature in database
GPG Key ID: 2CECE9350ECEBE4A
6 changed files with 53 additions and 53 deletions

View File

@ -22,7 +22,7 @@
#include <utility>
#include <vector>
#include "ConfigFile.hh"
#include "Configuration.hh"
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wold-style-cast"
@ -98,9 +98,9 @@ Cluster::Cluster(member_nodes_t member_nodes_arg) : member_nodes {move(member_no
}
}
ConfigFile::ConfigFile(bool parallel_arg, bool parallel_test_arg,
bool parallel_follower_open_mode_arg, bool parallel_use_psexec_arg,
string cluster_name_arg) :
Configuration::Configuration(bool parallel_arg, bool parallel_test_arg,
bool parallel_follower_open_mode_arg, bool parallel_use_psexec_arg,
string cluster_name_arg) :
parallel {parallel_arg},
parallel_test {parallel_test_arg},
parallel_follower_open_mode {parallel_follower_open_mode_arg},
@ -110,12 +110,12 @@ ConfigFile::ConfigFile(bool parallel_arg, bool parallel_test_arg,
}
void
ConfigFile::getConfigFileInfo(const filesystem::path& config_file)
Configuration::getConfigFileInfo(const filesystem::path& conffile_option)
{
using namespace boost;
ifstream configFile;
if (config_file.empty())
if (conffile_option.empty())
{
filesystem::path defaultConfigFile;
// Test OS and try to open default file
@ -162,10 +162,10 @@ ConfigFile::getConfigFileInfo(const filesystem::path& config_file)
}
else
{
configFile.open(config_file, fstream::in);
configFile.open(conffile_option, fstream::in);
if (!configFile.is_open())
{
cerr << "ERROR: Couldn't open file " << config_file.string() << endl;
cerr << "ERROR: Couldn't open file " << conffile_option.string() << endl;
exit(EXIT_FAILURE);
}
}
@ -469,7 +469,7 @@ ConfigFile::getConfigFileInfo(const filesystem::path& config_file)
}
void
ConfigFile::addHooksConfFileElement(string global_init_file)
Configuration::addHooksConfFileElement(string global_init_file)
{
if (global_init_file.empty())
{
@ -482,7 +482,7 @@ ConfigFile::addHooksConfFileElement(string global_init_file)
}
void
ConfigFile::addPathsConfFileElement(vector<string> includepath)
Configuration::addPathsConfFileElement(vector<string> includepath)
{
if (includepath.empty())
{
@ -494,15 +494,15 @@ ConfigFile::addPathsConfFileElement(vector<string> includepath)
}
void
ConfigFile::addParallelConfFileElement(bool inNode, bool inCluster,
const member_nodes_t& member_nodes, const string& name,
const string& computerName, const string& port,
int minCpuNbr, int maxCpuNbr, const string& userName,
const string& password, const string& remoteDrive,
const string& remoteDirectory, const string& programPath,
const string& programConfig, const string& matlabOctavePath,
bool singleCompThread, int numberOfThreadsPerJob,
const string& operatingSystem)
Configuration::addParallelConfFileElement(bool inNode, bool inCluster,
const member_nodes_t& member_nodes, const string& name,
const string& computerName, const string& port,
int minCpuNbr, int maxCpuNbr, const string& userName,
const string& password, const string& remoteDrive,
const string& remoteDirectory, const string& programPath,
const string& programConfig,
const string& matlabOctavePath, bool singleCompThread,
int numberOfThreadsPerJob, const string& operatingSystem)
{
//! ADD NODE
if (inNode)
@ -546,7 +546,7 @@ ConfigFile::addParallelConfFileElement(bool inNode, bool inCluster,
}
void
ConfigFile::checkPass([[maybe_unused]] WarningConsolidation& warnings) const
Configuration::checkPass([[maybe_unused]] WarningConsolidation& warnings) const
{
for (bool global_init_file_declared {false}; const auto& hook : hooks)
for (const auto& mapit : hook.get_hooks())
@ -684,7 +684,7 @@ ConfigFile::checkPass([[maybe_unused]] WarningConsolidation& warnings) const
}
void
ConfigFile::transformPass()
Configuration::transformPass()
{
if (!parallel && !parallel_test)
return;
@ -711,7 +711,7 @@ ConfigFile::transformPass()
}
vector<filesystem::path>
ConfigFile::getIncludePaths() const
Configuration::getIncludePaths() const
{
vector<filesystem::path> include_paths;
for (auto path : paths)
@ -722,7 +722,7 @@ ConfigFile::getIncludePaths() const
}
void
ConfigFile::writeHooks(ostream& output) const
Configuration::writeHooks(ostream& output) const
{
for (auto hook : hooks)
for (const auto& mapit : hook.get_hooks())
@ -730,7 +730,7 @@ ConfigFile::writeHooks(ostream& output) const
}
void
ConfigFile::writeCluster(ostream& output) const
Configuration::writeCluster(ostream& output) const
{
if (!parallel && !parallel_test)
return;
@ -804,7 +804,7 @@ ConfigFile::writeCluster(ostream& output) const
}
void
ConfigFile::writeEndParallel(ostream& output) const
Configuration::writeEndParallel(ostream& output) const
{
if ((!parallel && !parallel_test) || !parallel_follower_open_mode)
return;

View File

@ -17,8 +17,8 @@
* along with Dynare. If not, see <https://www.gnu.org/licenses/>.
*/
#ifndef CONFIG_FILE_HH
#define CONFIG_FILE_HH
#ifndef CONFIGURATION_HH
#define CONFIGURATION_HH
#include <filesystem>
#include <map>
@ -64,7 +64,7 @@ public:
class FollowerNode
{
friend class ConfigFile;
friend class Configuration;
public:
FollowerNode(string computerName_arg, string port_arg, int minCpuNbr_arg, int maxCpuNbr_arg,
@ -86,7 +86,7 @@ protected:
class Cluster
{
friend class ConfigFile;
friend class Configuration;
public:
explicit Cluster(member_nodes_t member_nodes_arg);
@ -95,12 +95,13 @@ protected:
member_nodes_t member_nodes;
};
//! The abstract representation of a "config" file
class ConfigFile
/* The abstract representation of the configuration.
Merges information from the command-line and from the configuration file. */
class Configuration
{
public:
ConfigFile(bool parallel_arg, bool parallel_test_arg, bool parallel_follower_open_mode_arg,
bool parallel_use_psexec_arg, string cluster_name);
Configuration(bool parallel_arg, bool parallel_test_arg, bool parallel_follower_open_mode_arg,
bool parallel_use_psexec_arg, string cluster_name);
private:
const bool parallel, parallel_test, parallel_follower_open_mode, parallel_use_psexec;
@ -130,7 +131,7 @@ private:
public:
//! Parse config file
void getConfigFileInfo(const filesystem::path& parallel_config_file);
void getConfigFileInfo(const filesystem::path& conffile_option);
//! Check Pass
void checkPass(WarningConsolidation& warnings) const;
//! Check Pass

View File

@ -31,7 +31,7 @@
#include <unistd.h>
#include "ConfigFile.hh"
#include "Configuration.hh"
#include "ExtendedPreprocessorTypes.hh"
#include "ModFile.hh"
#include "ParsingDriver.hh"
@ -53,7 +53,7 @@ usage()
cerr << "Dynare usage: dynare mod_file [debug] [noclearall] [onlyclearglobals] "
"[savemacro[=macro_file]] [onlymacro] [linemacro] [notmpterms] [nolog] [warn_uninit]"
<< " [console] [nograph] [nointeractive] [parallel[=cluster_name]] "
"[conffile=parallel_config_path_and_filename] [parallel_follower_open_mode] "
"[conffile=path_to_config_file] [parallel_follower_open_mode] "
"[parallel_test] [parallel_use_psexec=true|false]"
<< " [-D<variable>[=<value>]] [-I/path] [nostrict] [stochastic] [fast] [minimal_workspace] "
"[compute_xrefs] [output=second|third] [language=matlab|julia]"
@ -142,7 +142,7 @@ main(int argc, char** argv)
bool console = false;
bool nograph = false;
bool nointeractive = false;
filesystem::path parallel_config_file;
filesystem::path conffile;
bool parallel = false;
string cluster_name;
bool parallel_follower_open_mode
@ -234,7 +234,7 @@ main(int argc, char** argv)
cerr << "Incorrect syntax for conffile option" << endl;
usage();
}
parallel_config_file = s.substr(9);
conffile = s.substr(9);
}
else if (s == "parallel_follower_open_mode"
|| s == "parallel_slave_open_mode") // Kept for backward compatibility, see #86
@ -461,15 +461,15 @@ main(int argc, char** argv)
WarningConsolidation warnings(no_warn);
// Process config file
ConfigFile config_file(parallel, parallel_test, parallel_follower_open_mode, parallel_use_psexec,
cluster_name);
config_file.getConfigFileInfo(parallel_config_file);
config_file.checkPass(warnings);
config_file.transformPass();
Configuration config {parallel, parallel_test, parallel_follower_open_mode, parallel_use_psexec,
cluster_name};
config.getConfigFileInfo(conffile);
config.checkPass(warnings);
config.transformPass();
// If Include option was passed to the [paths] block of the config file, add
// it to paths before macroprocessing
for (const auto& it : config_file.getIncludePaths())
for (const auto& it : config.getIncludePaths())
paths.emplace_back(it);
/*
@ -540,7 +540,7 @@ main(int argc, char** argv)
mod_file->writeJuliaOutput(basename);
else
mod_file->writeMOutput(basename, clear_all, clear_global, no_warn, console, nograph,
nointeractive, config_file, check_model_changes, minimal_workspace,
nointeractive, config, check_model_changes, minimal_workspace,
compute_xrefs, mexext, matlabroot, onlymodel, gui, notime);
/* Ensures that workers are not destroyed before they finish compiling.

View File

@ -27,7 +27,6 @@
#include <filesystem>
#include "ComputingTasks.hh"
#include "ConfigFile.hh"
#include "ModFile.hh"
#include "Shocks.hh"
@ -843,7 +842,7 @@ ModFile::remove_directory_with_matlab_lock(const filesystem::path& dir)
void
ModFile::writeMOutput(const string& basename, bool clear_all, bool clear_global, bool no_warn,
bool console, bool nograph, bool nointeractive, const ConfigFile& config_file,
bool console, bool nograph, bool nointeractive, const Configuration& config,
bool check_model_changes, bool minimal_workspace, bool compute_xrefs,
const string& mexext, const filesystem::path& matlabroot, bool onlymodel,
bool gui, bool notime) const
@ -916,7 +915,7 @@ ModFile::writeMOutput(const string& basename, bool clear_all, bool clear_global,
<< "% Some global variables initialization" << endl
<< "%" << endl;
if (!onlymodel)
config_file.writeHooks(mOutputFile);
config.writeHooks(mOutputFile);
mOutputFile << "global_initialization;" << endl;
if (minimal_workspace)
@ -1002,7 +1001,7 @@ ModFile::writeMOutput(const string& basename, bool clear_all, bool clear_global,
}
if (!onlymodel)
config_file.writeCluster(mOutputFile);
config.writeCluster(mOutputFile);
if (bytecode)
mOutputFile << "if exist('bytecode') ~= 3" << endl
@ -1131,7 +1130,7 @@ ModFile::writeMOutput(const string& basename, bool clear_all, bool clear_global,
<< "_results.mat'], 'options_mom_', '-append');" << endl
<< "end" << endl;
config_file.writeEndParallel(mOutputFile);
config.writeEndParallel(mOutputFile);
if (!no_warn)
{

View File

@ -26,7 +26,7 @@
#include <ostream>
#include <sstream>
#include "ConfigFile.hh"
#include "Configuration.hh"
#include "DynamicModel.hh"
#include "ExtendedPreprocessorTypes.hh"
#include "ExternalFunctionsTable.hh"
@ -176,7 +176,7 @@ public:
\param compute_xrefs if true, equation cross references will be computed
*/
void writeMOutput(const string& basename, bool clear_all, bool clear_global, bool no_warn,
bool console, bool nograph, bool nointeractive, const ConfigFile& config_file,
bool console, bool nograph, bool nointeractive, const Configuration& config,
bool check_model_changes, bool minimal_workspace, bool compute_xrefs,
const string& mexext, const filesystem::path& matlabroot, bool onlymodel,
bool gui, bool notime) const;

View File

@ -42,7 +42,7 @@ preprocessor_src = [ 'ComputingTasks.cc',
'ParsingDriver.cc',
'DataTree.cc',
'ModFile.cc',
'ConfigFile.cc',
'Configuration.cc',
'Statement.cc',
'ExprNode.cc',
'VariableDependencyGraph.cc',