← Documentation
ADS-IDAC Engine 5.0.0
BranchAction.h
Go to the documentation of this file.
1#pragma once
2
3#include <iostream>
4#include <typeinfo>
5// BranchAction.h: interface for the BranchAction class.
6//
8
9#include <fstream>
10#include <string.h>
11#include <boost/serialization/export.hpp>
12
13#include "../Crew/Communication.h"
14#include "../Crew/DecisionAction.h"
15#include "../CalculationAid/TimerAndProbability.h"
16#include "../Global/StringContainer.h"
17
18#include <boost/archive/text_oarchive.hpp>
19#include <boost/archive/text_iarchive.hpp>
20#include <boost/serialization/base_object.hpp>
21#include <boost/serialization/string.hpp>
22
23
25 public DecisionAction,
26 public TimerAndProbability,
27 public Communication,
28 public StringContainer
29{
30public:
32 virtual ~BranchAction();
34 void saveInfoToFile(std::ostream &);
35 std::string translateMessage();
36 void saveBranchActionToFile(std::ofstream &);
37 void retrieveBranchActionFromFile(std::ifstream &);
38 void setActionTime(double);
39 double getActionTime();
41 template<class Archive>
42 void serialize(Archive & ar, const unsigned int version)
43 {
44// std::cout << "Serializing class: " << typeid(*this).name() << std::endl;
45 ar & boost::serialization::base_object<DecisionAction>(*this);
46 ar & boost::serialization::base_object<TimerAndProbability>(*this);
47 ar & boost::serialization::base_object<Communication>(*this);
48 ar & boost::serialization::base_object<StringContainer>(*this);
49 ar & action_time;
50 }
51private:
53};
54
55
56BOOST_CLASS_EXPORT_KEY(BranchAction)
void copyBranchAction(BranchAction &)
void saveBranchActionToFile(std::ofstream &)
std::string translateMessage()
virtual ~BranchAction()
double action_time
Definition: BranchAction.h:52
void retrieveBranchActionFromFile(std::ifstream &)
void serialize(Archive &ar, const unsigned int version)
Definition: BranchAction.h:42
friend class boost::serialization::access
Definition: BranchAction.h:40
void setActionTime(double)
double getActionTime()
void saveInfoToFile(std::ostream &)