00001 #ifndef __AIRRAC_AIRRAC_TYPES_HPP 00002 #define __AIRRAC_AIRRAC_TYPES_HPP 00003 00004 // ////////////////////////////////////////////////////////////////////// 00005 // Import section 00006 // ////////////////////////////////////////////////////////////////////// 00007 // STL 00008 #include <vector> 00009 #include <string> 00010 // StdAir 00011 #include <stdair/stdair_exceptions.hpp> 00012 00013 namespace AIRRAC { 00014 00015 // ///////// Exceptions /////////// 00016 class AirportPairNotFoundException : public stdair::ObjectNotFoundException { 00017 public: 00019 AirportPairNotFoundException (const std::string& iWhat) 00020 : stdair::ObjectNotFoundException (iWhat) {} 00021 }; 00022 00023 class PosOrChannelNotFoundException : public stdair::ObjectNotFoundException { 00024 public: 00026 PosOrChannelNotFoundException (const std::string& iWhat) 00027 : stdair::ObjectNotFoundException (iWhat) {} 00028 }; 00029 00030 class FlightDateNotFoundException : public stdair::ObjectNotFoundException { 00031 public: 00033 FlightDateNotFoundException (const std::string& iWhat) 00034 : stdair::ObjectNotFoundException (iWhat) {} 00035 }; 00036 00037 class FlightTimeNotFoundException : public stdair::ObjectNotFoundException { 00038 public: 00040 FlightTimeNotFoundException (const std::string& iWhat) 00041 : stdair::ObjectNotFoundException (iWhat) {} 00042 }; 00043 00044 class FeaturesNotFoundException : public stdair::ObjectNotFoundException { 00045 public: 00047 FeaturesNotFoundException (const std::string& iWhat) 00048 : stdair::ObjectNotFoundException (iWhat) {} 00049 }; 00050 00051 class AirlineNotFoundException : public stdair::ObjectNotFoundException { 00052 public: 00054 AirlineNotFoundException (const std::string& iWhat) 00055 : stdair::ObjectNotFoundException (iWhat) {} 00056 }; 00057 00058 class YieldInputFileNotFoundException : public stdair::FileNotFoundException { 00059 public: 00061 YieldInputFileNotFoundException (const std::string& iWhat) 00062 : stdair::FileNotFoundException (iWhat) {} 00063 }; 00064 00065 class YieldFileParsingFailedException : public stdair::ParsingFileFailedException { 00066 public: 00068 YieldFileParsingFailedException (const std::string& iWhat) 00069 : stdair::ParsingFileFailedException (iWhat) {} 00070 }; 00071 00072 class QuotingException : public stdair::RootException { 00073 }; 00074 00075 // //////// Type definitions specific to AirRAC ///////// 00079 class AIRRAC_Service; 00080 typedef boost::shared_ptr<AIRRAC_Service> AIRRAC_ServicePtr_T; 00081 00082 00086 typedef unsigned int YieldID_T; 00087 } 00088 #endif // __AIRRAC_AIRRAC_TYPES_HPP 00089