11#include <boost/serialization/vector.hpp>
12#include <boost/serialization/unique_ptr.hpp>
13#include <boost/serialization/map.hpp>
14#include <boost/serialization/string.hpp>
15#include <boost/serialization/base_object.hpp>
16#include <boost/archive/text_iarchive.hpp>
17#include <boost/archive/text_oarchive.hpp>
25#include <boost/serialization/export.hpp>
26#include <boost/serialization/split_member.hpp>
27#include "../Global/SharedConfig.h"
97 BOOST_SERIALIZATION_SPLIT_MEMBER()
98 template<class Archive>
99 void save(Archive &ar, const
unsigned int)
const {
100 const uint32_t n_steps =
static_cast<uint32_t
>(
procedure_step.size());
105 template<
class Archive>
106 void load(Archive &ar,
const unsigned int) {
108 master !=
nullptr && master !=
this)
110 uint32_t n_steps = 0;
113 throw std::runtime_error(
114 "Procedures state overlay: archive has " + std::to_string(n_steps)
115 +
" steps but the loaded procedure book has "
117 +
" — configuration inputs do not match the snapshot");
void setPrerequisiteStepMultiplier(double)
double getVerificationStepMultiplier()
void copyProceduresFromRestartInfoForRestart(Procedures &)
double getDiagnosisStepMultiplier()
void copyProceduresToRestartInfoForRestart(Procedures &)
void copyProcedures(Procedures &)
std::string getEntryProcedureName()
std::vector< std::unique_ptr< ProcedureStep > > procedure_step
void setAbnormalProcedureMultiplier(double)
void save(Archive &ar, const unsigned int) const
void setAlarmResponseProcedureMultiplier(double)
double getObjectiveStepMultiplier()
double getAlarmResponseProcedureMultiplier()
double getPrerequisiteStepMultiplier()
void retrieveProceduresFromFile(std::ifstream &)
double getMentalProcedureMultiplier()
double getNormalProcedureMultiplier()
std::map< std::string, ProcedureStep * > procedure_map
double diagnosis_step_multiplier
double getProcedureTransferTime()
double abnormal_procedure_multiplier
void setObjectiveStepMultiplier(double)
void setProcedureTransferTime(double)
double optimal_recovery_procedure_multiplier
void setNormalProcedureMultiplier(double)
double getAbnormalProcedureMultiplier()
double objective_step_multiplier
double functional_recovery_procedure_multiplier
double getOptimalRecoveryProcedureMultiplier()
void initiationForSimulation()
double alarm_response_procedure_multiplier
double getFunctionalRecoveryProcedureMultipler()
double getMonitoringStepMultiplier()
void seedFromMaster(const Procedures &master)
double getStepTransferTime()
double verification_step_multiplier
double prerequisite_step_multiplier
double step_transfer_time
void setStepTransferTime(double)
void clearProceduresForRestart()
void setDiagnosisStepMultiplier(double)
void setVerificationStepMultiplier(double)
void setOptimalRecoveryProcedureMultiplier(double)
friend class boost::serialization::access
std::string getEntryStepName()
double normal_procedure_multiplier
void setMentalProcedureMultiplier(double)
double mental_procedure_multiplier
void load(Archive &ar, const unsigned int)
std::vector< std::unique_ptr< ProcedureStepInfo > > list_of_procedural_step
void setFunctionalRecoveryProcedureMultipler(double)
void setMonitoringStepMultiplier(double)
double procedure_transfer_time
double monitoring_step_multiplier
void saveProceduresToFile(std::ofstream &)
const Procedures * shared_procedures()