←
Documentation
ADS-IDAC Engine
5.0.0
BranchDiagnosis.cpp
Go to the documentation of this file.
1
// BranchDiagnosis.cpp: implementation of the BranchDiagnosis class.
2
//
4
5
#include <fstream>
6
#include <sstream>
7
#include <boost/serialization/export.hpp>
8
9
#include "
BranchDiagnosis.h
"
10
#include "../Global/ConvertToString.h"
11
#include "../Global/SimulationContext.h"
12
#include <boost/archive/binary_oarchive.hpp>
13
#include <boost/archive/binary_iarchive.hpp>
14
BOOST_CLASS_EXPORT_IMPLEMENT(
BranchDiagnosis
)
15
using namespace
std;
16
17
19
// Construction/Destruction
21
22
BranchDiagnosis::BranchDiagnosis
() {
23
24
}
25
26
BranchDiagnosis::~BranchDiagnosis
() {
27
28
}
29
void
BranchDiagnosis::copyBranchDiagnosis
(
BranchDiagnosis
&_bdp) {
30
TimerAndProbability::copyTimerAndProbability
((
TimerAndProbability
&) _bdp);
31
DecisionDiagnosis::copyDecisionDiagnosis
((
DecisionDiagnosis
&) _bdp);
32
Communication::copyCommunication
((
Communication
&) _bdp);
33
}
34
string
BranchDiagnosis::translateMessage
() {
35
string
str;
36
str =
"DIAGNOSIS: Sender: "
;
37
str +=
g_sim
.
Translator
.
getString
(this->
getSender
());
38
str +=
"; Receiver: "
;
39
str +=
g_sim
.
Translator
.
getString
(this->
getIntendedReceiver
());
40
str +=
"; Diagnosis: "
;
41
str += this->
getDiagnosis
();
42
if
(this->
getStateOfActivation
() ==
sim::Source::Bypass
) {
43
str +=
" omitted"
;
44
}
45
str +=
"; New Probability: "
;
46
std::ostringstream streamObj;
47
streamObj << this->
getProbability
();
48
str += streamObj.str();
49
return
str;
50
}
51
void
BranchDiagnosis::saveInfoToFile
(ostream &fout) {
52
fout <<
' '
<< this->
getSender
() <<
' '
<<
sim::Decision::Diagnosis
<<
' '
<<
sim::None
<<
' '
<< this->
getDiagnosis
() <<
' '
53
<< this->
getProbability
() <<
' '
54
<< this->
getTimeOfCommunication
() <<
' '
<< this->
getRemainingTime
() <<
' '
<< this->
getConfidenceLevel
()
55
<<
" 0 "
;
56
57
if
(this->
getStateOfActivation
() ==
sim::Source::Bypass
) {
58
fout <<
'"'
<<
"Omitted!_Intended_Receiver:"
<<
g_sim
.
Translator
.
getString
(this->
getIntendedReceiver
()) <<
'"'
<<
'\n'
;
59
}
else
{
60
fout <<
'"'
<<
"Enforced!_Intended_Receiver:"
<<
g_sim
.
Translator
.
getString
(this->
getIntendedReceiver
()) <<
'"'
<<
'\n'
;
61
}
62
}
63
void
BranchDiagnosis::saveBranchDiagnosisToFile
(ofstream &fout) {
64
this->
saveDecisionDiagnosisToFile
(fout);
65
this->
saveTimerAndProbabilityToFile
(fout);
66
this->
saveCommunicationToFile
(fout);
67
}
68
void
BranchDiagnosis::retrieveBranchDiagnosisFromFile
(ifstream &fin) {
69
this->
retrieveDecisionDiagnosisFromFile
(fin);
70
this->
retrieveTimerAndProbabilityFromFile
(fin);
71
this->
retrieveCommunicationFromFile
(fin);
72
}
BranchDiagnosis.h
g_sim
SimulationContext g_sim
Global simulation context: the single instance, defined in SimulationContext.cpp.
Definition:
SimulationContext.cpp:7
BranchDiagnosis
Definition:
BranchDiagnosis.h:22
BranchDiagnosis::BranchDiagnosis
BranchDiagnosis()
Definition:
BranchDiagnosis.cpp:22
BranchDiagnosis::retrieveBranchDiagnosisFromFile
void retrieveBranchDiagnosisFromFile(std::ifstream &)
Definition:
BranchDiagnosis.cpp:68
BranchDiagnosis::translateMessage
std::string translateMessage()
Definition:
BranchDiagnosis.cpp:34
BranchDiagnosis::saveInfoToFile
void saveInfoToFile(std::ostream &)
Definition:
BranchDiagnosis.cpp:51
BranchDiagnosis::~BranchDiagnosis
virtual ~BranchDiagnosis()
Definition:
BranchDiagnosis.cpp:26
BranchDiagnosis::copyBranchDiagnosis
void copyBranchDiagnosis(BranchDiagnosis &)
Definition:
BranchDiagnosis.cpp:29
BranchDiagnosis::saveBranchDiagnosisToFile
void saveBranchDiagnosisToFile(std::ofstream &)
Definition:
BranchDiagnosis.cpp:63
Communication
Definition:
Communication.h:20
Communication::getSender
int getSender()
Definition:
Communication.cpp:43
Communication::getTimeOfCommunication
double getTimeOfCommunication()
Definition:
Communication.cpp:47
Communication::saveCommunicationToFile
void saveCommunicationToFile(std::ofstream &)
Definition:
Communication.cpp:60
Communication::getIntendedReceiver
int getIntendedReceiver()
Definition:
Communication.cpp:44
Communication::retrieveCommunicationFromFile
void retrieveCommunicationFromFile(std::ifstream &)
Definition:
Communication.cpp:65
Communication::copyCommunication
void copyCommunication(Communication &)
Definition:
Communication.cpp:52
ConvertToString::getString
std::string getString(int) const
Definition:
ConvertToString.cpp:190
DecisionDiagnosis
Definition:
DecisionDiagnosis.h:17
DecisionDiagnosis::saveDecisionDiagnosisToFile
void saveDecisionDiagnosisToFile(std::ofstream &)
Definition:
DecisionDiagnosis.cpp:28
DecisionDiagnosis::retrieveDecisionDiagnosisFromFile
void retrieveDecisionDiagnosisFromFile(std::ifstream &)
Definition:
DecisionDiagnosis.cpp:32
DecisionDiagnosis::copyDecisionDiagnosis
void copyDecisionDiagnosis(DecisionDiagnosis &)
Definition:
DecisionDiagnosis.cpp:24
MentalDiagnosis::getDiagnosis
std::string getDiagnosis()
Definition:
MentalDiagnosis.cpp:29
MentalDiagnosis::getConfidenceLevel
double getConfidenceLevel()
Definition:
MentalDiagnosis.cpp:31
Probability::getProbability
double getProbability()
Definition:
Probability.cpp:27
StateOfActivation::getStateOfActivation
int getStateOfActivation()
Definition:
StateOfActivation.cpp:25
TimerAndProbability
Definition:
TimerAndProbability.h:21
TimerAndProbability::saveTimerAndProbabilityToFile
void saveTimerAndProbabilityToFile(std::ofstream &)
Definition:
TimerAndProbability.cpp:34
TimerAndProbability::copyTimerAndProbability
void copyTimerAndProbability(TimerAndProbability &)
Definition:
TimerAndProbability.cpp:30
TimerAndProbability::retrieveTimerAndProbabilityFromFile
void retrieveTimerAndProbabilityFromFile(std::ifstream &)
Definition:
TimerAndProbability.cpp:38
Timer::getRemainingTime
double getRemainingTime()
Definition:
Timer.cpp:31
sim::Decision::Diagnosis
constexpr int Diagnosis
Definition:
SimConstants.h:193
sim::Source::Bypass
constexpr int Bypass
Definition:
SimConstants.h:132
sim::None
constexpr int None
Definition:
SimConstants.h:75
SimulationContext::Translator
ConvertToString Translator
Parameter name/value conversion.
Definition:
SimulationContext.h:52
src
ADSIDAC
Branch
BranchDiagnosis.cpp
Generated by
1.9.4