$treeview $search $mathjax
StdAir Logo  1.00.1
$projectbrief
$projectbrief
$searchbox

stdair/bom/AirportPair.hpp

Go to the documentation of this file.
00001 #ifndef __STDAIR_BOM_AIRPORTPAIR_HPP
00002 #define __STDAIR_BOM_AIRPORTPAIR_HPP
00003 
00004 // //////////////////////////////////////////////////////////////////////
00005 // Import section
00006 // //////////////////////////////////////////////////////////////////////
00007 // STDAIR
00008 #include <stdair/bom/BomAbstract.hpp>
00009 #include <stdair/bom/AirportPairKey.hpp>
00010 #include <stdair/bom/AirportPairTypes.hpp>
00011 
00012 // Forward declaration
00013 namespace stdair {
00014 
00018   class AirportPair : public BomAbstract {
00019     template <typename BOM> friend class FacBom;    
00020     template <typename BOM> friend class FacCloneBom;
00021     friend class FacBomManager; 
00022 
00023   public:
00024     // //////////// Type definitions //////////////
00028     typedef AirportPairKey Key_T;
00029   
00030   public:
00031     // /////////// Display support methods /////////
00037     void toStream (std::ostream& ioOut) const {
00038       ioOut << toString();
00039     }
00040 
00046     void fromStream (std::istream& ioIn) {
00047     }
00048 
00052     std::string toString() const;
00053     
00057     const std::string describeKey() const {
00058       return _key.toString();
00059     }
00060 
00061   public:
00062     // ////////// Getters ////////////
00066     const Key_T& getKey() const {
00067       return _key;
00068     }
00069     
00073     const AirportCode_T& getBoardingPoint() const {
00074       return _key.getBoardingPoint();
00075     }
00076 
00080     const AirportCode_T& getOffPoint() const {
00081       return _key.getOffPoint();
00082     }
00083 
00087     BomAbstract* const getParent() const {
00088       return _parent;
00089     }
00090 
00094     const HolderMap_T& getHolderMap() const {
00095       return _holderMap;
00096     }
00097     
00098   protected:
00099     // ////////// Constructors and destructors /////////
00103     AirportPair (const Key_T&);  
00107     virtual ~AirportPair();
00108 
00109   private:
00113     AirportPair(); 
00117     AirportPair (const AirportPair&);
00118 
00119   protected:
00120     // ///////////// Attributes /////////////
00124     Key_T _key;
00125 
00129     BomAbstract* _parent;
00130 
00134     HolderMap_T _holderMap;
00135 
00136   };
00137 
00138 }
00139 #endif // __STDAIR_BOM_AIRPORTPAIR_HPP
00140