Antares Xpansion
Investment simulations for Antares studies
Loading...
Searching...
No Matches
ProblemGenerationExeOptions.h
1#ifndef ANTARES_XPANSION_SRC_CPP_LPNAMER_MAIN_INCLUDE_PROBLEMGENERATIONEXEOPTIONS_H
2#define ANTARES_XPANSION_SRC_CPP_LPNAMER_MAIN_INCLUDE_PROBLEMGENERATIONEXEOPTIONS_H
3#include <filesystem>
4#include <vector>
5
6#include "antares-xpansion/helpers/OptionsParser.h"
7#include "ProblemGenerationOptions.h"
8
11 private:
12 std::filesystem::path xpansion_output_dir_;
13 std::string master_formulation_;
14 std::string additional_constraintFilename_l_;
15 std::filesystem::path archive_path_;
16 std::filesystem::path weights_file_;
17 std::vector<int> active_years_;
18 bool unnamed_problems_ = false;
19 std::filesystem::path study_path_;
20
21 public:
23
24 ~ProblemGenerationExeOptions() override = default;
25 [[nodiscard]] std::filesystem::path XpansionOutputDir() const override {
26 return xpansion_output_dir_;
27 }
28 [[nodiscard]] std::string MasterFormulation() const override {
29 return master_formulation_;
30 }
31 [[nodiscard]] std::string AdditionalConstraintsFilename() const override {
32 return additional_constraintFilename_l_;
33 }
34 [[nodiscard]] std::filesystem::path ArchivePath() const override {
35 return archive_path_;
36 }
37 [[nodiscard]] std::filesystem::path WeightsFile() const override {
38 return weights_file_;
39 }
40 [[nodiscard]] std::vector<int> ActiveYears() const override {
41 return active_years_;
42 }
43 [[nodiscard]] bool UnnamedProblems() const override {
44 return unnamed_problems_;
45 }
46
47 void Parse(unsigned int argc, const char *const *argv) override;
48
49 [[nodiscard]] std::filesystem::path deduceXpansionDirIfEmpty(
50 std::filesystem::path xpansion_output_dir,
51 const std::filesystem::path& archive_path) const override;
52 [[nodiscard]] std::filesystem::path StudyPath() const override;
53 void checkMandatoryOptions(const std::string& log_location) const;
54 [[nodiscard]] auto exclusiveMandatoryParameters() const;
55};
56#endif // ANTARES_XPANSION_SRC_CPP_LPNAMER_MAIN_INCLUDE_PROBLEMGENERATIONEXEOPTIONS_H
Definition OptionsParser.h:10
Definition ProblemGenerationExeOptions.h:10
Definition ProblemGenerationOptions.h:10