111 template<
int CDataLevel,
int CFile>
132 pNbHours = study.runtime.rangeLimits.hour[Data::rangeEnd] + 1;
133 transitMoyenInterco_ = &study.runtime.transitMoyenInterconnexionsRecalculQuadratique;
138 pValuesForTheCurrentYear.initializeFromStudy(study);
141 NextType::initializeFromStudy(study);
147 NextType::initializeFromArea(study, area);
152 assert(link &&
"invalid interconnection");
153 pLinkGlobalIndex = link->index;
155 NextType::initializeFromAreaLink(study, link);
158 void simulationBegin()
160 pValuesForTheCurrentYear.
reset();
163 NextType::simulationBegin();
169 (void)::memcpy(pValuesForTheCurrentYear.
hour,
170 (*transitMoyenInterco_)[pLinkGlobalIndex].data(),
171 sizeof(
double) * pNbHours);
179 NextType::simulationEnd();
182 void yearBegin(uint year,
unsigned int numSpace)
185 NextType::yearBegin(year, numSpace);
188 void yearEndBuild(
State& state,
unsigned int year,
unsigned int numSpace)
191 NextType::yearEndBuild(state, year, numSpace);
194 void yearEnd(uint year,
unsigned int numSpace)
197 NextType::yearEnd(year, numSpace);
200 void computeSummary(std::map<unsigned int, unsigned int>& numSpaceToYear,
201 unsigned int nbYearsForCurrentSummary)
204 NextType::computeSummary(numSpaceToYear, nbYearsForCurrentSummary);
207 void hourBegin(uint hourInTheYear)
210 NextType::hourBegin(hourInTheYear);
213 void hourForEachArea(
State& state,
unsigned int numSpace)
216 NextType::hourForEachArea(state, numSpace);
219 void hourForEachLink(
State& state,
unsigned int numSpace)
222 NextType::hourForEachLink(state, numSpace);
225 void buildDigest(SurveyResults&
results,
int digestLevel,
int dataLevel)
const
227 if (dataLevel & Category::DataLevel::link)
229 if (digestLevel & Category::digestFlowQuad)
232 .entry[
results.data.link->from->index][
results.data.link->with->index]
235 .entry[
results.data.link->with->index][
results.data.link->from->index]
240 NextType::buildDigest(
results, digestLevel, dataLevel);
243 Antares::Memory::Stored<double>::ConstReturnType retrieveRawHourlyValuesForCurrentYear(
247 return pValuesForTheCurrentYear.
hour;
250 void localBuildAnnualSurveyReport(SurveyResults&
results,
256 results.isCurrentVarNA = AncestorType::isNonApplicable;
258 if (AncestorType::isPrinted[0])
263 pValuesForTheCurrentYear.template buildAnnualSurveyReport<VCardType>(
results,
270 uint pLinkGlobalIndex;
272 std::vector<std::vector<double>>* transitMoyenInterco_;
275 typename VCardType::IntermediateValuesType pValuesForTheCurrentYear;