OpenTREP Logo  0.07.4
C++ Open Travel Request Parsing Library
CityDetails.hpp
Go to the documentation of this file.
1 #ifndef __OPENTREP_CITYDETAILS_HPP
2 #define __OPENTREP_CITYDETAILS_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STL
8 #include <iosfwd>
9 #include <string>
10 // OpenTrep
13 #include <opentrep/IATAType.hpp>
14 
15 namespace OPENTREP {
16 
28  struct CityDetails : public OPENTREP_Abstract {
29  public:
30  // //////////////// Getters ///////////////
34  const IATACode_T& getIataCode() const {
35  return _iataCode;
36  }
37 
41  const GeonamesID_T& getGeonamesID() const {
42  return _geonamesID;
43  }
44 
48  const CityUTFName_T& getUtfName() const {
49  return _utfName;
50  }
51 
56  const CityASCIIName_T& getAsciiName() const {
57  return _asciiName;
58  }
59 
60 
61  public:
62  // ////////////////// Setters /////////////////
66  void setIataCode (const std::string& iIataCode) {
67  _iataCode = IATACode_T (iIataCode);
68  }
69 
73  void setGeonamesID (const GeonamesID_T& iGeonamesID) {
74  _geonamesID = iGeonamesID;
75  }
76 
80  void setUtfName (const CityUTFName_T& iUtfName) {
81  _utfName = iUtfName;
82  }
83 
88  void setAsciiName (const CityASCIIName_T& iAsciiName) {
89  _asciiName = iAsciiName;
90  }
91 
92 
93  public:
94  // ////////////// Display methods //////////////
100  void toStream (std::ostream&) const;
101 
107  void fromStream (std::istream&);
108 
112  std::string toString() const;
113 
118  std::string describe() const;
119 
120 
121  public:
122  // ////////////// Constructors and destructors //////////////
126  CityDetails (const IATACode_T&, const GeonamesID_T&,
127  const CityUTFName_T&, const CityASCIIName_T&);
128 
132  CityDetails (const CityDetails&);
133 
137  ~CityDetails();
138 
142  bool operator== (const CityDetails&) const;
143 
147  bool operator!= (const CityDetails& iCityDetails) const {
148  return !(iCityDetails == *this);
149  }
150 
151  private:
155  CityDetails();
156 
157 
158  private:
159  // //////////////////// Attributes ///////////////////////
165  IATACode_T _iataCode;
166 
173  GeonamesID_T _geonamesID;
174 
178  CityUTFName_T _utfName;
179 
184  CityASCIIName_T _asciiName;
185  };
186 
187 }
188 #endif // __OPENTREP_CITYDETAILS_HPP
OPENTREP::CityDetails::operator==
bool operator==(const CityDetails &) const
Definition: CityDetails.cpp:39
OPENTREP::CityDetails::toString
std::string toString() const
Definition: CityDetails.cpp:57
OPENTREP::CityUTFName_T
Definition: OPENTREP_Types.hpp:327
OPENTREP::CityDetails::getAsciiName
const CityASCIIName_T & getAsciiName() const
Definition: CityDetails.hpp:56
OPENTREP::CityDetails::getUtfName
const CityUTFName_T & getUtfName() const
Definition: CityDetails.hpp:48
OPENTREP::CityDetails::setUtfName
void setUtfName(const CityUTFName_T &iUtfName)
Definition: CityDetails.hpp:80
OPENTREP::CityDetails::fromStream
void fromStream(std::istream &)
Definition: CityDetails.cpp:69
OPENTREP::IATACode_T
Definition: OPENTREP_Types.hpp:154
IATAType.hpp
OPENTREP
Definition: BasChronometer.cpp:10
OPENTREP::OPENTREP_Abstract
Definition: OPENTREP_Abstract.hpp:16
OPENTREP::CityDetails::getIataCode
const IATACode_T & getIataCode() const
Definition: CityDetails.hpp:34
OPENTREP_Abstract.hpp
OPENTREP::CityDetails::setGeonamesID
void setGeonamesID(const GeonamesID_T &iGeonamesID)
Definition: CityDetails.hpp:73
OPENTREP::CityDetails::setAsciiName
void setAsciiName(const CityASCIIName_T &iAsciiName)
Definition: CityDetails.hpp:88
OPENTREP::CityDetails::describe
std::string describe() const
Definition: CityDetails.cpp:48
OPENTREP::CityDetails::setIataCode
void setIataCode(const std::string &iIataCode)
Definition: CityDetails.hpp:66
OPENTREP::CityDetails::toStream
void toStream(std::ostream &) const
Definition: CityDetails.cpp:64
OPENTREP::CityASCIIName_T
Definition: OPENTREP_Types.hpp:336
OPENTREP::CityDetails::~CityDetails
~CityDetails()
Definition: CityDetails.cpp:35
OPENTREP::CityDetails::operator!=
bool operator!=(const CityDetails &iCityDetails) const
Definition: CityDetails.hpp:147
OPENTREP_Types.hpp
OPENTREP::CityDetails::getGeonamesID
const GeonamesID_T & getGeonamesID() const
Definition: CityDetails.hpp:41
OPENTREP::GeonamesID_T
unsigned int GeonamesID_T
Definition: OPENTREP_Types.hpp:182
OPENTREP::CityDetails
Class modelling the elementary details of a city.
Definition: CityDetails.hpp:28