OpenTREP Logo  0.07.4
C++ Open Travel Request Parsing Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
CityDetails.cpp
Go to the documentation of this file.
1 // //////////////////////////////////////////////////////////////////////
2 // Import section
3 // //////////////////////////////////////////////////////////////////////
4 // STL
5 #include <cassert>
6 // OpenTrep
9 
10 namespace OPENTREP {
11 
12  // //////////////////////////////////////////////////////////////////////
13  CityDetails::CityDetails (const IATACode_T& iIataCode,
14  const GeonamesID_T& iGeonamesID,
15  const CityUTFName_T& iUtfName,
16  const CityASCIIName_T& iAsciiName) :
17  _iataCode (iIataCode), _geonamesID (iGeonamesID),
18  _utfName (iUtfName), _asciiName (iAsciiName) {
19  }
20 
21  // //////////////////////////////////////////////////////////////////////
22  CityDetails::CityDetails() :
23  _iataCode (IATACode_T ("")), _geonamesID (0),
24  _utfName (""), _asciiName ("") {
25  assert (false);
26  }
27 
28  // //////////////////////////////////////////////////////////////////////
29  CityDetails::CityDetails (const CityDetails& iCityDetails) :
30  _iataCode (iCityDetails._iataCode), _geonamesID (iCityDetails._geonamesID),
31  _utfName (iCityDetails._utfName), _asciiName (iCityDetails._asciiName) {
32  }
33 
34  // //////////////////////////////////////////////////////////////////////
36  }
37 
38  // //////////////////////////////////////////////////////////////////////
39  bool CityDetails::operator== (const CityDetails& iCityDetails) const {
40  const bool areEqual = (_iataCode == iCityDetails._iataCode
41  && _geonamesID == iCityDetails._geonamesID
42  && _utfName == iCityDetails._utfName
43  && _asciiName == iCityDetails._asciiName);
44  return areEqual;
45  }
46 
47  // //////////////////////////////////////////////////////////////////////
48  std::string CityDetails::describe() const {
49  std::ostringstream oStr;
50  oStr << _iataCode << "|" << _geonamesID
51  << "|" << _utfName << "|" << _asciiName;
52 
53  return oStr.str();
54  }
55 
56  // //////////////////////////////////////////////////////////////////////
57  std::string CityDetails::toString() const {
58  std::ostringstream oStr;
59  oStr << describe();
60  return oStr.str();
61  }
62 
63  // //////////////////////////////////////////////////////////////////////
64  void CityDetails::toStream (std::ostream& ioOut) const {
65  ioOut << toString();
66  }
67 
68  // //////////////////////////////////////////////////////////////////////
69  void CityDetails::fromStream (std::istream& ioIn) {
70  }
71 
72 }
Class modelling the elementary details of a city.
Definition: CityDetails.hpp:28
unsigned int GeonamesID_T
bool operator==(const CityDetails &) const
Definition: CityDetails.cpp:39
void toStream(std::ostream &) const
Definition: CityDetails.cpp:64
void fromStream(std::istream &)
Definition: CityDetails.cpp:69
std::string describe() const
Definition: CityDetails.cpp:48
std::string toString() const
Definition: CityDetails.cpp:57