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

stdair/command/CmdCloneBomManager.hpp

Go to the documentation of this file.
00001 #ifndef __STDAIR_CMD_CMDCLONEBOMMANAGER_HPP
00002 #define __STDAIR_CMD_CMDCLONEBOMMANAGER_HPP
00003 
00004 // //////////////////////////////////////////////////////////////////////
00005 // Import section
00006 // //////////////////////////////////////////////////////////////////////
00007 // STL
00008 #include <iosfwd>
00009 // StdAir
00010 #include <stdair/command/CmdAbstract.hpp>
00011 // StdAir Bom
00012 #include <stdair/bom/BomRoot.hpp>
00013 #include <stdair/bom/Inventory.hpp>
00014 #include <stdair/bom/AirlineFeature.hpp>
00015 #include <stdair/bom/OnDDate.hpp>
00016 #include <stdair/bom/FlightDate.hpp>
00017 #include <stdair/bom/LegDate.hpp>
00018 #include <stdair/bom/LegCabin.hpp>
00019 #include <stdair/bom/Bucket.hpp>
00020 #include <stdair/bom/SegmentDate.hpp>
00021 #include <stdair/bom/SegmentCabin.hpp>
00022 #include <stdair/bom/FareFamily.hpp>
00023 #include <stdair/bom/BookingClass.hpp>
00024 #include <stdair/bom/AirportPair.hpp>
00025 #include <stdair/bom/PosChannel.hpp>
00026 #include <stdair/bom/DatePeriod.hpp>
00027 #include <stdair/bom/TimePeriod.hpp>
00028 #include <stdair/bom/FareFeatures.hpp>
00029 #include <stdair/bom/YieldFeatures.hpp>
00030 #include <stdair/bom/AirlineClassList.hpp>
00031 #include <stdair/bom/SegmentPeriod.hpp>
00032 #include <stdair/bom/FlightPeriod.hpp>
00033 
00034 namespace stdair {
00035 
00040   class CmdCloneBomManager : public CmdAbstract {
00041     //
00042     friend class STDAIR_Service;
00043   private:
00044   
00051     static void cloneBomRoot (const BomRoot&, BomRoot&);
00052  
00061     static Inventory& cloneInventory (const Inventory&, BomRoot&);
00062 
00070     static AirlineFeature& cloneAirlineFeature (const AirlineFeature&);
00071   
00079     static OnDDate& cloneOnDDate (const OnDDate&);
00080   
00088     static FlightDate& cloneFlightDate (const FlightDate&);  
00089  
00097     static LegDate& cloneLegDate (const LegDate&);
00098   
00106     static LegCabin& cloneLegCabin (const LegCabin&);
00107  
00115     static Bucket& cloneBucket (const Bucket&);
00116  
00124     static SegmentDate& cloneSegmentDate (const SegmentDate&); 
00125 
00133     static void linkBookingClassesWithSegment (SegmentDate&,
00134                                                SegmentCabin&);
00135  
00143     static SegmentCabin& cloneSegmentCabin (const SegmentCabin&);
00144   
00152     static FareFamily& cloneFareFamily (const FareFamily&);
00153      
00161     static BookingClass& cloneBookingClass (const BookingClass&);
00162     
00170     static AirportPair& cloneAirportPair (const AirportPair&);
00171   
00179     static PosChannel& clonePosChannel (const PosChannel&);
00180       
00188     static DatePeriod& cloneDatePeriod (const DatePeriod&);
00189       
00197     static TimePeriod& cloneTimePeriod (const TimePeriod&);
00198        
00206     template <typename FEATURE_TYPE>
00207     static FEATURE_TYPE& cloneFeatures (const FEATURE_TYPE&);
00208        
00216     static AirlineClassList& cloneAirlineClassList (const AirlineClassList&);
00217   
00225     static FlightPeriod& cloneFlightPeriod (const FlightPeriod&);
00226 
00234     static SegmentPeriod& cloneSegmentPeriod (const SegmentPeriod&);
00235 
00236   };
00237 }
00238 #endif // ___STDAIR_CMD_CMDCLONEBOMMANAGER_HPP