26#include "../common/cluster_list.h"
40 std::string typeID()
const override;
85 auto each_mustrun_and_enabled()
const
87 return allClusters_ | std::views::filter(&ThermalCluster::isMustRun)
88 | std::views::filter(&ThermalCluster::isEnabled);
91 auto each_enabled_and_not_mustrun()
const
93 return allClusters_ | std::views::filter(&ThermalCluster::isEnabled)
94 | std::views::filter(std::not_fn(&ThermalCluster::isMustRun));
116 bool validatePrepro(
const Study& study);
118 bool validateClusters(
const Parameters& param)
const;
120 bool loadEconomicCosts(
Study& s,
const std::filesystem::path& folder);
122 bool savePreproToFolder(
const AnyString& folder)
const;
123 bool saveEconomicCosts(
const AnyString& folder)
const;
125 bool saveToFolder(
const AnyString& folder)
const override;
127 unsigned int enabledAndMustRunCount()
const;
128 unsigned int enabledAndNotMustRunCount()
const;
132 void rebuildIndex()
const;
Definition for a single area.
Definition area.h:52
Generic list of clustersThis class implements the base functions for a list of cluster It's used for ...
Definition cluster_list.h:46
General data for a study.
Definition parameters.h:51
List of clusters.
Definition cluster_list.h:38
virtual ~ThermalClusterList()
Destructor.
Definition cluster_list.cpp:54
bool loadPreproFromFolder(Study &s, const std::filesystem::path &folder)
Load data related to the preprocessor from a list of thermal clusters from a folder.
Definition cluster_list.cpp:573
bool loadFromFolder(Study &s, const std::filesystem::path &folder, Area *area)
Get the size (bytes) occupied in memory by a ThermalClusterList structure.
Definition cluster_list.cpp:91
void enableMustrunForEveryone()
Enable the 'mustrun' mode for every cluster.
Definition cluster_list.cpp:367
void reverseCalculationOfSpinning()
Calculation of Spinning for all thermal clusters (reverse)
Definition cluster_list.cpp:359
ThermalClusterList()
Default constructor.
Definition cluster_list.cpp:50
void ensureDataPrepro()
Ensure data for the prepro are initialized.
Definition cluster_list.cpp:375
void calculationOfSpinning()
Calculation of Spinning for all thermal clusters.
Definition cluster_list.cpp:351