1.00.26
C++ Standard Airline IT Object Library
Toggle main menu visibility
Loading...
Searching...
No Matches
FlightDateKey.cpp
Go to the documentation of this file.
1
// //////////////////////////////////////////////////////////////////////
2
// Import section
3
// //////////////////////////////////////////////////////////////////////
4
// STL
5
#include <cassert>
6
#include <sstream>
7
// Boost Date-Time
8
#include <boost/date_time/gregorian/formatters.hpp>
9
// Boost.Serialization
10
#include <boost/archive/text_iarchive.hpp>
11
#include <boost/archive/text_oarchive.hpp>
12
#include <boost/serialization/access.hpp>
13
// StdAir
14
#include <
stdair/basic/BasConst_Inventory.hpp
>
15
#include <
stdair/basic/BasConst_BomDisplay.hpp
>
16
#include <
stdair/bom/FlightDateKey.hpp
>
17
18
namespace
stdair
{
19
20
// ////////////////////////////////////////////////////////////////////
21
FlightDateKey::FlightDateKey()
22
: _flightNumber (
DEFAULT_FLIGHT_NUMBER
),
23
_departureDate (
DEFAULT_DEPARTURE_DATE
) {
24
assert (
false
);
25
}
26
27
// ////////////////////////////////////////////////////////////////////
28
FlightDateKey::FlightDateKey (
const
FlightNumber_T
& iFlightNumber,
29
const
Date_T
& iFlightDate)
30
: _flightNumber (iFlightNumber), _departureDate (iFlightDate) {
31
}
32
33
// ////////////////////////////////////////////////////////////////////
34
FlightDateKey::FlightDateKey (
const
FlightDateKey& iKey)
35
: _flightNumber (iKey._flightNumber), _departureDate (iKey._departureDate) {
36
}
37
38
// ////////////////////////////////////////////////////////////////////
39
FlightDateKey::~FlightDateKey
() {
40
}
41
42
// ////////////////////////////////////////////////////////////////////
43
void
FlightDateKey::toStream
(std::ostream& ioOut)
const
{
44
ioOut <<
"FlightDateKey: "
<<
toString
();
45
}
46
47
// ////////////////////////////////////////////////////////////////////
48
void
FlightDateKey::fromStream
(std::istream& ioIn) {
49
}
50
51
// ////////////////////////////////////////////////////////////////////
52
const
std::string
FlightDateKey::toString
()
const
{
53
std::ostringstream oStr;
54
const
std::string& lDepartureDateStr =
55
boost::gregorian::to_iso_extended_string (_departureDate);
56
oStr << _flightNumber
57
<<
DEFAULT_KEY_SUB_FLD_DELIMITER
<<
" "
<< lDepartureDateStr;
58
return
oStr.str();
59
}
60
61
// ////////////////////////////////////////////////////////////////////
62
void
FlightDateKey::serialisationImplementationExport()
const
{
63
std::ostringstream oStr;
64
boost::archive::text_oarchive oa (oStr);
65
oa << *
this
;
66
}
67
68
// ////////////////////////////////////////////////////////////////////
69
void
FlightDateKey::serialisationImplementationImport() {
70
std::istringstream iStr;
71
boost::archive::text_iarchive ia (iStr);
72
ia >> *
this
;
73
}
74
75
// ////////////////////////////////////////////////////////////////////
76
template
<
class
Archive>
77
void
FlightDateKey::serialize
(Archive& ioArchive,
78
const
unsigned
int
iFileVersion) {
83
std::string lDepartureDateStr =
84
boost::gregorian::to_simple_string (_departureDate);
85
ioArchive & _flightNumber & lDepartureDateStr;
86
}
87
88
// ////////////////////////////////////////////////////////////////////
89
// Explicit template instantiation
90
namespace
ba =
boost::archive
;
91
template
void
FlightDateKey::serialize<ba::text_oarchive>
(ba::text_oarchive&,
92
unsigned
int
);
93
template
void
FlightDateKey::serialize<ba::text_iarchive>
(ba::text_iarchive&,
94
unsigned
int
);
95
// ////////////////////////////////////////////////////////////////////
96
97
}
BasConst_BomDisplay.hpp
BasConst_Inventory.hpp
FlightDateKey.hpp
stdair
Handle on the StdAir library context.
Definition
BasChronometer.cpp:9
stdair::Date_T
boost::gregorian::date Date_T
Definition
stdair_date_time_types.hpp:20
stdair::DEFAULT_KEY_SUB_FLD_DELIMITER
const std::string DEFAULT_KEY_SUB_FLD_DELIMITER
stdair::FlightNumber_T
unsigned short FlightNumber_T
Definition
stdair_basic_types.hpp:34
stdair::DEFAULT_DEPARTURE_DATE
const Date_T DEFAULT_DEPARTURE_DATE
stdair::DEFAULT_FLIGHT_NUMBER
const FlightNumber_T DEFAULT_FLIGHT_NUMBER
boost::archive
Definition
FlightDate.hpp:21
stdair::FlightDateKey::fromStream
void fromStream(std::istream &ioIn)
Definition
FlightDateKey.cpp:48
stdair::FlightDateKey::toString
const std::string toString() const
Definition
FlightDateKey.cpp:52
stdair::FlightDateKey::serialize
void serialize(Archive &ar, const unsigned int iFileVersion)
Definition
FlightDateKey.cpp:77
stdair::FlightDateKey::toStream
void toStream(std::ostream &ioOut) const
Definition
FlightDateKey.cpp:43
stdair::FlightDateKey::~FlightDateKey
~FlightDateKey()
Definition
FlightDateKey.cpp:39
Generated for StdAir by
1.17.0