22 #ifndef __SOLVER_VARIABLE_PRINT_POLICY_H__
23 #define __SOLVER_VARIABLE_PRINT_POLICY_H__
29 #include <yuni/yuni.h>
30 #include <yuni/core/fwd.h>
31 #include <yuni/core/string.h>
33 namespace Antares::Data
44 void enablePrint(
bool b);
45 bool isPrinted()
const;
48 uint getMaxColumnsCount();
49 void setMaxColumns(uint maxColumnsNumber);
51 bool isPrintedOnDataLevel(uint dataLevel)
const
53 return dataLevel_ & dataLevel;
56 bool isPrintedOnFileLevel(uint fileLevel)
const
58 return fileLevel_ & fileLevel;
63 bool to_be_printed_ =
true;
68 uint maxNumberColumns_ = 0;
85 void add(
const AnyString& name, uint dataLevel, uint fileLevel);
105 bool exists(std::string name);
107 void setPrintStatus(std::string varname,
bool printStatus);
108 void setPrintStatus(
unsigned int index,
bool printStatus);
110 void setMaxColumns(std::string varname, uint maxColumnsNumber);
111 std::string name_of(
unsigned int index)
const;
113 void prepareForSimulation(
bool isThematicTrimmingEnabled,
114 const std::vector<std::string>& excluded_vars = {});
117 bool isPrinted(std::string var_name)
const;
119 uint getTotalMaxColumnsCount()
const
121 return totalMaxColumnsCount_;
124 uint getNbSelectedZonalVars()
const
126 return numberSelectedAreaVariables;
129 uint getNbSelectedLinkVars()
const
131 return numberSelectedLinkVariables;
134 void computeMaxColumnsCountInReports();
135 void setAllPrintStatusesTo(
bool b);
138 unsigned int numberOfEnabledVariables();
139 std::vector<std::string> namesOfEnabledVariables();
140 std::vector<std::string> namesOfDisabledVariables();
143 std::vector<std::string> namesOfVariablesWithPrintStatus(
bool printStatus);
144 void countSelectedAreaVars();
145 void countSelectedLinkVars();
149 std::map<std::string, VariablePrintInfo> allVarsPrintInfo;
150 std::map<unsigned int, std::string> index_to_name;
154 uint totalMaxColumnsCount_ = 0;
157 uint numberSelectedAreaVariables = 0;
159 uint numberSelectedLinkVariables = 0;
Definition: variable-print-info.h:95
Definition: variable-print-info.h:38
Definition: variable-print-info.h:82