8#include "../Branch/BranchRecord.h"
9#include <boost/serialization/export.hpp>
10#include "../Global/SimulationContext.h"
11#include <boost/archive/binary_oarchive.hpp>
12#include <boost/archive/binary_iarchive.hpp>
36 auto ccu_pt = make_unique<CommandControlUnit>();
38 ccu_pt->copyTimer(*_pt);
39 ccu_pt->setAssociatedBranchID(_associated_branch_id);
40 commands.push_back(std::move(ccu_pt));
43 auto ccu_pt = make_unique<CommandControlUnit>();
44 ccu_pt->strategy = _pt;
45 ccu_pt->copyTimer(*_pt);
46 ccu_pt->setAssociatedBranchID(_associated_branch_id);
47 commands.push_back(std::move(ccu_pt));
50 auto ccu_pt = make_unique<CommandControlUnit>();
51 ccu_pt->subgoal = _pt;
52 ccu_pt->copyTimer(*_pt);
53 ccu_pt->setAssociatedBranchID(_associated_branch_id);
54 commands.push_back(std::move(ccu_pt));
57 auto ccu_pt = make_unique<CommandControlUnit>();
58 ccu_pt->diagnosis = _pt;
59 ccu_pt->copyTimer(*_pt);
60 ccu_pt->setAssociatedBranchID(_associated_branch_id);
61 commands.push_back(std::move(ccu_pt));
64 auto ccu_pt = make_unique<CommandControlUnit>();
65 ccu_pt->action_objective = _pt;
66 ccu_pt->copyTimer(*_pt);
67 ccu_pt->setAssociatedBranchID(_associated_branch_id);
68 commands.push_back(std::move(ccu_pt));
71 auto ccu_pt = make_unique<CommandControlUnit>();
72 ccu_pt->action_pack = _pt;
73 ccu_pt->copyTimer(*_pt);
74 ccu_pt->setAssociatedBranchID(_associated_branch_id);
75 commands.push_back(std::move(ccu_pt));
78 auto ccu_pt = make_unique<CommandControlUnit>();
80 ccu_pt->copyTimer(*_pt);
81 ccu_pt->setAssociatedBranchID(_associated_branch_id);
82 commands.push_back(std::move(ccu_pt));
85 auto ccu_pt = make_unique<CommandControlUnit>();
86 ccu_pt->alarm_state = _pt;
87 ccu_pt->copyTimer(*_pt);
88 ccu_pt->setAssociatedBranchID(_associated_branch_id);
89 commands.push_back(std::move(ccu_pt));
92 auto ccu_pt = make_unique<CommandControlUnit>();
93 ccu_pt->component_state = _pt;
94 ccu_pt->copyTimer(*_pt);
95 ccu_pt->setAssociatedBranchID(_associated_branch_id);
96 commands.push_back(std::move(ccu_pt));
99 auto ccu_pt = make_unique<CommandControlUnit>();
100 ccu_pt->support_system_state = _pt;
101 ccu_pt->copyTimer(*_pt);
102 ccu_pt->setAssociatedBranchID(_associated_branch_id);
103 commands.push_back(std::move(ccu_pt));
106 auto ccu_pt = make_unique<CommandControlUnit>();
107 ccu_pt->parameter_trend = _pt;
108 ccu_pt->copyTimer(*_pt);
109 ccu_pt->setAssociatedBranchID(_associated_branch_id);
110 commands.push_back(std::move(ccu_pt));
113 auto ccu_pt = make_unique<CommandControlUnit>();
114 ccu_pt->parameter_value = _pt;
115 ccu_pt->copyTimer(*_pt);
116 ccu_pt->setAssociatedBranchID(_associated_branch_id);
117 commands.push_back(std::move(ccu_pt));
120 auto ccu_pt = make_unique<CommandControlUnit>();
121 ccu_pt->parameter_difference = _pt;
122 ccu_pt->copyTimer(*_pt);
123 ccu_pt->setAssociatedBranchID(_associated_branch_id);
124 commands.push_back(std::move(ccu_pt));
127 auto ccu_pt = make_unique<CommandControlUnit>();
128 ccu_pt->mental_belief = _pt;
129 ccu_pt->copyTimer(*_pt);
130 ccu_pt->setAssociatedBranchID(_associated_branch_id);
131 commands.push_back(std::move(ccu_pt));
135 auto ccu_pt = make_unique<CommandControlUnit>();
136 ccu_pt->scanned_parameter = _pt;
137 ccu_pt->copyTimer(*_pt);
138 ccu_pt->setAssociatedBranchID(_associated_branch_id);
139 commands.push_back(std::move(ccu_pt));
143 auto ccu_pt = make_unique<CommandControlUnit>();
144 ccu_pt->procedure_step = _pt;
145 ccu_pt->copyTimer(*_pt);
146 ccu_pt->setAssociatedBranchID(_associated_branch_id);
147 commands.push_back(std::move(ccu_pt));
150 auto ccu_pt = make_unique<CommandControlUnit>();
151 ccu_pt->instinctive_response_procedure = _pt;
152 ccu_pt->copyTimer(*_pt);
153 ccu_pt->setAssociatedBranchID(_associated_branch_id);
154 commands.push_back(std::move(ccu_pt));
157 auto ccu_pt = make_unique<CommandControlUnit>();
158 ccu_pt->info_gather_mode = _pt;
159 ccu_pt->copyTimer(*_pt);
160 ccu_pt->setAssociatedBranchID(_associated_branch_id);
161 commands.push_back(std::move(ccu_pt));
164 auto ccu_pt = make_unique<CommandControlUnit>();
165 ccu_pt->HW_reliability = _pt;
166 ccu_pt->copyTimer(*_pt);
167 ccu_pt->setAssociatedBranchID(_associated_branch_id);
168 commands.push_back(std::move(ccu_pt));
171 auto ccu_pt = make_unique<CommandControlUnit>();
172 ccu_pt->SS_reliability = _pt;
173 ccu_pt->copyTimer(*_pt);
174 ccu_pt->setAssociatedBranchID(_associated_branch_id);
175 commands.push_back(std::move(ccu_pt));
178 auto ccu_pt = make_unique<CommandControlUnit>();
179 ccu_pt->new_alarm = _pt;
180 ccu_pt->copyTimer(*_pt);
181 ccu_pt->setAssociatedBranchID(_associated_branch_id);
182 commands.push_back(std::move(ccu_pt));
186 decltype(
commands)::iterator commands_itr;
187 for (commands_itr =
commands.begin(); commands_itr !=
commands.end(); commands_itr++) {
188 (*commands_itr)->reduceRemainingTime(x);
191 (*commands_itr)->reduceRemainingTime(x);
198 decltype(
commands)::iterator commands_itr;
201 while (commands_itr !=
commands.end()) {
202 if ((*commands_itr)->getRemainingTime() <= 0.0) {
203 if ((*commands_itr)->goal != 0) {
204 (*commands_itr)->goal->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
205 (*commands_itr)->goal->setTimeOfCommunication(
r5pars_.timesno);
206 str = (*commands_itr)->goal->translateMessage();
210 }
else if ((*commands_itr)->strategy != 0) {
211 (*commands_itr)->strategy->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
212 (*commands_itr)->strategy->setTimeOfCommunication(
r5pars_.timesno);
213 str = (*commands_itr)->strategy->translateMessage();
217 }
else if ((*commands_itr)->subgoal != 0) {
218 (*commands_itr)->subgoal->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
219 (*commands_itr)->subgoal->setTimeOfCommunication(
r5pars_.timesno);
220 str = (*commands_itr)->subgoal->translateMessage();
224 }
else if ((*commands_itr)->diagnosis != 0) {
225 (*commands_itr)->diagnosis->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
226 (*commands_itr)->diagnosis->setTimeOfCommunication(
r5pars_.timesno);
227 str = (*commands_itr)->diagnosis->translateMessage();
231 }
else if ((*commands_itr)->action_objective != 0) {
232 (*commands_itr)->action_objective->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
233 (*commands_itr)->action_objective->setTimeOfCommunication(
r5pars_.timesno);
235 }
else if ((*commands_itr)->action_pack != 0) {
236 (*commands_itr)->action_pack->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
237 (*commands_itr)->action_pack->setTimeOfCommunication(
r5pars_.timesno);
239 }
else if ((*commands_itr)->action != 0) {
241 (*commands_itr)->action->setTimeAtWhichThisControlIsActivated(
r5pars_.timesno);
243 (*commands_itr)->action->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
244 (*commands_itr)->action->setTimeOfCommunication(
r5pars_.timesno);
246 str = (*commands_itr)->action->translateMessage();
250 }
else if ((*commands_itr)->alarm_state != 0) {
251 (*commands_itr)->alarm_state->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
252 (*commands_itr)->alarm_state->setTimeOfCommunication(
r5pars_.timesno);
253 str = (*commands_itr)->alarm_state->translateMessage();
257 }
else if ((*commands_itr)->component_state != 0) {
258 (*commands_itr)->component_state->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
259 (*commands_itr)->component_state->setTimeOfCommunication(
r5pars_.timesno);
260 str = (*commands_itr)->component_state->translateMessage();
264 }
else if ((*commands_itr)->support_system_state != 0) {
265 (*commands_itr)->support_system_state->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
266 (*commands_itr)->support_system_state->setTimeOfCommunication(
r5pars_.timesno);
267 str = (*commands_itr)->support_system_state->translateMessage();
273 else if ((*commands_itr)->parameter_trend != 0) {
274 (*commands_itr)->parameter_trend->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
275 (*commands_itr)->parameter_trend->setTimeOfCommunication(
r5pars_.timesno);
276 str = (*commands_itr)->parameter_trend->translateMessage();
280 }
else if ((*commands_itr)->parameter_value != 0) {
281 (*commands_itr)->parameter_value->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
282 (*commands_itr)->parameter_value->setTimeOfCommunication(
r5pars_.timesno);
283 str = (*commands_itr)->parameter_value->translateMessage();
287 }
else if ((*commands_itr)->parameter_difference != 0) {
288 (*commands_itr)->parameter_difference->first_mental_parameter.setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
289 (*commands_itr)->parameter_difference->second_mental_parameter.setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
290 (*commands_itr)->parameter_difference->setTimeOfCommunication(
r5pars_.timesno);
291 str = (*commands_itr)->parameter_difference->translateMessage();
295 }
else if ((*commands_itr)->procedure_step != 0) {
296 (*commands_itr)->procedure_step->setTimeOfCommunication(
r5pars_.timesno);
297 str = (*commands_itr)->procedure_step->translateMessage();
301 }
else if ((*commands_itr)->instinctive_response_procedure != 0) {
302 (*commands_itr)->instinctive_response_procedure->setTimeOfCommunication(
r5pars_.timesno);
303 str = (*commands_itr)->instinctive_response_procedure->translateMessage();
307 }
else if ((*commands_itr)->info_gather_mode != 0) {
308 (*commands_itr)->info_gather_mode->setTimeOfCommunication(
r5pars_.timesno);
309 str = (*commands_itr)->info_gather_mode->translateMessage();
313 }
else if ((*commands_itr)->HW_reliability != 0) {
314 (*commands_itr)->HW_reliability->setTimeAtWhichThisControlIsActivated(
r5pars_.timesno);
315 (*commands_itr)->HW_reliability->setTimeOfCommunication(
r5pars_.timesno);
316 str = (*commands_itr)->HW_reliability->translateMessage();
320 }
else if ((*commands_itr)->SS_reliability != 0) {
321 (*commands_itr)->SS_reliability->setTimeAtWhichThisControlIsActivated(
r5pars_.timesno);
322 (*commands_itr)->SS_reliability->setTimeOfCommunication(
r5pars_.timesno);
323 str = (*commands_itr)->SS_reliability->translateMessage();
327 }
else if ((*commands_itr)->mental_belief != 0) {
328 (*commands_itr)->mental_belief->setTimeOfCommunication(
r5pars_.timesno);
329 str = (*commands_itr)->mental_belief->translateMessage();
333 }
else if ((*commands_itr)->scanned_parameter != 0) {
334 (*commands_itr)->scanned_parameter->setTimeOfCommunication(
r5pars_.timesno);
335 str = (*commands_itr)->scanned_parameter->translateMessage();
339 }
else if ((*commands_itr)->new_alarm != 0) {
340 (*commands_itr)->new_alarm->setTimeAtWhichThisAlarmIsActivated(
r5pars_.timesno);
343 if ((*commands_itr)->new_alarm->getDisplayedAlarmState() ==
sim::State::On) {
344 str +=
" Actuation ";
348 str += (*commands_itr)->new_alarm->getAlarmName();
354 ofstream fout(
"err messages.txt", ios::app);
355 cout <<
"CommandControlCenter::sendInfoToCommunicationPlace; commands has unrecognizable object" << endl;
357 <<
" CommandControlCenter::sendInfoToCommunicationPlace; commands has unrecognizable object\n";
360 (*commands_itr)->releaseAllMembers();
361 commands_itr =
commands.erase(commands_itr);
369 if ((*commands_itr)->getRemainingTime() <= 0.0 && (*commands_itr)->getStateOfActivation() ==
sim::None) {
371 if ((*commands_itr)->goal != 0) {
372 (*commands_itr)->goal->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
373 (*commands_itr)->goal->setTimeOfCommunication(
r5pars_.timesno);
374 str = (*commands_itr)->goal->translateMessage();
378 }
else if ((*commands_itr)->strategy != 0) {
379 (*commands_itr)->strategy->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
380 (*commands_itr)->strategy->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
381 str = (*commands_itr)->strategy->translateMessage();
385 }
else if ((*commands_itr)->subgoal != 0) {
386 (*commands_itr)->subgoal->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
387 (*commands_itr)->subgoal->setTimeOfCommunication(
r5pars_.timesno);
388 str = (*commands_itr)->subgoal->translateMessage();
392 }
else if ((*commands_itr)->diagnosis != 0) {
393 (*commands_itr)->diagnosis->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
394 (*commands_itr)->diagnosis->setTimeOfCommunication(
r5pars_.timesno);
395 str = (*commands_itr)->diagnosis->translateMessage();
399 }
else if ((*commands_itr)->action_objective != 0) {
400 (*commands_itr)->action_objective->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
401 (*commands_itr)->action_objective->setTimeOfCommunication(
r5pars_.timesno);
403 }
else if ((*commands_itr)->action_pack != 0) {
404 (*commands_itr)->action_pack->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
405 (*commands_itr)->action_pack->setTimeOfCommunication(
r5pars_.timesno);
407 }
else if ((*commands_itr)->action != 0) {
409 (*commands_itr)->action->setTimeAtWhichThisControlIsActivated(
r5pars_.timesno);
411 (*commands_itr)->action->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
412 (*commands_itr)->action->setTimeOfCommunication(
r5pars_.timesno);
414 str = (*commands_itr)->action->translateMessage();
418 }
else if ((*commands_itr)->alarm_state != 0) {
419 (*commands_itr)->alarm_state->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
420 (*commands_itr)->alarm_state->setTimeOfCommunication(
r5pars_.timesno);
421 str = (*commands_itr)->alarm_state->translateMessage();
425 }
else if ((*commands_itr)->component_state != 0) {
426 (*commands_itr)->component_state->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
427 (*commands_itr)->component_state->setTimeOfCommunication(
r5pars_.timesno);
428 str = (*commands_itr)->component_state->translateMessage();
432 }
else if ((*commands_itr)->support_system_state != 0) {
433 (*commands_itr)->support_system_state->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
434 (*commands_itr)->support_system_state->setTimeOfCommunication(
r5pars_.timesno);
435 str = (*commands_itr)->support_system_state->translateMessage();
441 else if ((*commands_itr)->parameter_trend != 0) {
442 (*commands_itr)->parameter_trend->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
443 (*commands_itr)->parameter_trend->setTimeOfCommunication(
r5pars_.timesno);
444 str = (*commands_itr)->parameter_trend->translateMessage();
450 else if ((*commands_itr)->parameter_value != 0) {
451 (*commands_itr)->parameter_value->setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
452 (*commands_itr)->parameter_value->setTimeOfCommunication(
r5pars_.timesno);
453 str = (*commands_itr)->parameter_value->translateMessage();
457 }
else if ((*commands_itr)->parameter_difference != 0) {
458 (*commands_itr)->parameter_difference->first_mental_parameter.setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
459 (*commands_itr)->parameter_difference->second_mental_parameter.setTimeAtWhichThisInfoIsPerceived(
r5pars_.timesno);
460 (*commands_itr)->parameter_difference->setTimeOfCommunication(
r5pars_.timesno);
461 str = (*commands_itr)->parameter_difference->translateMessage();
465 }
else if ((*commands_itr)->procedure_step != 0) {
466 (*commands_itr)->procedure_step->setTimeOfCommunication(
r5pars_.timesno);
467 str = (*commands_itr)->procedure_step->translateMessage();
471 }
else if ((*commands_itr)->instinctive_response_procedure != 0) {
472 (*commands_itr)->instinctive_response_procedure->setTimeOfCommunication(
r5pars_.timesno);
473 str = (*commands_itr)->instinctive_response_procedure->translateMessage();
477 }
else if ((*commands_itr)->info_gather_mode != 0) {
478 (*commands_itr)->info_gather_mode->setTimeOfCommunication(
r5pars_.timesno);
479 str = (*commands_itr)->info_gather_mode->translateMessage();
483 }
else if ((*commands_itr)->mental_belief != 0) {
484 (*commands_itr)->mental_belief->setTimeOfCommunication(
r5pars_.timesno);
485 str = (*commands_itr)->mental_belief->translateMessage();
489 }
else if ((*commands_itr)->scanned_parameter != 0) {
490 (*commands_itr)->scanned_parameter->setTimeOfCommunication(
r5pars_.timesno);
491 str = (*commands_itr)->scanned_parameter->translateMessage();
495 }
else if ((*commands_itr)->HW_reliability != 0) {
496 (*commands_itr)->HW_reliability->setTimeAtWhichThisControlIsActivated(
r5pars_.timesno);
497 (*commands_itr)->HW_reliability->setTimeOfCommunication(
r5pars_.timesno);
498 str = (*commands_itr)->HW_reliability->translateMessage();
502 }
else if ((*commands_itr)->SS_reliability != 0) {
503 (*commands_itr)->SS_reliability->setTimeAtWhichThisControlIsActivated(
r5pars_.timesno);
504 (*commands_itr)->SS_reliability->setTimeOfCommunication(
r5pars_.timesno);
505 str = (*commands_itr)->SS_reliability->translateMessage();
509 }
else if ((*commands_itr)->new_alarm != 0) {
510 (*commands_itr)->new_alarm->setTimeAtWhichThisAlarmIsActivated(
r5pars_.timesno);
513 if ((*commands_itr)->new_alarm->getDisplayedAlarmState() ==
sim::State::On) {
514 str +=
" Actuation ";
518 str += (*commands_itr)->new_alarm->getAlarmName();
524 ofstream fout(
"err messages.txt", ios::app);
525 cout <<
"CommandControlCenter::sendInfoToCommunicationPlace; commands_residual has unrecognizable object"
526 <<
" ptr=" << (
void*)(*commands_itr).get()
527 <<
" goal=" << (
void*)(*commands_itr)->goal.get()
528 <<
" strategy=" << (
void*)(*commands_itr)->strategy.get()
529 <<
" subgoal=" << (
void*)(*commands_itr)->subgoal.get()
530 <<
" diagnosis=" << (
void*)(*commands_itr)->diagnosis.get()
531 <<
" action=" << (
void*)(*commands_itr)->action.get()
532 <<
" procedure_step=" << (
void*)(*commands_itr)->procedure_step.get()
533 <<
" HW_reliability=" << (
void*)(*commands_itr)->HW_reliability.get()
534 <<
" SS_reliability=" << (
void*)(*commands_itr)->SS_reliability.get()
535 <<
" remainingTime=" << (*commands_itr)->getRemainingTime()
536 <<
" branchID=" << (*commands_itr)->getAssociatedBranchID()
539 <<
" CommandControlCenter::sendInfoToCommunicationPlace; commands_residual has unrecognizable object\n";
545 }
else if ((*commands_itr)->getRemainingTime() <= 0.0) {
572 auto ptr = make_unique<CommandControlUnit>();
573 ptr->copyCommandControlUnit(*src);
578 auto ptr = make_unique<CommandControlUnit>();
579 ptr->copyCommandControlUnit(*src);
587 auto ptr = make_unique<CommandControlUnit>();
588 ptr->copyCommandControlUnit(*src);
593 fout <<
"CommandControlCenter\n" <<
commands.size() <<
' ';
595 c->saveCommandControlUnitToFile(fout);
599 c->saveCommandControlUnitToFile(fout);
607 if (str !=
"CommandControlCenter") {
608 ofstream fout(
"err messages.txt", ios::app);
609 cout <<
"CommandControlCenter::retrieveCommandControlCenterFromFile retrieval error in previous function" << endl;
611 <<
" CommandControlCenter::retrieveCommandControlCenterFromFile retrieval error in previous function\n";
619 for (i = 0; i < num; i++) {
620 auto ptr = make_unique<CommandControlUnit>();
621 ptr->retrieveCommandControlUnitFromFile(fin);
626 for (i = 0; i < num; i++) {
627 auto ptr = make_unique<CommandControlUnit>();
628 ptr->retrieveCommandControlUnitFromFile(fin);
645 cout <<
" " <<
r5pars_.timesno <<
" " << strInformation << endl;
Command/control dispatch — routes crew decisions to plant actions and branch generation.
SimulationContext g_sim
Global simulation context: the single instance, defined in SimulationContext.cpp.
void addRecord(std::string, int)
void setTempTypeOfConsequence(Consequence)
Stores the consequence of the end state the running sequence will get.
void setTempESMessage(std::string)
Stores the description of the end state the running sequence will get if it is terminated (set by mod...
std::vector< std::shared_ptr< BranchSubGoal > > subgoal
std::vector< std::shared_ptr< BranchExpectedParameterTrend > > parameter_trend
std::vector< std::shared_ptr< BranchInfoGatherMode > > info_gather_mode
std::vector< std::shared_ptr< BranchProcedureStep > > instinctive_response_procedure
std::vector< std::shared_ptr< BranchGoal > > goal
std::vector< std::shared_ptr< BranchActionPack > > action_pack
std::vector< std::shared_ptr< BranchExpectedSupportSystemState > > support_system_state
std::vector< std::shared_ptr< BranchExpectedParameterDifference > > parameter_difference
std::vector< std::shared_ptr< BranchDiagnosis > > diagnosis
std::vector< std::shared_ptr< BranchExpectedMentalBelief > > mental_belief
std::vector< std::shared_ptr< BranchExpectedParameterValue > > parameter_value
std::vector< std::shared_ptr< BranchScannedParameter > > scanned_parameter
std::vector< std::shared_ptr< BranchExpectedComponentState > > component_state
std::vector< std::shared_ptr< BranchStrategy > > strategy
std::vector< std::shared_ptr< BranchProcedureStep > > procedure_step
std::vector< std::shared_ptr< BranchExpectedAlarmState > > alarm_state
std::vector< std::shared_ptr< BranchAction > > action
std::vector< std::shared_ptr< BranchActionObjective > > action_objective
void addNewAlarm(const std::shared_ptr< BranchSystemAlarmState > &, int)
void addSubGoal(const std::shared_ptr< BranchSubGoal > &, int)
void addExpectedParameterTrend(const std::shared_ptr< BranchExpectedParameterTrend > &, int)
void addDiagnosis(const std::shared_ptr< BranchDiagnosis > &, int)
void addActionObjective(const std::shared_ptr< BranchActionObjective > &, int)
void sendInfoToCommunicationPlace()
void addExpectedParameterValue(const std::shared_ptr< BranchExpectedParameterValue > &, int)
void reduceRemainingTime(double)
void addActionPack(const std::shared_ptr< BranchActionPack > &, int)
void addExpectedComponentState(const std::shared_ptr< BranchExpectedComponentState > &, int)
void clearCommandControlCenter()
void copyCommandControlCenterToRestartInfo(CommandControlCenter &)
void clearCommandControlCenteFromSimulation()
void addExpectedSupportSystemState(const std::shared_ptr< BranchExpectedSupportSystemState > &, int)
virtual ~CommandControlCenter()
std::list< std::unique_ptr< CommandControlUnit > > commands_residual
void addSSReliability(const std::shared_ptr< BranchSupportSystemAction > &, int)
void clearCommandControlCenteFromRestartInfo()
void addHWReliability(const std::shared_ptr< BranchSystemAction > &, int)
void addAction(const std::shared_ptr< BranchAction > &, int)
void displayInformation(std::string strInformation)
std::list< std::unique_ptr< CommandControlUnit > > commands
void saveCommandControlCenterToFile(std::ofstream &)
void addExpectedAlarmState(const std::shared_ptr< BranchExpectedAlarmState > &, int)
void copyCommandControlCenterFromRestartInfo(CommandControlCenter &)
void retrieveCommandControlCenterFromFile(std::ifstream &)
void addMentalBelief(const std::shared_ptr< BranchExpectedMentalBelief > &, int)
void addExpectedParameterDifference(const std::shared_ptr< BranchExpectedParameterDifference > &, int)
void clearCommandControlCenteForRestart()
void addStrategy(const std::shared_ptr< BranchStrategy > &, int)
void clearCommandControlCentePointer()
void addInstinctiveResponseProcedure(const std::shared_ptr< BranchProcedureStep > &, int)
void addScannedParameter(const std::shared_ptr< BranchScannedParameter > &, int)
void addInfoGatherMode(const std::shared_ptr< BranchInfoGatherMode > &, int)
void addProcedureStep(const std::shared_ptr< BranchProcedureStep > &, int)
void addGoal(const std::shared_ptr< BranchGoal > &, int)
std::vector< std::shared_ptr< BranchSystemAction > > HW_reliability
std::vector< std::shared_ptr< BranchSystemAlarmState > > new_alarm
std::vector< std::shared_ptr< BranchSupportSystemAction > > SS_reliability
CommunicationPlace Communication_place
Inter-module communication.
AnalysisInfoContainer Aux_info
Analysis records.
BranchRecord Branch_center
Dynamic event tree state.