You can subscribe to this list here.
2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(5) |
Aug
|
Sep
|
Oct
(51) |
Nov
(8) |
Dec
(13) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2010 |
Jan
(32) |
Feb
(47) |
Mar
(6) |
Apr
(19) |
May
(7) |
Jun
(19) |
Jul
(39) |
Aug
(51) |
Sep
(39) |
Oct
(18) |
Nov
(10) |
Dec
(27) |
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <sng...@us...> - 2010-07-13 12:02:02
|
Revision: 220 http://stdair.svn.sourceforge.net/stdair/?rev=220&view=rev Author: snguyenkim Date: 2010-07-13 12:01:56 +0000 (Tue, 13 Jul 2010) Log Message: ----------- [Release] Created the main 0.1.0 release branch, from revision r218. Added Paths: ----------- branches/stdair/0.1.0/main/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sng...@us...> - 2010-07-13 12:01:24
|
Revision: 219 http://stdair.svn.sourceforge.net/stdair/?rev=219&view=rev Author: snguyenkim Date: 2010-07-13 12:01:18 +0000 (Tue, 13 Jul 2010) Log Message: ----------- Prepared the release branch for the 0.1.0 release. Added Paths: ----------- branches/stdair/ branches/stdair/0.1.0/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sng...@us...> - 2010-07-13 11:51:53
|
Revision: 218 http://stdair.svn.sourceforge.net/stdair/?rev=218&view=rev Author: snguyenkim Date: 2010-07-13 11:51:47 +0000 (Tue, 13 Jul 2010) Log Message: ----------- [RPM] Updated the RPM specification file. Modified Paths: -------------- trunk/stdair/stdair.spec.in Modified: trunk/stdair/stdair.spec.in =================================================================== --- trunk/stdair/stdair.spec.in 2010-07-12 15:34:51 UTC (rev 217) +++ trunk/stdair/stdair.spec.in 2010-07-13 11:51:47 UTC (rev 218) @@ -5,33 +5,26 @@ Version: @VERSION@ Release: @RPM_RELEASE@%{?dist} -Summary: C++ library of Revenue Management and Optimisation classes and functions +Summary: C++ Standard Airline IT Object Library Group: System Environment/Libraries License: LGPLv2 URL: http://%{name}.sourceforge.net -Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz +Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -BuildRequires: gsl-devel BuildRequires: boost-devel BuildRequires: cppunit-devel #Requires: %description -@PACKAGE_NAME@ is a C++ library of Revenue Management and Optimisation classes -and functions. Typically, that library may be used by service providers -(e.g., airlines offering flight seats, hotels offering rooms, rental car -companies offering rental days, broadcasting company offering advertisement -slots, theaters offering seats, etc.) to help in optimising their revenues from -seat capacities. -Most of the algorithms implemented are public and documented in the following -book: -The Theory and practice of Revenue Management, by Kalyan T. Talluri and -Garrett J. van Ryzin, Kluwer Academic Publishers, 2004, ISBN 1-4020-7701-7 +@PACKAGE_NAME@ aims at providing a clean API, and the corresponding C++ +implementation, for the basis of Airline IT Business Object Model (BOM), +ie, to be used by several other Open Source projects, such as RMOL, +Air-Sched, Travel-CCM, OpenTREP, etc. -Install the %{name} package if you need a library for high-level -revenue management functionality. +Install the %{name} package if you need a library for Airline IT Standard +C++ fundaments. %package devel Summary: Header files, libraries and development documentation for %{name} @@ -51,11 +44,12 @@ Group: Documentation %if 0%{?fedora} >= 10 BuildArch: noarch -BuildRequires: texlive-latex, texlive-dvips +BuildRequires: texlive-latex %endif %if 0%{?fedora} < 10 -BuildRequires: tetex-latex, tetex-dvips +BuildRequires: tetex-latex %endif +%{?el5:BuildRequires: tetex-latex} BuildRequires: doxygen, ghostscript %description doc @@ -81,10 +75,8 @@ make install DESTDIR=$RPM_BUILD_ROOT %find_lang %{name} # remove unpackaged files from the buildroot -#rm -f $RPM_BUILD_ROOT%{_includedir}/%{name}/config.h rm -f $RPM_BUILD_ROOT%{_infodir}/dir rm -f $RPM_BUILD_ROOT%{_libdir}/lib%{name}.la -# chmod 644 doc/html/installdox doc/html/*.png doc/html/*.ico rm -rf %{mydocs} && mkdir -p %{mydocs} mv $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/html %{mydocs} @@ -129,29 +121,5 @@ %changelog -* Mon May 11 2009 Denis Arnaud <den...@m4...> 0.22.0-1 -- Upstream integration - -* Sun May 10 2009 Denis Arnaud <den...@m4...> 0.21.0-3 -- Removed dependencies on specific versions (for EL 5) - -* Sat May 09 2009 Denis Arnaud <den...@m4...> 0.21.0-2 -- Removed dependencies on specific versions (for EL 5) - -* Mon May 04 2009 Denis Arnaud <den...@m4...> 0.21.0-1 -- Upstream integration - -* Sun May 03 2009 Denis Arnaud <den...@m4...> 0.20.0-3 -- Added dependency on libicu for Boost 1.37 (Fedora 11) - -* Sun May 03 2009 Denis Arnaud <den...@m4...> 0.20.0-2 -- Added dependency on libicu-devel for Boost 1.37 (Fedora 11) - -* Sun May 03 2009 Denis Arnaud <den...@m4...> 0.20.0-1 -- Upstream integration - -* Sun Mar 25 2009 Denis Arnaud <den...@m4...> 0.19.0-1 -- RPM release for Fedora 10 - -* Wed Mar 4 2009 Denis Arnaud <den...@m4...> 0.18.0-1 -- Second RPM release +* Wed Jul 13 2010 Son Nguyen Kim <ngu...@gm...> 0.1.0-1 +- First RPM release This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-07-12 15:34:57
|
Revision: 217 http://stdair.svn.sourceforge.net/stdair/?rev=217&view=rev Author: denis_arnaud Date: 2010-07-12 15:34:51 +0000 (Mon, 12 Jul 2010) Log Message: ----------- [Dev] Simplified (a little bit) the (Boost) shared pointer creation. Modified Paths: -------------- trunk/stdair/stdair/bom/BomIterator.hpp Modified: trunk/stdair/stdair/bom/BomIterator.hpp =================================================================== --- trunk/stdair/stdair/bom/BomIterator.hpp 2010-07-12 15:21:29 UTC (rev 216) +++ trunk/stdair/stdair/bom/BomIterator.hpp 2010-07-12 15:34:51 UTC (rev 217) @@ -10,7 +10,6 @@ #include <map> // BOOST #include <boost/shared_ptr.hpp> -#include <boost/make_shared.hpp> namespace stdair { @@ -126,8 +125,11 @@ CONTENT* lBomContent_ptr = BomStructure::getContentPtr<CONTENT> (*lBomStruct_ptr); assert (lBomContent_ptr != NULL); - - return boost::make_shared<value_type> (lKey, lBomContent_ptr); + + // The object (value_type) will be deleted when the caller will leave + // the scope from where that method is called. So, there is no memory + // leak thanks to the boost::shared_ptr around value_type. + return value_type_shared_ptr (new value_type (lKey, lBomContent_ptr)); } private: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-07-12 15:21:35
|
Revision: 216 http://stdair.svn.sourceforge.net/stdair/?rev=216&view=rev Author: denis_arnaud Date: 2010-07-12 15:21:29 +0000 (Mon, 12 Jul 2010) Log Message: ----------- [Dev] Made private the type for a temporary return type. Modified Paths: -------------- trunk/stdair/stdair/bom/BomIterator.hpp Property Changed: ---------------- trunk/stdair/stdair/batches/ Property changes on: trunk/stdair/stdair/batches ___________________________________________________________________ Modified: svn:ignore - Makefile.in Makefile stdair .libs .deps + .deps .libs Makefile.in Makefile stdair stdair.log Modified: trunk/stdair/stdair/bom/BomIterator.hpp =================================================================== --- trunk/stdair/stdair/bom/BomIterator.hpp 2010-07-12 13:57:46 UTC (rev 215) +++ trunk/stdair/stdair/bom/BomIterator.hpp 2010-07-12 15:21:29 UTC (rev 216) @@ -28,7 +28,6 @@ // Define the pair of string and pointer of CONTENT. typedef typename std::pair<std::string, CONTENT*> value_type; - typedef boost::shared_ptr<value_type> value_type_shared_ptr; // Definition allowing the retrieve the ITERATOR type. typedef ITERATOR iterator_type; @@ -36,6 +35,10 @@ // Definition allowing the retrieve the difference type of the ITERATOR. typedef typename ITERATOR::difference_type difference_type; + private: + // Define the pair of string and pointer of CONTENT. + typedef boost::shared_ptr<value_type> value_type_shared_ptr; + public: /** Normal constructor. */ BomIterator_T (iterator_type iIterator) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <qua...@us...> - 2010-07-12 13:57:52
|
Revision: 215 http://stdair.svn.sourceforge.net/stdair/?rev=215&view=rev Author: quannaus Date: 2010-07-12 13:57:46 +0000 (Mon, 12 Jul 2010) Log Message: ----------- [dev] Removed the _intermediateValue in BomIterator which may core and replace it with a boost shared pointer. Modified Paths: -------------- trunk/stdair/stdair/batches/stdair.cpp trunk/stdair/stdair/bom/BomIterator.hpp Modified: trunk/stdair/stdair/batches/stdair.cpp =================================================================== --- trunk/stdair/stdair/batches/stdair.cpp 2010-07-12 08:34:56 UTC (rev 214) +++ trunk/stdair/stdair/batches/stdair.cpp 2010-07-12 13:57:46 UTC (rev 215) @@ -204,14 +204,14 @@ itInv != lInventoryList.end(); ++itInv) { const stdair::Inventory& lCurrentInventory = *itInv; STDAIR_LOG_DEBUG ("Inventory: " << lCurrentInventory.toString()); - - const stdair::FlightDateList_T& lFlightDateList = - lCurrentInventory.getFlightDateList (); - for (stdair::FlightDateList_T::iterator itFlightDate = - lFlightDateList.begin(); - itFlightDate != lFlightDateList.end(); ++itFlightDate) { - const stdair::FlightDate& lCurrentFlightDate = *itFlightDate; - STDAIR_LOG_DEBUG ("FlightDate: " << lCurrentFlightDate.describeKey()); + + const stdair::FlightDateMap_T& lFlightDateMap = + lCurrentInventory.getFlightDateMap (); + for (stdair::FlightDateMap_T::iterator itFlightDate = + lFlightDateMap.begin(); + itFlightDate != lFlightDateMap.end(); ++itFlightDate) { + const stdair::FlightDate* lCurrentFlightDate = itFlightDate->second; + STDAIR_LOG_DEBUG ("FlightDate: " << lCurrentFlightDate->describeKey()); } } Modified: trunk/stdair/stdair/bom/BomIterator.hpp =================================================================== --- trunk/stdair/stdair/bom/BomIterator.hpp 2010-07-12 08:34:56 UTC (rev 214) +++ trunk/stdair/stdair/bom/BomIterator.hpp 2010-07-12 13:57:46 UTC (rev 215) @@ -8,6 +8,9 @@ #include <cassert> #include <vector> #include <map> +// BOOST +#include <boost/shared_ptr.hpp> +#include <boost/make_shared.hpp> namespace stdair { @@ -25,6 +28,7 @@ // Define the pair of string and pointer of CONTENT. typedef typename std::pair<std::string, CONTENT*> value_type; + typedef boost::shared_ptr<value_type> value_type_shared_ptr; // Definition allowing the retrieve the ITERATOR type. typedef ITERATOR iterator_type; @@ -111,7 +115,7 @@ } /** Dereferencing operator for iterators on a map. */ - value_type* operator-> () { + value_type_shared_ptr operator-> () { const MapKey_T& lKey = _itStructureObject->first; const Structure_T* lBomStruct_ptr = _itStructureObject->second; @@ -119,28 +123,14 @@ CONTENT* lBomContent_ptr = BomStructure::getContentPtr<CONTENT> (*lBomStruct_ptr); assert (lBomContent_ptr != NULL); - - // See the comment below, at the definition of the _intermediateValue - // attribute - _intermediateValue.first = lKey; - _intermediateValue.second = lBomContent_ptr; - return &_intermediateValue; + return boost::make_shared<value_type> (lKey, lBomContent_ptr); } private: ///////////// Attributes ////////////// /** Iterator for the current BOM structure on the non-ordered list. */ iterator_type _itStructureObject; - - /** Helper attribute. - <br>It is necessary to define that value at the attribute - level, because the operator->() method needs to return a - pointer on it. If that value be temporary, i.e., created at - the fly when the operator->() method returns, we would return - a pointer on a temporary value, which is not good. */ - value_type _intermediateValue; - }; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <qua...@us...> - 2010-07-12 08:35:02
|
Revision: 214 http://stdair.svn.sourceforge.net/stdair/?rev=214&view=rev Author: quannaus Date: 2010-07-12 08:34:56 +0000 (Mon, 12 Jul 2010) Log Message: ----------- [dev] Fixed a bug in TravelSolutionStruct. Modified Paths: -------------- trunk/stdair/stdair/bom/TravelSolutionStruct.hpp Modified: trunk/stdair/stdair/bom/TravelSolutionStruct.hpp =================================================================== --- trunk/stdair/stdair/bom/TravelSolutionStruct.hpp 2010-07-08 15:29:50 UTC (rev 213) +++ trunk/stdair/stdair/bom/TravelSolutionStruct.hpp 2010-07-12 08:34:56 UTC (rev 214) @@ -18,7 +18,7 @@ struct TravelSolutionStruct : public StructAbstract { public: // /////////// Getters /////////////// - const KeyList_T& getSegmentDateKeyList () { + const KeyList_T& getSegmentDateKeyList () const { return _segmentDateKeyList; } const ClassList_String_T& getBookingClassKeyList () const { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <qua...@us...> - 2010-07-08 15:29:57
|
Revision: 213 http://stdair.svn.sourceforge.net/stdair/?rev=213&view=rev Author: quannaus Date: 2010-07-08 15:29:50 +0000 (Thu, 08 Jul 2010) Log Message: ----------- [Test] Added first instance of MIT Network D. Added Paths: ----------- trunk/stdair/test/samples/demand08.csv trunk/stdair/test/samples/schedule06.csv Added: trunk/stdair/test/samples/demand08.csv =================================================================== --- trunk/stdair/test/samples/demand08.csv (rev 0) +++ trunk/stdair/test/samples/demand08.csv 2010-07-08 15:29:50 UTC (rev 213) @@ -0,0 +1,1446 @@ +FAT; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1232.9; EUR; 70; 70; 75; 46.95; 4.70; B; B1; B1; NOP; +FAT; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 147.9; EUR; 25; 15; 10; 61.04; 7.30; L; L1; L1; NOP; +FAT; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 246.6; EUR; 25; 15; 10; 26.16; 4.78; L; L1; L1; NOP; +FAT; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1390.0; EUR; 70; 70; 75; 46.95; 4.70; B; B1; B1; NOP; +FAT; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 166.8; EUR; 25; 15; 10; 61.04; 7.30; L; L1; L1; NOP; +FAT; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 278.0; EUR; 25; 15; 10; 26.16; 4.78; L; L1; L1; NOP; +FAT; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1705.6; EUR; 70; 70; 75; 6.74; 0.67; B; B1; B1; NOP; +FAT; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 204.7; EUR; 25; 15; 10; 8.76; 1.05; L; L1; L1; NOP; +FAT; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 341.1; EUR; 25; 15; 10; 3.76; 0.69; L; L1; L1; NOP; +FAT; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1548.5; EUR; 70; 70; 75; 7.21; 0.72; B; B1; B1; NOP; +FAT; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 185.8; EUR; 25; 15; 10; 9.37; 1.12; L; L1; L1; NOP; +FAT; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 309.7; EUR; 25; 15; 10; 4.01; 0.73; L; L1; L1; NOP; +FAT; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1704.0; EUR; 70; 70; 75; 7.38; 0.74; B; B1; B1; NOP; +FAT; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 204.5; EUR; 25; 15; 10; 9.60; 1.15; L; L1; L1; NOP; +FAT; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 340.8; EUR; 25; 15; 10; 4.11; 0.75; L; L1; L1; NOP; +FAT; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1343.1; EUR; 70; 70; 75; 7.00; 0.70; B; B1; B1; NOP; +FAT; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 161.2; EUR; 25; 15; 10; 9.09; 1.09; L; L1; L1; NOP; +FAT; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 268.6; EUR; 25; 15; 10; 3.90; 0.71; L; L1; L1; NOP; +FAT; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1532.8; EUR; 70; 70; 75; 5.30; 0.53; B; B1; B1; NOP; +FAT; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 183.9; EUR; 25; 15; 10; 6.89; 0.82; L; L1; L1; NOP; +FAT; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 306.6; EUR; 25; 15; 10; 2.95; 0.54; L; L1; L1; NOP; +FAT; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1608.0; EUR; 70; 70; 75; 5.71; 0.57; B; B1; B1; NOP; +FAT; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 193.0; EUR; 25; 15; 10; 7.43; 0.89; L; L1; L1; NOP; +FAT; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 321.6; EUR; 25; 15; 10; 3.18; 0.58; L; L1; L1; NOP; +FAT; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1733.1; EUR; 70; 70; 75; 8.72; 0.87; B; B1; B1; NOP; +FAT; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 208.0; EUR; 25; 15; 10; 11.33; 1.35; L; L1; L1; NOP; +FAT; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 346.6; EUR; 25; 15; 10; 4.86; 0.89; L; L1; L1; NOP; +FAT; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1787.5; EUR; 70; 70; 75; 7.61; 0.76; B; B1; B1; NOP; +FAT; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 214.5; EUR; 25; 15; 10; 9.88; 1.18; L; L1; L1; NOP; +FAT; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 357.5; EUR; 25; 15; 10; 4.24; 0.77; L; L1; L1; NOP; +FAT; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1764.5; EUR; 70; 70; 75; 8.41; 0.84; B; B1; B1; NOP; +FAT; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 211.7; EUR; 25; 15; 10; 10.93; 1.31; L; L1; L1; NOP; +FAT; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 352.9; EUR; 25; 15; 10; 4.69; 0.86; L; L1; L1; NOP; +FAT; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1444.4; EUR; 70; 70; 75; 7.77; 0.78; B; B1; B1; NOP; +FAT; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 173.3; EUR; 25; 15; 10; 10.10; 1.21; L; L1; L1; NOP; +FAT; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 288.9; EUR; 25; 15; 10; 4.33; 0.79; L; L1; L1; NOP; +FAT; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1446.3; EUR; 70; 70; 75; 9.84; 0.98; B; B1; B1; NOP; +FAT; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 173.6; EUR; 25; 15; 10; 12.80; 1.53; L; L1; L1; NOP; +FAT; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 289.3; EUR; 25; 15; 10; 5.48; 1.00; L; L1; L1; NOP; +FAT; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1335.0; EUR; 70; 70; 75; 7.55; 0.76; B; B1; B1; NOP; +FAT; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 160.2; EUR; 25; 15; 10; 9.81; 1.17; L; L1; L1; NOP; +FAT; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 267.0; EUR; 25; 15; 10; 4.20; 0.77; L; L1; L1; NOP; +FAT; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1709.1; EUR; 70; 70; 75; 6.43; 0.64; B; B1; B1; NOP; +FAT; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 205.1; EUR; 25; 15; 10; 8.35; 1.00; L; L1; L1; NOP; +FAT; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 341.8; EUR; 25; 15; 10; 3.58; 0.65; L; L1; L1; NOP; +FAT; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1789.4; EUR; 70; 70; 75; 9.44; 0.94; B; B1; B1; NOP; +FAT; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 214.7; EUR; 25; 15; 10; 12.27; 1.47; L; L1; L1; NOP; +FAT; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 357.9; EUR; 25; 15; 10; 5.26; 0.96; L; L1; L1; NOP; +FAT; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1400.4; EUR; 70; 70; 75; 7.48; 0.75; B; B1; B1; NOP; +FAT; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 168.0; EUR; 25; 15; 10; 9.73; 1.16; L; L1; L1; NOP; +FAT; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 280.1; EUR; 25; 15; 10; 4.17; 0.76; L; L1; L1; NOP; +FAT; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1476.9; EUR; 70; 70; 75; 7.67; 0.77; B; B1; B1; NOP; +FAT; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 177.2; EUR; 25; 15; 10; 9.97; 1.19; L; L1; L1; NOP; +FAT; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 295.4; EUR; 25; 15; 10; 4.27; 0.78; L; L1; L1; NOP; +FAT; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 2120.3; EUR; 70; 70; 75; 7.94; 0.79; B; B1; B1; NOP; +FAT; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 254.4; EUR; 25; 15; 10; 10.32; 1.23; L; L1; L1; NOP; +FAT; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 424.1; EUR; 25; 15; 10; 4.42; 0.81; L; L1; L1; NOP; +FAT; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1303.3; EUR; 70; 70; 75; 9.05; 0.91; B; B1; B1; NOP; +FAT; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 156.4; EUR; 25; 15; 10; 11.77; 1.41; L; L1; L1; NOP; +FAT; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 260.7; EUR; 25; 15; 10; 5.04; 0.92; L; L1; L1; NOP; +FAT; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1460.5; EUR; 70; 70; 75; 6.09; 0.61; B; B1; B1; NOP; +FAT; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 175.3; EUR; 25; 15; 10; 7.92; 0.95; L; L1; L1; NOP; +FAT; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 292.1; EUR; 25; 15; 10; 3.39; 0.62; L; L1; L1; NOP; +FAT; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1428.5; EUR; 70; 70; 75; 8.15; 0.82; B; B1; B1; NOP; +FAT; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 171.4; EUR; 25; 15; 10; 10.59; 1.27; L; L1; L1; NOP; +FAT; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 285.7; EUR; 25; 15; 10; 4.54; 0.83; L; L1; L1; NOP; +DFW; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1223.4; EUR; 70; 70; 75; 38.84; 3.88; B; B1; B1; NOP; +DFW; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 146.8; EUR; 25; 15; 10; 50.48; 6.03; L; L1; L1; NOP; +DFW; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 244.7; EUR; 25; 15; 10; 21.64; 3.95; L; L1; L1; NOP; +DFW; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1072.3; EUR; 70; 70; 75; 41.54; 4.15; B; B1; B1; NOP; +DFW; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 128.7; EUR; 25; 15; 10; 54.00; 6.45; L; L1; L1; NOP; +DFW; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 214.5; EUR; 25; 15; 10; 23.14; 4.23; L; L1; L1; NOP; +DFW; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1106.1; EUR; 70; 70; 75; 42.50; 4.25; B; B1; B1; NOP; +DFW; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 132.7; EUR; 25; 15; 10; 55.25; 6.60; L; L1; L1; NOP; +DFW; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 221.2; EUR; 25; 15; 10; 23.68; 4.32; L; L1; L1; NOP; +DFW; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1088.3; EUR; 70; 70; 75; 40.32; 4.03; B; B1; B1; NOP; +DFW; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 130.6; EUR; 25; 15; 10; 52.42; 6.27; L; L1; L1; NOP; +DFW; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 217.7; EUR; 25; 15; 10; 22.47; 4.10; L; L1; L1; NOP; +DFW; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1008.1; EUR; 70; 70; 75; 30.55; 3.06; B; B1; B1; NOP; +DFW; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 121.0; EUR; 25; 15; 10; 39.71; 4.75; L; L1; L1; NOP; +DFW; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 201.6; EUR; 25; 15; 10; 17.02; 3.11; L; L1; L1; NOP; +DFW; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1081.4; EUR; 70; 70; 75; 32.91; 3.29; B; B1; B1; NOP; +DFW; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 129.8; EUR; 25; 15; 10; 42.78; 5.11; L; L1; L1; NOP; +DFW; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 216.3; EUR; 25; 15; 10; 18.33; 3.35; L; L1; L1; NOP; +DFW; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1320.0; EUR; 70; 70; 75; 50.23; 5.02; B; B1; B1; NOP; +DFW; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 158.4; EUR; 25; 15; 10; 65.30; 7.80; L; L1; L1; NOP; +DFW; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 264.0; EUR; 25; 15; 10; 27.98; 5.11; L; L1; L1; NOP; +DFW; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1120.9; EUR; 70; 70; 75; 43.81; 4.38; B; B1; B1; NOP; +DFW; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 134.5; EUR; 25; 15; 10; 56.96; 6.81; L; L1; L1; NOP; +DFW; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 224.2; EUR; 25; 15; 10; 24.41; 4.46; L; L1; L1; NOP; +DFW; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1412.4; EUR; 70; 70; 75; 48.44; 4.84; B; B1; B1; NOP; +DFW; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 169.5; EUR; 25; 15; 10; 62.97; 7.53; L; L1; L1; NOP; +DFW; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 282.5; EUR; 25; 15; 10; 26.99; 4.93; L; L1; L1; NOP; +DFW; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1172.4; EUR; 70; 70; 75; 44.77; 4.48; B; B1; B1; NOP; +DFW; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 140.7; EUR; 25; 15; 10; 58.21; 6.96; L; L1; L1; NOP; +DFW; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 234.5; EUR; 25; 15; 10; 24.95; 4.55; L; L1; L1; NOP; +DFW; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 965.4; EUR; 70; 70; 75; 56.73; 5.67; B; B1; B1; NOP; +DFW; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 115.8; EUR; 25; 15; 10; 73.74; 8.81; L; L1; L1; NOP; +DFW; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 193.1; EUR; 25; 15; 10; 31.60; 5.77; L; L1; L1; NOP; +DFW; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1239.0; EUR; 70; 70; 75; 43.46; 4.35; B; B1; B1; NOP; +DFW; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 148.7; EUR; 25; 15; 10; 56.50; 6.75; L; L1; L1; NOP; +DFW; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 247.8; EUR; 25; 15; 10; 24.21; 4.42; L; L1; L1; NOP; +DFW; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1239.5; EUR; 70; 70; 75; 37.05; 3.71; B; B1; B1; NOP; +DFW; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 148.7; EUR; 25; 15; 10; 48.17; 5.76; L; L1; L1; NOP; +DFW; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 247.9; EUR; 25; 15; 10; 20.64; 3.77; L; L1; L1; NOP; +DFW; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1382.5; EUR; 70; 70; 75; 54.37; 5.44; B; B1; B1; NOP; +DFW; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 165.9; EUR; 25; 15; 10; 70.68; 8.45; L; L1; L1; NOP; +DFW; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 276.5; EUR; 25; 15; 10; 30.29; 5.53; L; L1; L1; NOP; +DFW; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1040.1; EUR; 70; 70; 75; 43.12; 4.31; B; B1; B1; NOP; +DFW; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 124.8; EUR; 25; 15; 10; 56.05; 6.70; L; L1; L1; NOP; +DFW; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 208.0; EUR; 25; 15; 10; 24.02; 4.39; L; L1; L1; NOP; +DFW; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1247.9; EUR; 70; 70; 75; 44.16; 4.42; B; B1; B1; NOP; +DFW; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 149.7; EUR; 25; 15; 10; 57.41; 6.86; L; L1; L1; NOP; +DFW; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 249.6; EUR; 25; 15; 10; 24.60; 4.49; L; L1; L1; NOP; +DFW; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1381.5; EUR; 70; 70; 75; 45.74; 4.57; B; B1; B1; NOP; +DFW; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 165.8; EUR; 25; 15; 10; 59.46; 7.11; L; L1; L1; NOP; +DFW; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 276.3; EUR; 25; 15; 10; 25.48; 4.65; L; L1; L1; NOP; +DFW; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 933.9; EUR; 70; 70; 75; 46.95; 4.70; B; B1; B1; NOP; +DFW; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 112.1; EUR; 25; 15; 10; 61.04; 7.30; L; L1; L1; NOP; +DFW; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 186.8; EUR; 25; 15; 10; 26.16; 4.78; L; L1; L1; NOP; +DFW; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1139.9; EUR; 70; 70; 75; 52.19; 5.22; B; B1; B1; NOP; +DFW; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 136.8; EUR; 25; 15; 10; 67.85; 8.11; L; L1; L1; NOP; +DFW; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 228.0; EUR; 25; 15; 10; 29.08; 5.31; L; L1; L1; NOP; +DFW; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1099.9; EUR; 70; 70; 75; 35.08; 3.51; B; B1; B1; NOP; +DFW; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 132.0; EUR; 25; 15; 10; 45.61; 5.45; L; L1; L1; NOP; +DFW; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 220.0; EUR; 25; 15; 10; 19.55; 3.57; L; L1; L1; NOP; +DFW; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1227.1; EUR; 70; 70; 75; 168.92; 16.89; B; B1; B1; NOP; +DFW; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 147.3; EUR; 25; 15; 10; 219.60; 26.25; L; L1; L1; NOP; +DFW; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 245.4; EUR; 25; 15; 10; 94.11; 17.18; L; L1; L1; NOP; +MSP; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1321.3; EUR; 70; 70; 75; 38.84; 3.88; B; B1; B1; NOP; +MSP; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 158.6; EUR; 25; 15; 10; 50.48; 6.03; L; L1; L1; NOP; +MSP; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 264.3; EUR; 25; 15; 10; 21.64; 3.95; L; L1; L1; NOP; +MSP; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1075.4; EUR; 70; 70; 75; 41.54; 4.15; B; B1; B1; NOP; +MSP; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 129.0; EUR; 25; 15; 10; 54.00; 6.45; L; L1; L1; NOP; +MSP; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 215.1; EUR; 25; 15; 10; 23.14; 4.23; L; L1; L1; NOP; +MSP; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1178.9; EUR; 70; 70; 75; 42.50; 4.25; B; B1; B1; NOP; +MSP; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 141.5; EUR; 25; 15; 10; 55.25; 6.60; L; L1; L1; NOP; +MSP; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 235.8; EUR; 25; 15; 10; 23.68; 4.32; L; L1; L1; NOP; +MSP; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1072.1; EUR; 70; 70; 75; 40.32; 4.03; B; B1; B1; NOP; +MSP; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 128.7; EUR; 25; 15; 10; 52.42; 6.27; L; L1; L1; NOP; +MSP; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 214.4; EUR; 25; 15; 10; 22.47; 4.10; L; L1; L1; NOP; +MSP; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1259.9; EUR; 70; 70; 75; 30.55; 3.06; B; B1; B1; NOP; +MSP; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 151.2; EUR; 25; 15; 10; 39.71; 4.75; L; L1; L1; NOP; +MSP; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 252.0; EUR; 25; 15; 10; 17.02; 3.11; L; L1; L1; NOP; +MSP; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1230.4; EUR; 70; 70; 75; 32.91; 3.29; B; B1; B1; NOP; +MSP; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 147.6; EUR; 25; 15; 10; 42.78; 5.11; L; L1; L1; NOP; +MSP; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 246.1; EUR; 25; 15; 10; 18.33; 3.35; L; L1; L1; NOP; +MSP; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1306.8; EUR; 70; 70; 75; 50.23; 5.02; B; B1; B1; NOP; +MSP; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 156.8; EUR; 25; 15; 10; 65.30; 7.80; L; L1; L1; NOP; +MSP; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 261.4; EUR; 25; 15; 10; 27.98; 5.11; L; L1; L1; NOP; +MSP; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1005.6; EUR; 70; 70; 75; 43.81; 4.38; B; B1; B1; NOP; +MSP; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 120.7; EUR; 25; 15; 10; 56.96; 6.81; L; L1; L1; NOP; +MSP; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 201.1; EUR; 25; 15; 10; 24.41; 4.46; L; L1; L1; NOP; +MSP; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1020.6; EUR; 70; 70; 75; 48.44; 4.84; B; B1; B1; NOP; +MSP; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 122.5; EUR; 25; 15; 10; 62.97; 7.53; L; L1; L1; NOP; +MSP; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 204.1; EUR; 25; 15; 10; 26.99; 4.93; L; L1; L1; NOP; +MSP; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 948.8; EUR; 70; 70; 75; 44.77; 4.48; B; B1; B1; NOP; +MSP; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 113.9; EUR; 25; 15; 10; 58.21; 6.96; L; L1; L1; NOP; +MSP; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 189.8; EUR; 25; 15; 10; 24.95; 4.55; L; L1; L1; NOP; +MSP; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 926.4; EUR; 70; 70; 75; 56.73; 5.67; B; B1; B1; NOP; +MSP; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 111.2; EUR; 25; 15; 10; 73.74; 8.81; L; L1; L1; NOP; +MSP; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 185.3; EUR; 25; 15; 10; 31.60; 5.77; L; L1; L1; NOP; +MSP; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 934.4; EUR; 70; 70; 75; 43.46; 4.35; B; B1; B1; NOP; +MSP; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 112.1; EUR; 25; 15; 10; 56.50; 6.75; L; L1; L1; NOP; +MSP; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 186.9; EUR; 25; 15; 10; 24.21; 4.42; L; L1; L1; NOP; +MSP; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1294.3; EUR; 70; 70; 75; 37.05; 3.71; B; B1; B1; NOP; +MSP; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 155.3; EUR; 25; 15; 10; 48.17; 5.76; L; L1; L1; NOP; +MSP; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 258.9; EUR; 25; 15; 10; 20.64; 3.77; L; L1; L1; NOP; +MSP; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1169.6; EUR; 70; 70; 75; 54.37; 5.44; B; B1; B1; NOP; +MSP; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 140.4; EUR; 25; 15; 10; 70.68; 8.45; L; L1; L1; NOP; +MSP; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 233.9; EUR; 25; 15; 10; 30.29; 5.53; L; L1; L1; NOP; +MSP; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 948.8; EUR; 70; 70; 75; 43.12; 4.31; B; B1; B1; NOP; +MSP; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 113.9; EUR; 25; 15; 10; 56.05; 6.70; L; L1; L1; NOP; +MSP; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 189.8; EUR; 25; 15; 10; 24.02; 4.39; L; L1; L1; NOP; +MSP; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 920.6; EUR; 70; 70; 75; 44.16; 4.42; B; B1; B1; NOP; +MSP; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 110.5; EUR; 25; 15; 10; 57.41; 6.86; L; L1; L1; NOP; +MSP; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 184.1; EUR; 25; 15; 10; 24.60; 4.49; L; L1; L1; NOP; +MSP; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1095.3; EUR; 70; 70; 75; 45.74; 4.57; B; B1; B1; NOP; +MSP; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 131.4; EUR; 25; 15; 10; 59.46; 7.11; L; L1; L1; NOP; +MSP; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 219.1; EUR; 25; 15; 10; 25.48; 4.65; L; L1; L1; NOP; +MSP; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1197.9; EUR; 70; 70; 75; 168.92; 16.89; B; B1; B1; NOP; +MSP; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 143.7; EUR; 25; 15; 10; 219.60; 26.25; L; L1; L1; NOP; +MSP; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 239.6; EUR; 25; 15; 10; 94.11; 17.18; L; L1; L1; NOP; +MSP; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1048.1; EUR; 70; 70; 75; 46.95; 4.70; B; B1; B1; NOP; +MSP; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 125.8; EUR; 25; 15; 10; 61.04; 7.30; L; L1; L1; NOP; +MSP; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 209.6; EUR; 25; 15; 10; 26.16; 4.78; L; L1; L1; NOP; +MSP; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 857.8; EUR; 70; 70; 75; 52.19; 5.22; B; B1; B1; NOP; +MSP; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 102.9; EUR; 25; 15; 10; 67.85; 8.11; L; L1; L1; NOP; +MSP; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 171.6; EUR; 25; 15; 10; 29.08; 5.31; L; L1; L1; NOP; +MSP; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1082.0; EUR; 70; 70; 75; 35.08; 3.51; B; B1; B1; NOP; +MSP; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 129.8; EUR; 25; 15; 10; 45.61; 5.45; L; L1; L1; NOP; +MSP; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 216.4; EUR; 25; 15; 10; 19.55; 3.57; L; L1; L1; NOP; +LAX; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1417.5; EUR; 70; 70; 75; 56.73; 5.67; B; B1; B1; NOP; +LAX; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 170.1; EUR; 25; 15; 10; 73.74; 8.81; L; L1; L1; NOP; +LAX; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 283.5; EUR; 25; 15; 10; 31.60; 5.77; L; L1; L1; NOP; +LAX; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1371.5; EUR; 70; 70; 75; 56.73; 5.67; B; B1; B1; NOP; +LAX; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 164.6; EUR; 25; 15; 10; 73.74; 8.81; L; L1; L1; NOP; +LAX; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 274.3; EUR; 25; 15; 10; 31.60; 5.77; L; L1; L1; NOP; +LAX; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1515.5; EUR; 70; 70; 75; 8.15; 0.82; B; B1; B1; NOP; +LAX; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 181.9; EUR; 25; 15; 10; 10.59; 1.27; L; L1; L1; NOP; +LAX; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 303.1; EUR; 25; 15; 10; 4.54; 0.83; L; L1; L1; NOP; +LAX; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1270.5; EUR; 70; 70; 75; 8.71; 0.87; B; B1; B1; NOP; +LAX; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 152.5; EUR; 25; 15; 10; 11.32; 1.35; L; L1; L1; NOP; +LAX; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 254.1; EUR; 25; 15; 10; 4.85; 0.89; L; L1; L1; NOP; +LAX; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1580.4; EUR; 70; 70; 75; 8.91; 0.89; B; B1; B1; NOP; +LAX; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 189.6; EUR; 25; 15; 10; 11.59; 1.38; L; L1; L1; NOP; +LAX; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 316.1; EUR; 25; 15; 10; 4.97; 0.91; L; L1; L1; NOP; +LAX; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1593.6; EUR; 70; 70; 75; 8.45; 0.85; B; B1; B1; NOP; +LAX; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 191.2; EUR; 25; 15; 10; 10.99; 1.31; L; L1; L1; NOP; +LAX; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 318.7; EUR; 25; 15; 10; 4.71; 0.86; L; L1; L1; NOP; +LAX; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1255.6; EUR; 70; 70; 75; 6.40; 0.64; B; B1; B1; NOP; +LAX; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 150.7; EUR; 25; 15; 10; 8.32; 0.99; L; L1; L1; NOP; +LAX; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 251.1; EUR; 25; 15; 10; 3.57; 0.65; L; L1; L1; NOP; +LAX; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1622.8; EUR; 70; 70; 75; 6.90; 0.69; B; B1; B1; NOP; +LAX; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 194.7; EUR; 25; 15; 10; 8.97; 1.07; L; L1; L1; NOP; +LAX; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 324.5; EUR; 25; 15; 10; 3.84; 0.70; L; L1; L1; NOP; +LAX; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1630.6; EUR; 70; 70; 75; 10.53; 1.05; B; B1; B1; NOP; +LAX; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 195.7; EUR; 25; 15; 10; 13.69; 1.64; L; L1; L1; NOP; +LAX; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 326.1; EUR; 25; 15; 10; 5.87; 1.07; L; L1; L1; NOP; +LAX; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1560.9; EUR; 70; 70; 75; 9.19; 0.92; B; B1; B1; NOP; +LAX; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 187.3; EUR; 25; 15; 10; 11.95; 1.43; L; L1; L1; NOP; +LAX; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 312.2; EUR; 25; 15; 10; 5.12; 0.93; L; L1; L1; NOP; +LAX; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1535.6; EUR; 70; 70; 75; 10.16; 1.02; B; B1; B1; NOP; +LAX; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 184.3; EUR; 25; 15; 10; 13.20; 1.58; L; L1; L1; NOP; +LAX; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 307.1; EUR; 25; 15; 10; 5.66; 1.03; L; L1; L1; NOP; +LAX; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1694.6; EUR; 70; 70; 75; 9.38; 0.94; B; B1; B1; NOP; +LAX; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 203.4; EUR; 25; 15; 10; 12.20; 1.46; L; L1; L1; NOP; +LAX; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 338.9; EUR; 25; 15; 10; 5.23; 0.95; L; L1; L1; NOP; +LAX; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1570.1; EUR; 70; 70; 75; 11.89; 1.19; B; B1; B1; NOP; +LAX; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 188.4; EUR; 25; 15; 10; 15.46; 1.85; L; L1; L1; NOP; +LAX; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 314.0; EUR; 25; 15; 10; 6.62; 1.21; L; L1; L1; NOP; +LAX; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1362.1; EUR; 70; 70; 75; 9.11; 0.91; B; B1; B1; NOP; +LAX; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 163.5; EUR; 25; 15; 10; 11.85; 1.42; L; L1; L1; NOP; +LAX; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 272.4; EUR; 25; 15; 10; 5.08; 0.93; L; L1; L1; NOP; +LAX; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1814.6; EUR; 70; 70; 75; 7.77; 0.78; B; B1; B1; NOP; +LAX; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 217.8; EUR; 25; 15; 10; 10.10; 1.21; L; L1; L1; NOP; +LAX; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 362.9; EUR; 25; 15; 10; 4.33; 0.79; L; L1; L1; NOP; +LAX; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1900.5; EUR; 70; 70; 75; 11.40; 1.14; B; B1; B1; NOP; +LAX; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 228.1; EUR; 25; 15; 10; 14.83; 1.77; L; L1; L1; NOP; +LAX; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 380.1; EUR; 25; 15; 10; 6.35; 1.16; L; L1; L1; NOP; +LAX; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1427.6; EUR; 70; 70; 75; 9.04; 0.90; B; B1; B1; NOP; +LAX; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 171.3; EUR; 25; 15; 10; 11.75; 1.40; L; L1; L1; NOP; +LAX; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 285.5; EUR; 25; 15; 10; 5.04; 0.92; L; L1; L1; NOP; +LAX; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1421.1; EUR; 70; 70; 75; 9.26; 0.93; B; B1; B1; NOP; +LAX; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 170.5; EUR; 25; 15; 10; 12.03; 1.44; L; L1; L1; NOP; +LAX; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 284.2; EUR; 25; 15; 10; 5.16; 0.94; L; L1; L1; NOP; +LAX; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1939.5; EUR; 70; 70; 75; 9.59; 0.96; B; B1; B1; NOP; +LAX; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 232.7; EUR; 25; 15; 10; 12.46; 1.49; L; L1; L1; NOP; +LAX; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 387.9; EUR; 25; 15; 10; 5.34; 0.97; L; L1; L1; NOP; +LAX; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1351.0; EUR; 70; 70; 75; 10.95; 1.10; B; B1; B1; NOP; +LAX; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 162.1; EUR; 25; 15; 10; 14.23; 1.70; L; L1; L1; NOP; +LAX; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 270.2; EUR; 25; 15; 10; 6.10; 1.11; L; L1; L1; NOP; +LAX; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1619.8; EUR; 70; 70; 75; 7.36; 0.74; B; B1; B1; NOP; +LAX; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 194.4; EUR; 25; 15; 10; 9.56; 1.14; L; L1; L1; NOP; +LAX; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 324.0; EUR; 25; 15; 10; 4.10; 0.75; L; L1; L1; NOP; +LAX; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1430.6; EUR; 70; 70; 75; 9.84; 0.98; B; B1; B1; NOP; +LAX; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 171.7; EUR; 25; 15; 10; 12.80; 1.53; L; L1; L1; NOP; +LAX; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 286.1; EUR; 25; 15; 10; 5.48; 1.00; L; L1; L1; NOP; +PHX; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1083.8; EUR; 70; 70; 75; 42.50; 4.25; B; B1; B1; NOP; +PHX; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 130.1; EUR; 25; 15; 10; 55.25; 6.60; L; L1; L1; NOP; +PHX; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 216.8; EUR; 25; 15; 10; 23.68; 4.32; L; L1; L1; NOP; +PHX; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1200.6; EUR; 70; 70; 75; 42.50; 4.25; B; B1; B1; NOP; +PHX; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 144.1; EUR; 25; 15; 10; 55.25; 6.60; L; L1; L1; NOP; +PHX; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 240.1; EUR; 25; 15; 10; 23.68; 4.32; L; L1; L1; NOP; +PHX; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1597.3; EUR; 70; 70; 75; 6.10; 0.61; B; B1; B1; NOP; +PHX; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 191.7; EUR; 25; 15; 10; 7.94; 0.95; L; L1; L1; NOP; +PHX; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 319.5; EUR; 25; 15; 10; 3.40; 0.62; L; L1; L1; NOP; +PHX; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1141.4; EUR; 70; 70; 75; 6.52; 0.65; B; B1; B1; NOP; +PHX; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 137.0; EUR; 25; 15; 10; 8.48; 1.01; L; L1; L1; NOP; +PHX; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 228.3; EUR; 25; 15; 10; 3.64; 0.66; L; L1; L1; NOP; +PHX; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1714.0; EUR; 70; 70; 75; 6.67; 0.67; B; B1; B1; NOP; +PHX; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 205.7; EUR; 25; 15; 10; 8.67; 1.04; L; L1; L1; NOP; +PHX; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 342.8; EUR; 25; 15; 10; 3.72; 0.68; L; L1; L1; NOP; +PHX; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1239.5; EUR; 70; 70; 75; 6.34; 0.63; B; B1; B1; NOP; +PHX; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 148.7; EUR; 25; 15; 10; 8.24; 0.98; L; L1; L1; NOP; +PHX; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 247.9; EUR; 25; 15; 10; 3.53; 0.64; L; L1; L1; NOP; +PHX; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1432.0; EUR; 70; 70; 75; 4.80; 0.48; B; B1; B1; NOP; +PHX; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 171.8; EUR; 25; 15; 10; 6.24; 0.75; L; L1; L1; NOP; +PHX; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 286.4; EUR; 25; 15; 10; 2.67; 0.49; L; L1; L1; NOP; +PHX; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1233.9; EUR; 70; 70; 75; 5.17; 0.52; B; B1; B1; NOP; +PHX; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 148.1; EUR; 25; 15; 10; 6.71; 0.80; L; L1; L1; NOP; +PHX; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 246.8; EUR; 25; 15; 10; 2.88; 0.53; L; L1; L1; NOP; +PHX; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1550.9; EUR; 70; 70; 75; 7.89; 0.79; B; B1; B1; NOP; +PHX; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 186.1; EUR; 25; 15; 10; 10.26; 1.23; L; L1; L1; NOP; +PHX; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 310.2; EUR; 25; 15; 10; 4.39; 0.80; L; L1; L1; NOP; +PHX; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1599.6; EUR; 70; 70; 75; 6.88; 0.69; B; B1; B1; NOP; +PHX; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 192.0; EUR; 25; 15; 10; 8.95; 1.07; L; L1; L1; NOP; +PHX; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 319.9; EUR; 25; 15; 10; 3.84; 0.70; L; L1; L1; NOP; +PHX; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1533.9; EUR; 70; 70; 75; 7.61; 0.76; B; B1; B1; NOP; +PHX; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 184.1; EUR; 25; 15; 10; 9.90; 1.18; L; L1; L1; NOP; +PHX; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 306.8; EUR; 25; 15; 10; 4.24; 0.77; L; L1; L1; NOP; +PHX; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1231.5; EUR; 70; 70; 75; 7.03; 0.70; B; B1; B1; NOP; +PHX; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 147.8; EUR; 25; 15; 10; 9.14; 1.09; L; L1; L1; NOP; +PHX; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 246.3; EUR; 25; 15; 10; 3.92; 0.72; L; L1; L1; NOP; +PHX; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1225.8; EUR; 70; 70; 75; 8.91; 0.89; B; B1; B1; NOP; +PHX; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 147.1; EUR; 25; 15; 10; 11.59; 1.38; L; L1; L1; NOP; +PHX; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 245.2; EUR; 25; 15; 10; 4.97; 0.91; L; L1; L1; NOP; +PHX; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1230.8; EUR; 70; 70; 75; 6.82; 0.68; B; B1; B1; NOP; +PHX; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 147.7; EUR; 25; 15; 10; 8.87; 1.06; L; L1; L1; NOP; +PHX; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 246.2; EUR; 25; 15; 10; 3.80; 0.69; L; L1; L1; NOP; +PHX; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1506.3; EUR; 70; 70; 75; 5.82; 0.58; B; B1; B1; NOP; +PHX; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 180.8; EUR; 25; 15; 10; 7.57; 0.90; L; L1; L1; NOP; +PHX; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 301.3; EUR; 25; 15; 10; 3.24; 0.59; L; L1; L1; NOP; +PHX; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1607.5; EUR; 70; 70; 75; 8.54; 0.85; B; B1; B1; NOP; +PHX; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 192.9; EUR; 25; 15; 10; 11.11; 1.33; L; L1; L1; NOP; +PHX; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 321.5; EUR; 25; 15; 10; 4.76; 0.87; L; L1; L1; NOP; +PHX; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1387.1; EUR; 70; 70; 75; 6.77; 0.68; B; B1; B1; NOP; +PHX; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 166.5; EUR; 25; 15; 10; 8.81; 1.05; L; L1; L1; NOP; +PHX; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 277.4; EUR; 25; 15; 10; 3.77; 0.69; L; L1; L1; NOP; +PHX; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1474.6; EUR; 70; 70; 75; 6.94; 0.69; B; B1; B1; NOP; +PHX; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 177.0; EUR; 25; 15; 10; 9.02; 1.08; L; L1; L1; NOP; +PHX; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 294.9; EUR; 25; 15; 10; 3.86; 0.71; L; L1; L1; NOP; +PHX; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1845.0; EUR; 70; 70; 75; 7.18; 0.72; B; B1; B1; NOP; +PHX; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 221.4; EUR; 25; 15; 10; 9.34; 1.12; L; L1; L1; NOP; +PHX; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 369.0; EUR; 25; 15; 10; 4.00; 0.73; L; L1; L1; NOP; +PHX; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1273.5; EUR; 70; 70; 75; 8.20; 0.82; B; B1; B1; NOP; +PHX; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 152.8; EUR; 25; 15; 10; 10.66; 1.27; L; L1; L1; NOP; +PHX; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 254.7; EUR; 25; 15; 10; 4.57; 0.83; L; L1; L1; NOP; +PHX; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1486.5; EUR; 70; 70; 75; 5.51; 0.55; B; B1; B1; NOP; +PHX; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 178.4; EUR; 25; 15; 10; 7.16; 0.86; L; L1; L1; NOP; +PHX; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 297.3; EUR; 25; 15; 10; 3.07; 0.56; L; L1; L1; NOP; +PHX; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1232.0; EUR; 70; 70; 75; 7.38; 0.74; B; B1; B1; NOP; +PHX; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 147.8; EUR; 25; 15; 10; 9.60; 1.15; L; L1; L1; NOP; +PHX; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 246.4; EUR; 25; 15; 10; 4.11; 0.75; L; L1; L1; NOP; +BUR; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1322.1; EUR; 70; 70; 75; 52.19; 5.22; B; B1; B1; NOP; +BUR; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 158.7; EUR; 25; 15; 10; 67.85; 8.11; L; L1; L1; NOP; +BUR; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 264.4; EUR; 25; 15; 10; 29.08; 5.31; L; L1; L1; NOP; +BUR; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1291.0; EUR; 70; 70; 75; 52.19; 5.22; B; B1; B1; NOP; +BUR; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 154.9; EUR; 25; 15; 10; 67.85; 8.11; L; L1; L1; NOP; +BUR; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 258.2; EUR; 25; 15; 10; 29.08; 5.31; L; L1; L1; NOP; +BUR; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1505.9; EUR; 70; 70; 75; 7.49; 0.75; B; B1; B1; NOP; +BUR; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 180.7; EUR; 25; 15; 10; 9.74; 1.16; L; L1; L1; NOP; +BUR; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 301.2; EUR; 25; 15; 10; 4.17; 0.76; L; L1; L1; NOP; +BUR; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1240.8; EUR; 70; 70; 75; 8.01; 0.80; B; B1; B1; NOP; +BUR; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 148.9; EUR; 25; 15; 10; 10.42; 1.24; L; L1; L1; NOP; +BUR; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 248.2; EUR; 25; 15; 10; 4.46; 0.82; L; L1; L1; NOP; +BUR; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1711.0; EUR; 70; 70; 75; 8.20; 0.82; B; B1; B1; NOP; +BUR; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 205.3; EUR; 25; 15; 10; 10.66; 1.27; L; L1; L1; NOP; +BUR; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 342.2; EUR; 25; 15; 10; 4.57; 0.83; L; L1; L1; NOP; +BUR; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1310.0; EUR; 70; 70; 75; 7.78; 0.78; B; B1; B1; NOP; +BUR; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 157.2; EUR; 25; 15; 10; 10.11; 1.21; L; L1; L1; NOP; +BUR; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 262.0; EUR; 25; 15; 10; 4.33; 0.79; L; L1; L1; NOP; +BUR; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1293.0; EUR; 70; 70; 75; 5.89; 0.59; B; B1; B1; NOP; +BUR; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 155.2; EUR; 25; 15; 10; 7.66; 0.92; L; L1; L1; NOP; +BUR; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 258.6; EUR; 25; 15; 10; 3.28; 0.60; L; L1; L1; NOP; +BUR; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1619.8; EUR; 70; 70; 75; 6.34; 0.63; B; B1; B1; NOP; +BUR; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 194.4; EUR; 25; 15; 10; 8.25; 0.99; L; L1; L1; NOP; +BUR; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 324.0; EUR; 25; 15; 10; 3.53; 0.65; L; L1; L1; NOP; +BUR; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1738.9; EUR; 70; 70; 75; 9.69; 0.97; B; B1; B1; NOP; +BUR; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 208.7; EUR; 25; 15; 10; 12.60; 1.51; L; L1; L1; NOP; +BUR; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 347.8; EUR; 25; 15; 10; 5.40; 0.99; L; L1; L1; NOP; +BUR; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1577.9; EUR; 70; 70; 75; 8.45; 0.85; B; B1; B1; NOP; +BUR; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 189.3; EUR; 25; 15; 10; 10.99; 1.31; L; L1; L1; NOP; +BUR; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 315.6; EUR; 25; 15; 10; 4.71; 0.86; L; L1; L1; NOP; +BUR; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1540.5; EUR; 70; 70; 75; 9.35; 0.94; B; B1; B1; NOP; +BUR; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 184.9; EUR; 25; 15; 10; 12.15; 1.45; L; L1; L1; NOP; +BUR; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 308.1; EUR; 25; 15; 10; 5.21; 0.95; L; L1; L1; NOP; +BUR; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1395.4; EUR; 70; 70; 75; 8.63; 0.86; B; B1; B1; NOP; +BUR; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 167.4; EUR; 25; 15; 10; 11.22; 1.34; L; L1; L1; NOP; +BUR; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 279.1; EUR; 25; 15; 10; 4.81; 0.88; L; L1; L1; NOP; +BUR; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1228.8; EUR; 70; 70; 75; 10.95; 1.10; B; B1; B1; NOP; +BUR; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 147.5; EUR; 25; 15; 10; 14.23; 1.70; L; L1; L1; NOP; +BUR; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 245.8; EUR; 25; 15; 10; 6.10; 1.11; L; L1; L1; NOP; +BUR; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1686.5; EUR; 70; 70; 75; 8.39; 0.84; B; B1; B1; NOP; +BUR; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 202.4; EUR; 25; 15; 10; 10.90; 1.30; L; L1; L1; NOP; +BUR; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 337.3; EUR; 25; 15; 10; 4.67; 0.85; L; L1; L1; NOP; +BUR; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1768.8; EUR; 70; 70; 75; 7.15; 0.72; B; B1; B1; NOP; +BUR; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 212.3; EUR; 25; 15; 10; 9.29; 1.11; L; L1; L1; NOP; +BUR; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 353.8; EUR; 25; 15; 10; 3.98; 0.73; L; L1; L1; NOP; +BUR; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1710.6; EUR; 70; 70; 75; 10.49; 1.05; B; B1; B1; NOP; +BUR; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 205.3; EUR; 25; 15; 10; 13.64; 1.63; L; L1; L1; NOP; +BUR; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 342.1; EUR; 25; 15; 10; 5.84; 1.07; L; L1; L1; NOP; +BUR; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1481.9; EUR; 70; 70; 75; 8.32; 0.83; B; B1; B1; NOP; +BUR; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 177.8; EUR; 25; 15; 10; 10.82; 1.29; L; L1; L1; NOP; +BUR; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 296.4; EUR; 25; 15; 10; 4.64; 0.85; L; L1; L1; NOP; +BUR; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1663.1; EUR; 70; 70; 75; 8.52; 0.85; B; B1; B1; NOP; +BUR; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 199.6; EUR; 25; 15; 10; 11.07; 1.32; L; L1; L1; NOP; +BUR; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 332.6; EUR; 25; 15; 10; 4.75; 0.87; L; L1; L1; NOP; +BUR; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1979.6; EUR; 70; 70; 75; 8.82; 0.88; B; B1; B1; NOP; +BUR; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 237.6; EUR; 25; 15; 10; 11.47; 1.37; L; L1; L1; NOP; +BUR; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 395.9; EUR; 25; 15; 10; 4.91; 0.90; L; L1; L1; NOP; +BUR; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1330.3; EUR; 70; 70; 75; 10.07; 1.01; B; B1; B1; NOP; +BUR; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 159.6; EUR; 25; 15; 10; 13.09; 1.56; L; L1; L1; NOP; +BUR; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 266.1; EUR; 25; 15; 10; 5.61; 1.02; L; L1; L1; NOP; +BUR; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1371.1; EUR; 70; 70; 75; 6.76; 0.68; B; B1; B1; NOP; +BUR; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 164.5; EUR; 25; 15; 10; 8.79; 1.05; L; L1; L1; NOP; +BUR; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 274.2; EUR; 25; 15; 10; 3.77; 0.69; L; L1; L1; NOP; +BUR; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1261.8; EUR; 70; 70; 75; 9.05; 0.91; B; B1; B1; NOP; +BUR; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 151.4; EUR; 25; 15; 10; 11.77; 1.41; L; L1; L1; NOP; +BUR; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 252.4; EUR; 25; 15; 10; 5.04; 0.92; L; L1; L1; NOP; +AUS; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 750.0; EUR; 70; 70; 75; 44.16; 4.42; B; B1; B1; NOP; +AUS; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 90.0; EUR; 25; 15; 10; 57.41; 6.86; L; L1; L1; NOP; +AUS; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 150.0; EUR; 25; 15; 10; 24.60; 4.49; L; L1; L1; NOP; +AUS; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1240.0; EUR; 70; 70; 75; 44.16; 4.42; B; B1; B1; NOP; +AUS; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 148.8; EUR; 25; 15; 10; 57.41; 6.86; L; L1; L1; NOP; +AUS; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 248.0; EUR; 25; 15; 10; 24.60; 4.49; L; L1; L1; NOP; +AUS; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1071.1; EUR; 70; 70; 75; 6.34; 0.63; B; B1; B1; NOP; +AUS; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 128.5; EUR; 25; 15; 10; 8.24; 0.98; L; L1; L1; NOP; +AUS; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 214.2; EUR; 25; 15; 10; 3.53; 0.64; L; L1; L1; NOP; +AUS; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1143.0; EUR; 70; 70; 75; 6.78; 0.68; B; B1; B1; NOP; +AUS; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 137.2; EUR; 25; 15; 10; 8.81; 1.05; L; L1; L1; NOP; +AUS; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 228.6; EUR; 25; 15; 10; 3.78; 0.69; L; L1; L1; NOP; +AUS; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1347.0; EUR; 70; 70; 75; 6.94; 0.69; B; B1; B1; NOP; +AUS; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 161.6; EUR; 25; 15; 10; 9.02; 1.08; L; L1; L1; NOP; +AUS; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 269.4; EUR; 25; 15; 10; 3.86; 0.71; L; L1; L1; NOP; +AUS; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1293.4; EUR; 70; 70; 75; 6.58; 0.66; B; B1; B1; NOP; +AUS; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 155.2; EUR; 25; 15; 10; 8.56; 1.02; L; L1; L1; NOP; +AUS; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 258.7; EUR; 25; 15; 10; 3.67; 0.67; L; L1; L1; NOP; +AUS; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 968.1; EUR; 70; 70; 75; 4.98; 0.50; B; B1; B1; NOP; +AUS; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 116.2; EUR; 25; 15; 10; 6.48; 0.77; L; L1; L1; NOP; +AUS; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 193.6; EUR; 25; 15; 10; 2.78; 0.51; L; L1; L1; NOP; +AUS; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1243.4; EUR; 70; 70; 75; 5.37; 0.54; B; B1; B1; NOP; +AUS; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 149.2; EUR; 25; 15; 10; 6.98; 0.83; L; L1; L1; NOP; +AUS; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 248.7; EUR; 25; 15; 10; 2.99; 0.55; L; L1; L1; NOP; +AUS; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1473.1; EUR; 70; 70; 75; 8.20; 0.82; B; B1; B1; NOP; +AUS; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 176.8; EUR; 25; 15; 10; 10.66; 1.27; L; L1; L1; NOP; +AUS; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 294.6; EUR; 25; 15; 10; 4.57; 0.83; L; L1; L1; NOP; +AUS; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1334.8; EUR; 70; 70; 75; 7.15; 0.72; B; B1; B1; NOP; +AUS; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 160.2; EUR; 25; 15; 10; 9.30; 1.11; L; L1; L1; NOP; +AUS; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 267.0; EUR; 25; 15; 10; 3.99; 0.73; L; L1; L1; NOP; +AUS; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1379.9; EUR; 70; 70; 75; 7.91; 0.79; B; B1; B1; NOP; +AUS; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 165.6; EUR; 25; 15; 10; 10.28; 1.23; L; L1; L1; NOP; +AUS; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 276.0; EUR; 25; 15; 10; 4.40; 0.80; L; L1; L1; NOP; +AUS; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1197.3; EUR; 70; 70; 75; 7.30; 0.73; B; B1; B1; NOP; +AUS; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 143.7; EUR; 25; 15; 10; 9.50; 1.14; L; L1; L1; NOP; +AUS; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 239.5; EUR; 25; 15; 10; 4.07; 0.74; L; L1; L1; NOP; +AUS; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1132.4; EUR; 70; 70; 75; 9.26; 0.93; B; B1; B1; NOP; +AUS; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 135.9; EUR; 25; 15; 10; 12.03; 1.44; L; L1; L1; NOP; +AUS; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 226.5; EUR; 25; 15; 10; 5.16; 0.94; L; L1; L1; NOP; +AUS; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1232.9; EUR; 70; 70; 75; 7.09; 0.71; B; B1; B1; NOP; +AUS; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 147.9; EUR; 25; 15; 10; 9.23; 1.10; L; L1; L1; NOP; +AUS; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 246.6; EUR; 25; 15; 10; 3.95; 0.72; L; L1; L1; NOP; +AUS; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1443.6; EUR; 70; 70; 75; 6.04; 0.60; B; B1; B1; NOP; +AUS; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 173.2; EUR; 25; 15; 10; 7.85; 0.94; L; L1; L1; NOP; +AUS; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 288.7; EUR; 25; 15; 10; 3.37; 0.61; L; L1; L1; NOP; +AUS; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1482.3; EUR; 70; 70; 75; 8.87; 0.89; B; B1; B1; NOP; +AUS; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 177.9; EUR; 25; 15; 10; 11.54; 1.38; L; L1; L1; NOP; +AUS; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 296.5; EUR; 25; 15; 10; 4.94; 0.90; L; L1; L1; NOP; +AUS; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1162.0; EUR; 70; 70; 75; 7.03; 0.70; B; B1; B1; NOP; +AUS; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 139.4; EUR; 25; 15; 10; 9.14; 1.09; L; L1; L1; NOP; +AUS; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 232.4; EUR; 25; 15; 10; 3.92; 0.72; L; L1; L1; NOP; +AUS; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1406.5; EUR; 70; 70; 75; 7.21; 0.72; B; B1; B1; NOP; +AUS; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 168.8; EUR; 25; 15; 10; 9.37; 1.12; L; L1; L1; NOP; +AUS; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 281.3; EUR; 25; 15; 10; 4.01; 0.73; L; L1; L1; NOP; +AUS; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1219.3; EUR; 70; 70; 75; 7.46; 0.75; B; B1; B1; NOP; +AUS; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 146.3; EUR; 25; 15; 10; 9.70; 1.16; L; L1; L1; NOP; +AUS; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 243.9; EUR; 25; 15; 10; 4.16; 0.76; L; L1; L1; NOP; +AUS; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1233.5; EUR; 70; 70; 75; 8.52; 0.85; B; B1; B1; NOP; +AUS; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 148.0; EUR; 25; 15; 10; 11.07; 1.32; L; L1; L1; NOP; +AUS; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 246.7; EUR; 25; 15; 10; 4.75; 0.87; L; L1; L1; NOP; +AUS; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1292.0; EUR; 70; 70; 75; 5.73; 0.57; B; B1; B1; NOP; +AUS; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 155.0; EUR; 25; 15; 10; 7.45; 0.89; L; L1; L1; NOP; +AUS; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 258.4; EUR; 25; 15; 10; 3.19; 0.58; L; L1; L1; NOP; +AUS; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1060.3; EUR; 70; 70; 75; 7.67; 0.77; B; B1; B1; NOP; +AUS; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 127.2; EUR; 25; 15; 10; 9.97; 1.19; L; L1; L1; NOP; +AUS; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 212.1; EUR; 25; 15; 10; 4.27; 0.78; L; L1; L1; NOP; +TUS; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1110.1; EUR; 70; 70; 75; 45.74; 4.57; B; B1; B1; NOP; +TUS; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 133.2; EUR; 25; 15; 10; 59.46; 7.11; L; L1; L1; NOP; +TUS; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 222.0; EUR; 25; 15; 10; 25.48; 4.65; L; L1; L1; NOP; +TUS; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1373.0; EUR; 70; 70; 75; 45.74; 4.57; B; B1; B1; NOP; +TUS; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 164.8; EUR; 25; 15; 10; 59.46; 7.11; L; L1; L1; NOP; +TUS; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 274.6; EUR; 25; 15; 10; 25.48; 4.65; L; L1; L1; NOP; +TUS; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1282.6; EUR; 70; 70; 75; 6.56; 0.66; B; B1; B1; NOP; +TUS; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 153.9; EUR; 25; 15; 10; 8.53; 1.02; L; L1; L1; NOP; +TUS; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 256.5; EUR; 25; 15; 10; 3.66; 0.67; L; L1; L1; NOP; +TUS; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1452.8; EUR; 70; 70; 75; 7.02; 0.70; B; B1; B1; NOP; +TUS; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 174.3; EUR; 25; 15; 10; 9.13; 1.09; L; L1; L1; NOP; +TUS; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 290.6; EUR; 25; 15; 10; 3.91; 0.71; L; L1; L1; NOP; +TUS; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1841.6; EUR; 70; 70; 75; 7.18; 0.72; B; B1; B1; NOP; +TUS; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 221.0; EUR; 25; 15; 10; 9.34; 1.12; L; L1; L1; NOP; +TUS; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 368.3; EUR; 25; 15; 10; 4.00; 0.73; L; L1; L1; NOP; +TUS; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1181.1; EUR; 70; 70; 75; 6.82; 0.68; B; B1; B1; NOP; +TUS; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 141.7; EUR; 25; 15; 10; 8.86; 1.06; L; L1; L1; NOP; +TUS; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 236.2; EUR; 25; 15; 10; 3.80; 0.69; L; L1; L1; NOP; +TUS; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1348.6; EUR; 70; 70; 75; 5.17; 0.52; B; B1; B1; NOP; +TUS; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 161.8; EUR; 25; 15; 10; 6.71; 0.80; L; L1; L1; NOP; +TUS; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 269.7; EUR; 25; 15; 10; 2.88; 0.53; L; L1; L1; NOP; +TUS; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1317.5; EUR; 70; 70; 75; 5.56; 0.56; B; B1; B1; NOP; +TUS; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 158.1; EUR; 25; 15; 10; 7.23; 0.86; L; L1; L1; NOP; +TUS; ATL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 263.5; EUR; 25; 15; 10; 3.10; 0.57; L; L1; L1; NOP; +TUS; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1519.5; EUR; 70; 70; 75; 8.49; 0.85; B; B1; B1; NOP; +TUS; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 182.3; EUR; 25; 15; 10; 11.04; 1.32; L; L1; L1; NOP; +TUS; PHL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 303.9; EUR; 25; 15; 10; 4.73; 0.86; L; L1; L1; NOP; +TUS; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1299.8; EUR; 70; 70; 75; 7.40; 0.74; B; B1; B1; NOP; +TUS; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 156.0; EUR; 25; 15; 10; 9.63; 1.15; L; L1; L1; NOP; +TUS; PIT; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 260.0; EUR; 25; 15; 10; 4.13; 0.75; L; L1; L1; NOP; +TUS; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1389.8; EUR; 70; 70; 75; 8.19; 0.82; B; B1; B1; NOP; +TUS; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 166.8; EUR; 25; 15; 10; 10.65; 1.27; L; L1; L1; NOP; +TUS; IAD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 278.0; EUR; 25; 15; 10; 4.56; 0.83; L; L1; L1; NOP; +TUS; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1239.6; EUR; 70; 70; 75; 7.57; 0.76; B; B1; B1; NOP; +TUS; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 148.8; EUR; 25; 15; 10; 9.83; 1.18; L; L1; L1; NOP; +TUS; CMI; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 247.9; EUR; 25; 15; 10; 4.22; 0.77; L; L1; L1; NOP; +TUS; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1233.0; EUR; 70; 70; 75; 9.59; 0.96; B; B1; B1; NOP; +TUS; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 148.0; EUR; 25; 15; 10; 12.46; 1.49; L; L1; L1; NOP; +TUS; UIN; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 246.6; EUR; 25; 15; 10; 5.34; 0.97; L; L1; L1; NOP; +TUS; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1265.6; EUR; 70; 70; 75; 7.35; 0.74; B; B1; B1; NOP; +TUS; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 151.9; EUR; 25; 15; 10; 9.56; 1.14; L; L1; L1; NOP; +TUS; MKE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 253.1; EUR; 25; 15; 10; 4.10; 0.75; L; L1; L1; NOP; +TUS; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1514.3; EUR; 70; 70; 75; 6.26; 0.63; B; B1; B1; NOP; +TUS; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 181.7; EUR; 25; 15; 10; 8.14; 0.97; L; L1; L1; NOP; +TUS; BTV; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 302.9; EUR; 25; 15; 10; 3.49; 0.64; L; L1; L1; NOP; +TUS; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1489.8; EUR; 70; 70; 75; 9.19; 0.92; B; B1; B1; NOP; +TUS; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 178.8; EUR; 25; 15; 10; 11.95; 1.43; L; L1; L1; NOP; +TUS; EWR; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 298.0; EUR; 25; 15; 10; 5.12; 0.93; L; L1; L1; NOP; +TUS; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1456.9; EUR; 70; 70; 75; 7.29; 0.73; B; B1; B1; NOP; +TUS; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 174.8; EUR; 25; 15; 10; 9.48; 1.13; L; L1; L1; NOP; +TUS; CLE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 291.4; EUR; 25; 15; 10; 4.06; 0.74; L; L1; L1; NOP; +TUS; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1230.8; EUR; 70; 70; 75; 7.46; 0.75; B; B1; B1; NOP; +TUS; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 147.7; EUR; 25; 15; 10; 9.70; 1.16; L; L1; L1; NOP; +TUS; DTW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 246.2; EUR; 25; 15; 10; 4.16; 0.76; L; L1; L1; NOP; +TUS; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1608.3; EUR; 70; 70; 75; 7.73; 0.77; B; B1; B1; NOP; +TUS; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 193.0; EUR; 25; 15; 10; 10.05; 1.20; L; L1; L1; NOP; +TUS; BOS; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 321.7; EUR; 25; 15; 10; 4.31; 0.79; L; L1; L1; NOP; +TUS; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1446.6; EUR; 70; 70; 75; 8.82; 0.88; B; B1; B1; NOP; +TUS; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 173.6; EUR; 25; 15; 10; 11.47; 1.37; L; L1; L1; NOP; +TUS; ORD; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 289.3; EUR; 25; 15; 10; 4.91; 0.90; L; L1; L1; NOP; +TUS; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1283.9; EUR; 70; 70; 75; 5.93; 0.59; B; B1; B1; NOP; +TUS; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 154.1; EUR; 25; 15; 10; 7.71; 0.92; L; L1; L1; NOP; +TUS; DAY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 256.8; EUR; 25; 15; 10; 3.30; 0.60; L; L1; L1; NOP; +TUS; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1229.0; EUR; 70; 70; 75; 7.94; 0.79; B; B1; B1; NOP; +TUS; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 147.5; EUR; 25; 15; 10; 10.32; 1.23; L; L1; L1; NOP; +TUS; FOE; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 245.8; EUR; 25; 15; 10; 4.42; 0.81; L; L1; L1; NOP; +SAN; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1328.5; EUR; 70; 70; 75; 43.46; 4.35; B; B1; B1; NOP; +SAN; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 159.4; EUR; 25; 15; 10; 56.50; 6.75; L; L1; L1; NOP; +SAN; DFW; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 265.7; EUR; 25; 15; 10; 24.21; 4.42; L; L1; L1; NOP; +SAN; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1284.6; EUR; 70; 70; 75; 43.46; 4.35; B; B1; B1; NOP; +SAN; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 154.2; EUR; 25; 15; 10; 56.50; 6.75; L; L1; L1; NOP; +SAN; MSP; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 256.9; EUR; 25; 15; 10; 24.21; 4.42; L; L1; L1; NOP; +SAN; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1734.8; EUR; 70; 70; 75; 6.24; 0.62; B; B1; B1; NOP; +SAN; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 208.2; EUR; 25; 15; 10; 8.11; 0.97; L; L1; L1; NOP; +SAN; TPA; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 347.0; EUR; 25; 15; 10; 3.48; 0.63; L; L1; L1; NOP; +SAN; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1392.0; EUR; 70; 70; 75; 6.67; 0.67; B; B1; B1; NOP; +SAN; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 167.0; EUR; 25; 15; 10; 8.67; 1.04; L; L1; L1; NOP; +SAN; STL; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 278.4; EUR; 25; 15; 10; 3.72; 0.68; L; L1; L1; NOP; +SAN; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1768.1; EUR; 70; 70; 75; 6.82; 0.68; B; B1; B1; NOP; +SAN; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 212.2; EUR; 25; 15; 10; 8.87; 1.06; L; L1; L1; NOP; +SAN; ORF; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 353.6; EUR; 25; 15; 10; 3.80; 0.69; L; L1; L1; NOP; +SAN; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1534.9; EUR; 70; 70; 75; 6.48; 0.65; B; B1; B1; NOP; +SAN; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 184.2; EUR; 25; 15; 10; 8.42; 1.01; L; L1; L1; NOP; +SAN; CVG; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 307.0; EUR; 25; 15; 10; 3.61; 0.66; L; L1; L1; NOP; +SAN; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 1249.0; EUR; 70; 70; 75; 4.91; 0.49; B; B1; B1; NOP; +SAN; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 149.9; EUR; 25; 15; 10; 6.38; 0.76; L; L1; L1; NOP; +SAN; MSY; 2009-01-01; 2009-06-30; 1000000; 00:00; 23:59; 2... [truncated message content] |
From: <qua...@us...> - 2010-07-08 15:05:56
|
Revision: 212 http://stdair.svn.sourceforge.net/stdair/?rev=212&view=rev Author: quannaus Date: 2010-07-08 15:05:45 +0000 (Thu, 08 Jul 2010) Log Message: ----------- [Test] Altered the schedule-related sample, in order to suppress last empty line. Modified Paths: -------------- trunk/stdair/test/samples/schedule02.csv Modified: trunk/stdair/test/samples/schedule02.csv =================================================================== --- trunk/stdair/test/samples/schedule02.csv 2010-07-07 15:10:13 UTC (rev 211) +++ trunk/stdair/test/samples/schedule02.csv 2010-07-08 15:05:45 UTC (rev 212) @@ -3,4 +3,4 @@ // ElapsedTime; LegCabins; // LegCabins: CabinCode; Capacity; // Segments: Specific; -BA; 117; 2009-01-15; 2009-01-28; 1000000; LHR; JFK; 08:20; 11:00; 07:40; Y; 300; 0; Y; YM; +BA; 117; 2009-01-15; 2009-01-28; 1000000; LHR; JFK; 08:20; 11:00; 07:40; Y; 300; 0; Y; YM; \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <qua...@us...> - 2010-07-07 15:10:20
|
Revision: 211 http://stdair.svn.sourceforge.net/stdair/?rev=211&view=rev Author: quannaus Date: 2010-07-07 15:10:13 +0000 (Wed, 07 Jul 2010) Log Message: ----------- [dev] Removed Network. Modified Paths: -------------- trunk/stdair/stdair/batches/stdair.cpp trunk/stdair/stdair/bom/BomManager.cpp trunk/stdair/stdair/bom/BomManager.hpp trunk/stdair/stdair/bom/BomRoot.cpp trunk/stdair/stdair/bom/BomRoot.hpp trunk/stdair/stdair/bom/BomSource.hpp trunk/stdair/stdair/bom/BomTypes.hpp trunk/stdair/stdair/bom/sources.mk trunk/stdair/stdair/command/CmdBomManager.cpp trunk/stdair/stdair/command/CmdBomManager.hpp trunk/stdair/stdair/service/STDAIR_Service.cpp Removed Paths: ------------- trunk/stdair/stdair/bom/AirportDate.cpp trunk/stdair/stdair/bom/AirportDate.hpp trunk/stdair/stdair/bom/AirportDateContent.cpp trunk/stdair/stdair/bom/AirportDateContent.hpp trunk/stdair/stdair/bom/AirportDateKey.cpp trunk/stdair/stdair/bom/AirportDateKey.hpp trunk/stdair/stdair/bom/AirportDateTypes.hpp trunk/stdair/stdair/bom/Network.cpp trunk/stdair/stdair/bom/Network.hpp trunk/stdair/stdair/bom/NetworkContent.cpp trunk/stdair/stdair/bom/NetworkContent.hpp trunk/stdair/stdair/bom/NetworkDate.cpp trunk/stdair/stdair/bom/NetworkDate.hpp trunk/stdair/stdair/bom/NetworkDateContent.cpp trunk/stdair/stdair/bom/NetworkDateContent.hpp trunk/stdair/stdair/bom/NetworkDateKey.cpp trunk/stdair/stdair/bom/NetworkDateKey.hpp trunk/stdair/stdair/bom/NetworkDateTypes.hpp trunk/stdair/stdair/bom/NetworkKey.cpp trunk/stdair/stdair/bom/NetworkKey.hpp trunk/stdair/stdair/bom/NetworkTypes.hpp trunk/stdair/stdair/bom/OutboundPath.cpp trunk/stdair/stdair/bom/OutboundPath.hpp trunk/stdair/stdair/bom/OutboundPathContent.cpp trunk/stdair/stdair/bom/OutboundPathContent.hpp trunk/stdair/stdair/bom/OutboundPathKey.cpp trunk/stdair/stdair/bom/OutboundPathKey.hpp trunk/stdair/stdair/bom/OutboundPathTypes.hpp Modified: trunk/stdair/stdair/batches/stdair.cpp =================================================================== --- trunk/stdair/stdair/batches/stdair.cpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/batches/stdair.cpp 2010-07-07 15:10:13 UTC (rev 211) @@ -7,14 +7,217 @@ // StdAir #include <stdair/STDAIR_Types.hpp> #include <stdair/bom/BomList.hpp> +#include <stdair/bom/BomSource.hpp> #include <stdair/factory/FacBomContent.hpp> +#include <stdair/service/Logger.hpp> +#include <stdair/STDAIR_Service.hpp> // ///////// M A I N //////////// int main (int argc, char* argv[]) { - try { + try { + + // Test create objects. + + // Output log File + std::string lLogFilename ("stdair.log"); + + // Set the log parameters + std::ofstream logOutputFile; + // open and clean the log outputfile + logOutputFile.open (lLogFilename.c_str()); + logOutputFile.clear(); + + const stdair::BasLogParams lLogParams (stdair::LOG::DEBUG, logOutputFile); + stdair::STDAIR_Service stdairService (lLogParams); + + // DEBUG + STDAIR_LOG_DEBUG ("Welcome to stdair"); + + // Step 0.0: initialisation + // Create the root of the Bom tree (i.e., a BomRoot object) + stdair::BomRoot& lBomRoot = + stdair::FacBomContent::instance().create<stdair::BomRoot>(); + + + // Step 0.1: Inventory level + // Create an Inventory (BA) + const stdair::AirlineCode_T lAirlineCode ("BA"); + stdair::InventoryKey_T lInventoryKey (lAirlineCode); + + stdair::Inventory& lInventory = + stdair::FacBomContent::instance().create<stdair::Inventory>(lInventoryKey); + stdair::FacBomContent::linkWithParent (lInventory, lBomRoot); + + // Display the inventory + STDAIR_LOG_DEBUG ("Inventory: " << lInventory.toString()); + + // Step 0.2: Flight-date level + // Create a FlightDate (BA15/10-JUN-2010) + const stdair::FlightNumber_T lFlightNumber = 15; + const stdair::Date_T lDate (2010, 6, 10); + stdair::FlightDateKey_T lFlightDateKey (lFlightNumber, lDate); + + stdair::FlightDate& lFlightDate = stdair::FacBomContent:: + instance().create<stdair::FlightDate> (lFlightDateKey); + stdair::FacBomContent::linkWithParent (lFlightDate, lInventory); + + // Display the flight-date + STDAIR_LOG_DEBUG ("FlightDate: " << lFlightDate.toString()); + + // Step 0.3: Segment-date level + // Create a first SegmentDate (LHR-SYD) + const stdair::AirportCode_T lLHR ("LHR"); + const stdair::AirportCode_T lSYD ("SYD"); + stdair::SegmentDateKey_T lSegmentDateKey (lLHR, lSYD); + + stdair::SegmentDate& lLHRSYDSegment = + stdair::FacBomContent:: + instance().create<stdair::SegmentDate> (lSegmentDateKey); + stdair::FacBomContent::linkWithParent (lLHRSYDSegment, lFlightDate); + + // Display the segment-date + STDAIR_LOG_DEBUG ("SegmentDate: " << lLHRSYDSegment.toString()); + + + // Create a second SegmentDate (LHR-BKK) + const stdair::AirportCode_T lBKK ("BKK"); + lSegmentDateKey = stdair::SegmentDateKey_T (lLHR, lBKK); + + stdair::SegmentDate& lLHRBKKSegment = + stdair::FacBomContent:: + instance().create<stdair::SegmentDate> (lSegmentDateKey); + stdair::FacBomContent::linkWithParent (lLHRBKKSegment, lFlightDate); + + // Display the segment-date + STDAIR_LOG_DEBUG ("SegmentDate: " << lLHRBKKSegment.toString()); + + + // Create a third SegmentDate (BKK-SYD) + lSegmentDateKey = stdair::SegmentDateKey_T (lBKK, lSYD); + + stdair::SegmentDate& lBKKSYDSegment = + stdair::FacBomContent:: + instance().create<stdair::SegmentDate> (lSegmentDateKey); + stdair::FacBomContent::linkWithParent (lBKKSYDSegment, lFlightDate); + + // Display the segment-date + STDAIR_LOG_DEBUG ("SegmentDate: " << lBKKSYDSegment.toString()); + + + // Step 0.4: Leg-date level + // Create a first LegDate (LHR) + stdair::LegDateKey_T lLegDateKey (lLHR); + + stdair::LegDate& lLHRLeg = + stdair::FacBomContent::instance().create<stdair::LegDate> (lLegDateKey); + stdair::FacBomContent::linkWithParent<stdair::LegDate>(lLHRLeg, lFlightDate); + + // Display the leg-date + STDAIR_LOG_DEBUG ("LegDate: " << lLHRLeg.toString()); + + // Create a second LegDate (BKK) + lLegDateKey = stdair::LegDateKey_T (lBKK); + + stdair::LegDate& lBKKLeg = + stdair::FacBomContent::instance().create<stdair::LegDate> (lLegDateKey); + stdair::FacBomContent::linkWithParent (lBKKLeg, lFlightDate); + + // Display the leg-date + STDAIR_LOG_DEBUG ("LegDate: " << lBKKLeg.toString()); + + // Step 0.5: segment-cabin level + // Create a SegmentCabin (Y) of the Segment LHR-BKK; + const stdair::CabinCode_T lY ("Y"); + stdair::SegmentCabinKey_T lYSegmentCabinKey (lY); + + stdair::SegmentCabin& lLHRBKKSegmentYCabin = + stdair::FacBomContent:: + instance().create<stdair::SegmentCabin> (lYSegmentCabinKey); + stdair::FacBomContent:: + linkWithParent (lLHRBKKSegmentYCabin, lLHRBKKSegment); + + // Display the segment-cabin + STDAIR_LOG_DEBUG ("SegmentCabin: " << lLHRBKKSegmentYCabin.toString()); + + // Create a SegmentCabin (Y) of the Segment BKK-SYD; + stdair::SegmentCabin& lBKKSYDSegmentYCabin = + stdair::FacBomContent:: + instance().create<stdair::SegmentCabin> (lYSegmentCabinKey); + stdair::FacBomContent:: + linkWithParent (lBKKSYDSegmentYCabin, lBKKSYDSegment); + // Display the segment-cabin + STDAIR_LOG_DEBUG ("SegmentCabin: " << lBKKSYDSegmentYCabin.toString()); + + // Create a SegmentCabin (Y) of the Segment LHR-SYD; + stdair::SegmentCabin& lLHRSYDSegmentYCabin = + stdair::FacBomContent:: + instance().create<stdair::SegmentCabin> (lYSegmentCabinKey); + stdair::FacBomContent:: + linkWithParent (lLHRSYDSegmentYCabin, lLHRSYDSegment); + + // Display the segment-cabin + STDAIR_LOG_DEBUG ("SegmentCabin: " << lLHRSYDSegmentYCabin.toString()); + + + // Step 0.6: leg-cabin level + // Create a LegCabin (Y) of the Leg LHR-BKK; + stdair::LegCabinKey_T lYLegCabinKey (lY); + + stdair::LegCabin& lLHRLegYCabin = + stdair::FacBomContent::instance().create<stdair::LegCabin> (lYLegCabinKey); + stdair::FacBomContent::linkWithParent (lLHRLegYCabin, lLHRLeg); + + // Display the leg-cabin + STDAIR_LOG_DEBUG ("LegCabin: " << lLHRLegYCabin.toString()); + + // Create a LegCabin (Y) of the Leg BKK-SYD; + stdair::LegCabin& lBKKLegYCabin = + stdair::FacBomContent::instance().create<stdair::LegCabin> (lYLegCabinKey); + stdair::FacBomContent::linkWithParent (lBKKLegYCabin, lBKKLeg); + + // Display the leg-cabin + STDAIR_LOG_DEBUG ("LegCabin: " << lBKKLegYCabin.toString()); + + // Step 0.7: booking class level + // Create a BookingClass (Q) of the Segment LHR-BKK, cabin Y; + const stdair::ClassCode_T lQ ("Q"); + stdair::BookingClassKey_T lQBookingClassKey (lQ); + + stdair::BookingClass& lLHRBKKSegmentYCabinQClass = + stdair::FacBomContent:: + instance().create<stdair::BookingClass> (lQBookingClassKey); + stdair::FacBomContent:: + linkWithParent (lLHRBKKSegmentYCabinQClass, lLHRBKKSegmentYCabin); + + // Display the booking class + STDAIR_LOG_DEBUG ("BookingClass: " + << lLHRBKKSegmentYCabinQClass.toString()); + + // Browse the BomRoot and display the created objects. + STDAIR_LOG_DEBUG ("Browse the BomRoot"); + + const stdair::InventoryList_T& lInventoryList = lBomRoot.getInventoryList(); + for (stdair::InventoryList_T::iterator itInv = lInventoryList.begin(); + itInv != lInventoryList.end(); ++itInv) { + const stdair::Inventory& lCurrentInventory = *itInv; + STDAIR_LOG_DEBUG ("Inventory: " << lCurrentInventory.toString()); + + const stdair::FlightDateList_T& lFlightDateList = + lCurrentInventory.getFlightDateList (); + for (stdair::FlightDateList_T::iterator itFlightDate = + lFlightDateList.begin(); + itFlightDate != lFlightDateList.end(); ++itFlightDate) { + const stdair::FlightDate& lCurrentFlightDate = *itFlightDate; + STDAIR_LOG_DEBUG ("FlightDate: " << lCurrentFlightDate.describeKey()); + } + } + + // Close the Log outputFile + logOutputFile.close(); + } catch (const std::exception& stde) { std::cerr << "Standard exception: " << stde.what() << std::endl; return -1; Deleted: trunk/stdair/stdair/bom/AirportDate.cpp =================================================================== --- trunk/stdair/stdair/bom/AirportDate.cpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/AirportDate.cpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,90 +0,0 @@ -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STL -#include <cassert> -// STDAIR -#include <stdair/basic/BasConst_Inventory.hpp> -#include <stdair/bom/BomSource.hpp> - -namespace stdair { - - // //////////////////////////////////////////////////////////////////// - AirportDate::AirportDate (const Key_T& iKey, - Structure_T& ioAirportStructure) - : AirportDateContent (iKey), _structure (ioAirportStructure) { - init (); - } - - // //////////////////////////////////////////////////////////////////// - AirportDate::~AirportDate () { - } - - // //////////////////////////////////////////////////////////////////// - void AirportDate::init () { - _structure.initChildrenHolder<OutboundPath>(); - } - - // //////////////////////////////////////////////////////////////////// - void AirportDate::toStream (std::ostream& ioOut) const { - ioOut << toString() << std::endl; - } - - // //////////////////////////////////////////////////////////////////// - void AirportDate::fromStream (std::istream& ioIn) { - } - - // //////////////////////////////////////////////////////////////////// - std::string AirportDate::toString() const { - std::ostringstream oStr; - oStr << describeShortKey() << std::endl; - return oStr.str(); - } - - // //////////////////////////////////////////////////////////////////// - const std::string AirportDate::describeKey() const { - std::ostringstream oStr; - oStr << _structure.describeParentKey() << ", " << describeShortKey(); - return oStr.str(); - } - - // //////////////////////////////////////////////////////////////////// - OutboundPathList_T AirportDate::getOutboundPathList () const { - return _structure.getChildrenHolder<OutboundPath>(); - } - - // //////////////////////////////////////////////////////////////////// - OutboundPathMultimap_T AirportDate::getOutboundPathMultimap () const { - return _structure.getChildrenHolder<OutboundPath>(); - } - - - // //////////////////////////////////////////////////////////////////// - void AirportDate:: - buildOutboundPathListList (OutboundPath& ioOutboundPath) { - const OutboundPathKey_T& lOutboundPathKey = ioOutboundPath.getKey(); - const NbOfSegments_T& lNbOfSegments = - lOutboundPathKey.getNbOfSegments (); - assert (lNbOfSegments > 0 - && lNbOfSegments <= MAXIMUM_NUMBER_OF_SEGMENTS_IN_OND); - const NbOfSegments_T lNbOfSegments_m1 = - static_cast<const NbOfSegments_T> (lNbOfSegments - 1); - - // If needed, initialise the list of lists with empty fixed-length - // outbound-path lists. - while (_outboundPathListList.size() <= lNbOfSegments_m1) { - OutboundPathLightList_T lOutboundPathLightList; - _outboundPathListList.push_back (lOutboundPathLightList); - } - - // Retrieve the i-fixed-length Outbound-Path list (i = number of - // segments). - OutboundPathLightList_T& lOutboundPathLightList = - _outboundPathListList.at (lNbOfSegments-1); - - // Add the OutboundPath to that fixed-length-path list. - lOutboundPathLightList.push_back (&ioOutboundPath); - } - -} - Deleted: trunk/stdair/stdair/bom/AirportDate.hpp =================================================================== --- trunk/stdair/stdair/bom/AirportDate.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/AirportDate.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,115 +0,0 @@ -#ifndef __STDAIR_BOM_AIRPORTDATE_HPP -#define __STDAIR_BOM_AIRPORTDATE_HPP - -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// Boost Fusion -#include <boost/version.hpp> -#if BOOST_VERSION >= 103500 -#include <boost/fusion/include/map.hpp> -#else // BOOST_VERSION >= 103500 -#include <boost/mpl/map.hpp> -#endif // BOOST_VERSION >= 103500 -// StdAir -#include <stdair/bom/AirportDateContent.hpp> -#include <stdair/bom/AirportDateTypes.hpp> -#include <stdair/bom/OutboundPathTypes.hpp> - -namespace stdair { - // Forward declarations - class NetworkDate; - class OutboundPath; - - /** Class representing the actual functional/business content for a - airport-date. */ - class AirportDate : public AirportDateContent { - friend class FacBomContent; - - public: - // ////////////////////////////////////////////////////////////////// - // See the explanations, within the BomRoot class, for all - // the types which require to be specified below - // ////////////////////////////////////////////////////////////////// - /** Definition allowing to retrieve the associated BOM structure type. */ - typedef AirportDateStructure_T Structure_T; - - /** Definition allowing to retrieve the associated parent - BOM content type. */ - typedef NetworkDate Parent_T; - - /** Definition allowing to retrieve the map/multimap type using by - BomChildrenHolder. */ - typedef std::map<const MapKey_T, const Structure_T*> Map_T; - - /** Define the list of children holder types. */ -#if BOOST_VERSION >= 103500 - typedef boost::fusion::map< - boost::fusion::pair<OutboundPath, OutboundPathHolder_T*> - > ChildrenHolderMap_T; -#else // BOOST_VERSION >= 103500 - typedef boost::mpl::map< > ChildrenHolderMap_T; -#endif // BOOST_VERSION >= 103500 - // ////////////////////////////////////////////////////////////////// - - public: - // /////////// Getters ///////////// - /** Get a list or map of a children type for iteration methods. */ - OutboundPathList_T getOutboundPathList () const; - OutboundPathMultimap_T getOutboundPathMultimap () const; - - /** Get the OutboundPathListList. */ - const OutboundPathListList_T& getOutboundPathListList () const { - return _outboundPathListList; - } - - public: - // //////////// Business Methods ////////////// - /** Build the list of lists of outbound paths. **/ - void buildOutboundPathListList (stdair::OutboundPath&); - - public: - // /////////// Display support methods ///////// - /** Dump a Business Object into an output stream. - @param ostream& the output stream. */ - void toStream (std::ostream& ioOut) const; - - /** Read a Business Object from an input stream. - @param istream& the input stream. */ - void fromStream (std::istream& ioIn); - - /** Get the serialised version of the Business Object. */ - std::string toString() const; - - /** Get a string describing the whole key (differentiating two objects - at any level). */ - const std::string describeKey() const; - - protected: - /** Constructors are private so as to force the usage of the Factory - layer. */ - /** Constructors. */ - AirportDate (const Key_T&, Structure_T&); - /** Destructor. */ - ~AirportDate(); - /** Initialise all the pointers of children holder to NULL. */ - void init(); - /** Default constructors. */ - AirportDate (); - AirportDate (const AirportDate&); - - protected: - // Attributes - /** Reference structure. */ - Structure_T& _structure; - - /** The list of lists of OutboundPaths, used uniquement for the - construction of the main list of OutboundPaths in - AirportDateStructure. */ - OutboundPathListList_T _outboundPathListList; - - }; - -} -#endif // __STDAIR_BOM_AIRPORTDATE_HPP - Deleted: trunk/stdair/stdair/bom/AirportDateContent.cpp =================================================================== --- trunk/stdair/stdair/bom/AirportDateContent.cpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/AirportDateContent.cpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,21 +0,0 @@ -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STL -#include <cassert> -// STDAIR -#include <stdair/bom/AirportDateContent.hpp> - -namespace stdair { - - // //////////////////////////////////////////////////////////////////// - AirportDateContent::AirportDateContent (const Key_T& iKey) \ - : _key (iKey) { - } - - // //////////////////////////////////////////////////////////////////// - AirportDateContent::~AirportDateContent () { - } - -} - Deleted: trunk/stdair/stdair/bom/AirportDateContent.hpp =================================================================== --- trunk/stdair/stdair/bom/AirportDateContent.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/AirportDateContent.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,66 +0,0 @@ -#ifndef __STDAIR_BOM_AIRPORTDATECONTENT_HPP -#define __STDAIR_BOM_AIRPORTDATECONTENT_HPP - -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STDAIR -#include <stdair/bom/BomContent.hpp> -#include <stdair/bom/AirportDateKey.hpp> - -namespace stdair { - - /** Class representing the actual attributes for an airport-date. */ - class AirportDateContent : public BomContent { - public: - // Type definitions. - /** Definition allowing to retrieve the associated BOM key type. */ - typedef AirportDateKey_T Key_T; - - public: - // /////////// Getters ///////////// - /** Get the airport-date key. */ - const Key_T& getKey() const { - return _key; - } - - /** Get the (origin) airport (part of the primary key). */ - const AirportCode_T& getOrigin() const { - return _key.getBoardingPoint(); - } - - public: - // /////////// Display support methods ///////// - /** Dump a Business Object into an output stream. - @param ostream& the output stream. */ - virtual void toStream (std::ostream& ioOut) const = 0; - - /** Read a Business Object from an input stream. - @param istream& the input stream. */ - virtual void fromStream (std::istream& ioIn) = 0; - - /** Get the serialised version of the Business Object. */ - virtual std::string toString() const = 0; - - /** Get a string describing the short key (differentiating two objects - at the same level). */ - const std::string describeShortKey() const { return _key.toString(); } - - - protected: - /** Default constructors. */ - AirportDateContent (const Key_T&); - AirportDateContent (const AirportDateContent&); - /** Destructor. */ - virtual ~AirportDateContent(); - - protected: - // Attributes - /** The key of both structure and content objects. */ - Key_T _key; - - }; - -} -#endif // __STDAIR_BOM_AIRPORTDATECONTENT_HPP - Deleted: trunk/stdair/stdair/bom/AirportDateKey.cpp =================================================================== --- trunk/stdair/stdair/bom/AirportDateKey.cpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/AirportDateKey.cpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,43 +0,0 @@ -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STDAIR -#include <stdair/bom/AirportDateKey.hpp> - -namespace stdair { - - // //////////////////////////////////////////////////////////////////// - AirportDateKey_T::AirportDateKey_T () : _origin ("ZZZ") { - } - - // //////////////////////////////////////////////////////////////////// - AirportDateKey_T::AirportDateKey_T (const AirportCode_T& iAirportCode) - : _origin (iAirportCode) { - } - - // //////////////////////////////////////////////////////////////////// - AirportDateKey_T::AirportDateKey_T (const AirportDateKey_T& iKey) - : _origin (iKey._origin) { - } - - // //////////////////////////////////////////////////////////////////// - AirportDateKey_T::~AirportDateKey_T () { - } - - // //////////////////////////////////////////////////////////////////// - void AirportDateKey_T::toStream (std::ostream& ioOut) const { - ioOut << "AirportDateKey: " << toString() << std::endl; - } - - // //////////////////////////////////////////////////////////////////// - void AirportDateKey_T::fromStream (std::istream& ioIn) { - } - - // //////////////////////////////////////////////////////////////////// - const std::string AirportDateKey_T::toString() const { - std::ostringstream oStr; - oStr << _origin; - return oStr.str(); - } - -} Deleted: trunk/stdair/stdair/bom/AirportDateKey.hpp =================================================================== --- trunk/stdair/stdair/bom/AirportDateKey.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/AirportDateKey.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,56 +0,0 @@ -#ifndef __STDAIR_BOM_AIRPORTDATEKEY_HPP -#define __STDAIR_BOM_AIRPORTDATEKEY_HPP - -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STDAIR -#include <stdair/bom/BomKey.hpp> - -namespace stdair { - /** Key of airport-date. */ - struct AirportDateKey_T : public BomKey_T { - - private: - // /////////// Default constructor ////////// - AirportDateKey_T (); - - public: - // /////////// Construction /////////// - /** Constructors. */ - AirportDateKey_T (const AirportCode_T& iAirportCode); - AirportDateKey_T (const AirportDateKey_T&); - /** Destructor. */ - ~AirportDateKey_T (); - - // /////////// Getters ////////// - /** Get boarding airport. */ - const AirportCode_T& getBoardingPoint() const { - return _origin; - } - - // /////////// Display support methods ///////// - /** Dump a Business Object Key into an output stream. - @param ostream& the output stream. */ - void toStream (std::ostream& ioOut) const; - - /** Read a Business Object Key from an input stream. - @param istream& the input stream. */ - void fromStream (std::istream& ioIn); - - /** Get the serialised version of the Business Object Key. - <br>That string is unique, at the level of a given Business Object, - when among children of a given parent Business Object. - <br>For instance, "H" and "K" allow to differentiate among two - marketing classes for the same segment-date. */ - const std::string toString() const; - - private: - // Attributes - /** The boarding airport. */ - AirportCode_T _origin; - }; - -} - -#endif // __STDAIR_BOM_NETWORKDATEKEY_HPP Deleted: trunk/stdair/stdair/bom/AirportDateTypes.hpp =================================================================== --- trunk/stdair/stdair/bom/AirportDateTypes.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/AirportDateTypes.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,34 +0,0 @@ -// ////////////////////////////////////////////////////////////////////// -#ifndef __STDAIR_BOM_AIRPORTDATETYPES_HPP -#define __STDAIR_BOM_AIRPORTDATETYPES_HPP - -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STL -#include <map> -#include <vector> - -namespace stdair { - - // Forward declarations. - template <typename CONTENT> class Structure; - template <typename CONTENT> class BomChildrenHolderImp; - template <typename BOM> struct BomList_T; - template <typename BOM> struct BomMap_T; - class AirportDate; - - /** Define the AirportDate structure. */ - typedef Structure<AirportDate> AirportDateStructure_T; - - /** Define the AirportDate holder. */ - typedef BomChildrenHolderImp<AirportDate> AirportDateHolder_T; - - /** Define the airport-date list. */ - typedef BomList_T<AirportDate> AirportDateList_T; - - /** Define the airport-date map. */ - typedef BomMap_T<AirportDate> AirportDateMap_T; -} -#endif // __STDAIR_BOM_AIRPORTDATETYPES_HPP - Modified: trunk/stdair/stdair/bom/BomManager.cpp =================================================================== --- trunk/stdair/stdair/bom/BomManager.cpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/BomManager.cpp 2010-07-07 15:10:13 UTC (rev 211) @@ -25,19 +25,8 @@ // Call recursively the display() method on the children objects display (oStream, lCurrentInventory); - } + } - // Browse the Network objects - const NetworkList_T& lNetworkList= iBomRoot.getNetworkList (); - for (NetworkList_T::iterator itInv = lNetworkList.begin(); - itInv != lNetworkList.end(); ++itInv) { - const Network& lCurrentNetwork = *itInv; - - // Call recursively the display() method on the children objects - oStream << std::endl; - display (oStream, lCurrentNetwork); - } - // Reset formatting flags of the given output stream oStream.flags (oldFlags); } @@ -312,94 +301,6 @@ } // //////////////////////////////////////////////////////////////////// - void BomManager::display (std::ostream& oStream, - const Network& iNetwork) { - // Store current formatting flags of the given output stream - std::ios::fmtflags oldFlags = oStream.flags(); - - oStream << "Network: " << std::endl; - - int j = 1; - const NetworkDateList_T& lNetworkDateList = iNetwork.getNetworkDateList(); - for (NetworkDateList_T::iterator itNetworkDate = - lNetworkDateList.begin(); - itNetworkDate != lNetworkDateList.end(); ++itNetworkDate, ++j) { - const NetworkDate& lCurrentNetworkDate = *itNetworkDate; - - - // Call recursively the display() method on the children objects - display (oStream, lCurrentNetworkDate); - } - - // Reset formatting flags of the given output stream - oStream.flags (oldFlags); - } - - // //////////////////////////////////////////////////////////////////// - void BomManager::display (std::ostream& oStream, - const NetworkDate& iNetworkDate) { - // Store current formatting flags of the given output stream - std::ios::fmtflags oldFlags = oStream.flags(); - - oStream << iNetworkDate.describeKey() << std::endl; - - const AirportDateList_T& lAirportDateList= iNetworkDate.getAirportDateList(); - for (AirportDateList_T::iterator itAirportDate = lAirportDateList.begin(); - itAirportDate != lAirportDateList.end(); ++itAirportDate) { - const AirportDate& lCurrentAirportDate = *itAirportDate; - - // Call recursively the display() method on the children objects - display (oStream, lCurrentAirportDate); - } - - // Reset formatting flags of the given output stream - oStream.flags (oldFlags); - } - - // //////////////////////////////////////////////////////////////////// - void BomManager::display (std::ostream& oStream, - const AirportDate& iAirportDate) { - // Store current formatting flags of the given output stream - std::ios::fmtflags oldFlags = oStream.flags(); - - oStream << iAirportDate.describeKey() << std::endl; - - const OutboundPathList_T& lOutboundPathList = - iAirportDate.getOutboundPathList(); - for (OutboundPathList_T::iterator itPath = lOutboundPathList.begin(); - itPath != lOutboundPathList.end(); ++itPath) { - const OutboundPath& lCurrentOutboundPath = *itPath; - - // Call recursively the display() method on the children objects - display (oStream, lCurrentOutboundPath); - } - - // Reset formatting flags of the given output stream - oStream.flags (oldFlags); - } - - // //////////////////////////////////////////////////////////////////// - void BomManager::display (std::ostream& oStream, - const OutboundPath& iOutboundPath) { - // Store current formatting flags of the given output stream - std::ios::fmtflags oldFlags = oStream.flags(); - - oStream << iOutboundPath.describeKey() << std::endl; - - const SegmentDateList_T& lSegmentDateList = - iOutboundPath.getSegmentDateList(); - for (SegmentDateList_T::iterator itSegmentDate = lSegmentDateList.begin(); - itSegmentDate != lSegmentDateList.end(); ++itSegmentDate) { - const SegmentDate& lCurrentSegmentDate = *itSegmentDate; - - oStream << lCurrentSegmentDate.describeKey() << std::endl; - } - - // Reset formatting flags of the given output stream - oStream.flags (oldFlags); - } - - // //////////////////////////////////////////////////////////////////// void BomManager::csvDisplay (std::ostream& oStream, const BookingRequestStruct& iBookingRequest) { // Store current formatting flags of the given output stream Modified: trunk/stdair/stdair/bom/BomManager.hpp =================================================================== --- trunk/stdair/stdair/bom/BomManager.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/BomManager.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -23,10 +23,6 @@ class SegmentPathPeriod; class FlightPeriod; class SegmentPeriod; - class Network; - class NetworkDate; - class AirportDate; - class OutboundPath; struct BookingRequestStruct; /** Utility class for StdAir objects. */ @@ -100,34 +96,6 @@ the objects of the given BOM tree. @param std::ostream& Output stream in which the BOM tree should be logged/dumped. - @param const Network& Root of the BOM tree to be displayed. */ - static void display (std::ostream&, const Network&); - - /** Recursively display (dump in the underlying output log stream) - the objects of the given BOM tree. - @param std::ostream& Output stream in which the BOM tree should be - logged/dumped. - @param const NetworkDate& Root of the BOM tree to be displayed. */ - static void display (std::ostream&, const NetworkDate&); - - /** Recursively display (dump in the underlying output log stream) - the objects of the given BOM tree. - @param std::ostream& Output stream in which the BOM tree should be - logged/dumped. - @param const AirportDate& Root of the BOM tree to be displayed. */ - static void display (std::ostream&, const AirportDate&); - - /** Recursively display (dump in the underlying output log stream) - the objects of the given BOM tree. - @param std::ostream& Output stream in which the BOM tree should be - logged/dumped. - @param const OutboundPath& Root of the BOM tree to be displayed. */ - static void display (std::ostream&, const OutboundPath&); - - /** Recursively display (dump in the underlying output log stream) - the objects of the given BOM tree. - @param std::ostream& Output stream in which the BOM tree should be - logged/dumped. @param const LegCabin& Root of the BOM tree to be displayed. */ static void csvDisplay (std::ostream&, const BookingRequestStruct& iBookingRequest); Modified: trunk/stdair/stdair/bom/BomRoot.cpp =================================================================== --- trunk/stdair/stdair/bom/BomRoot.cpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/BomRoot.cpp 2010-07-07 15:10:13 UTC (rev 211) @@ -22,7 +22,6 @@ void BomRoot::init() { _structure.initChildrenHolder<Inventory>(); _structure.initChildrenHolder<ReachableUniverse>(); - _structure.initChildrenHolder<Network>(); _structure.initChildrenHolder<AirlineFeature>(); _structure.initChildrenHolder<DemandStream>(); _structure.initChildrenHolder<YieldStore>(); @@ -47,16 +46,6 @@ ReachableUniverseMap_T BomRoot::getReachableUniverseMap () const { return _structure.getChildrenHolder<ReachableUniverse>(); } - - // //////////////////////////////////////////////////////////////////// - NetworkList_T BomRoot::getNetworkList () const { - return _structure.getChildrenHolder<Network>(); - } - - // //////////////////////////////////////////////////////////////////// - NetworkMap_T BomRoot::getNetworkMap () const { - return _structure.getChildrenHolder<Network>(); - } // //////////////////////////////////////////////////////////////////// DemandStreamList_T BomRoot::getDemandStreamList () const { @@ -100,11 +89,6 @@ } // //////////////////////////////////////////////////////////////////// - Network* BomRoot::getNetwork (const NetworkID_T& iNetworkID) const { - return _structure.getChildPtr<Network> (iNetworkID); - } - - // //////////////////////////////////////////////////////////////////// YieldStore* BomRoot::getYieldStore (const AirlineCode_T& iAirlineCode) const { return _structure.getChildPtr<YieldStore> (iAirlineCode); } Modified: trunk/stdair/stdair/bom/BomRoot.hpp =================================================================== --- trunk/stdair/stdair/bom/BomRoot.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/BomRoot.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -16,7 +16,6 @@ #include <stdair/bom/BomRootTypes.hpp> #include <stdair/bom/InventoryTypes.hpp> #include <stdair/bom/ReachableUniverseTypes.hpp> -#include <stdair/bom/NetworkTypes.hpp> #include <stdair/bom/DemandStreamTypes.hpp> #include <stdair/bom/AirlineFeatureTypes.hpp> #include <stdair/bom/YieldStoreTypes.hpp> @@ -65,7 +64,6 @@ typedef boost::fusion::map< boost::fusion::pair<Inventory, InventoryHolder_T*>, boost::fusion::pair<ReachableUniverse, ReachableUniverseHolder_T*>, - boost::fusion::pair<Network, NetworkHolder_T*>, boost::fusion::pair<AirlineFeature, AirlineFeatureHolder_T*>, boost::fusion::pair<DemandStream, DemandStreamHolder_T*>, boost::fusion::pair<YieldStore, YieldStoreHolder_T*> @@ -82,8 +80,6 @@ InventoryMap_T getInventoryMap () const; ReachableUniverseList_T getReachableUniverseList () const; ReachableUniverseMap_T getReachableUniverseMap () const; - NetworkList_T getNetworkList () const; - NetworkMap_T getNetworkMap () const; DemandStreamList_T getDemandStreamList () const; DemandStreamMap_T getDemandStreamMap () const; AirlineFeatureList_T getAirlineFeatureList () const; @@ -101,11 +97,6 @@ <br>If not existing, return the NULL pointer. */ ReachableUniverse* getReachableUniverse (const AirportCode_T&) const; - /** Retrieve, if existing, the Network corresponding to the - given airline code (Network key). - <br>If not existing, return the NULL pointer. */ - Network* getNetwork (const NetworkID_T&) const; - /** Retrieve, if existing, the YieldStore corresponding to the given airline code (YieldStore key). <br>If not existing, return the NULL pointer. */ Modified: trunk/stdair/stdair/bom/BomSource.hpp =================================================================== --- trunk/stdair/stdair/bom/BomSource.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/BomSource.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -10,10 +10,6 @@ #include <stdair/bom/BomMultimap.hpp> #include <stdair/bom/BomList.hpp> #include <stdair/bom/BomRoot.hpp> -#include <stdair/bom/Network.hpp> -#include <stdair/bom/NetworkDate.hpp> -#include <stdair/bom/AirportDate.hpp> -#include <stdair/bom/OutboundPath.hpp> #include <stdair/bom/Inventory.hpp> #include <stdair/bom/FlightDate.hpp> #include <stdair/bom/SegmentDate.hpp> Modified: trunk/stdair/stdair/bom/BomTypes.hpp =================================================================== --- trunk/stdair/stdair/bom/BomTypes.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/BomTypes.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -5,10 +5,6 @@ // Import section // ////////////////////////////////////////////////////////////////////// #include <stdair/bom/BomRootTypes.hpp> -#include <stdair/bom/NetworkTypes.hpp> -#include <stdair/bom/NetworkDateTypes.hpp> -#include <stdair/bom/AirportDateTypes.hpp> -#include <stdair/bom/OutboundPathTypes.hpp> #include <stdair/bom/InventoryTypes.hpp> #include <stdair/bom/FlightDateTypes.hpp> #include <stdair/bom/SegmentDateTypes.hpp> Deleted: trunk/stdair/stdair/bom/Network.cpp =================================================================== --- trunk/stdair/stdair/bom/Network.cpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/Network.cpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,66 +0,0 @@ -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STL -#include <cassert> -// STDAIR -#include <stdair/bom/BomSource.hpp> - -namespace stdair { - - // //////////////////////////////////////////////////////////////////// - Network::Network (const Key_T& iKey, - Structure_T& ioNetworkStructure) - : NetworkContent (iKey), _structure (ioNetworkStructure) { - init (); - } - - // //////////////////////////////////////////////////////////////////// - Network::~Network () { - } - - // //////////////////////////////////////////////////////////////////// - void Network::init () { - _structure.initChildrenHolder<NetworkDate>(); - } - - // //////////////////////////////////////////////////////////////////// - void Network::toStream (std::ostream& ioOut) const { - ioOut << toString() << std::endl; - } - - // //////////////////////////////////////////////////////////////////// - void Network::fromStream (std::istream& ioIn) { - } - - // //////////////////////////////////////////////////////////////////// - std::string Network::toString() const { - std::ostringstream oStr; - oStr << _key.toString(); - return oStr.str(); - } - - // //////////////////////////////////////////////////////////////////// - const std::string Network::describeKey() const { - return _key.toString(); - } - - // //////////////////////////////////////////////////////////////////// - NetworkDateList_T Network::getNetworkDateList () const { - return _structure.getChildrenHolder<NetworkDate>(); - } - - // //////////////////////////////////////////////////////////////////// - NetworkDateMap_T Network::getNetworkDateMap () const { - return _structure.getChildrenHolder<NetworkDate>(); - } - - // //////////////////////////////////////////////////////////////////// - NetworkDate* Network::getNetworkDate (const Date_T& iDate) const { - std::ostringstream ostr; - ostr << iDate; - return _structure.getChildPtr<NetworkDate> (ostr.str()); - } - -} - Deleted: trunk/stdair/stdair/bom/Network.hpp =================================================================== --- trunk/stdair/stdair/bom/Network.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/Network.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,104 +0,0 @@ -#ifndef __STDAIR_BOM_NETWORK_HPP -#define __STDAIR_BOM_NETWORK_HPP - -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// Boost Fusion -#include <boost/version.hpp> -#if BOOST_VERSION >= 103500 -#include <boost/fusion/include/map.hpp> -#else // BOOST_VERSION >= 103500 -#include <boost/mpl/map.hpp> -#endif // BOOST_VERSION >= 103500 -// StdAir -#include <stdair/bom/NetworkContent.hpp> -#include <stdair/bom/NetworkTypes.hpp> -#include <stdair/bom/NetworkDateTypes.hpp> - -namespace stdair { - // Forward declarations - class BomRoot; - class NetworkDate; - - /** Class representing the actual functional/business content for - a network. */ - class Network : public NetworkContent { - friend class FacBomContent; - - public: - // ////////////////////////////////////////////////////////////////// - // See the explanations, within the BomRoot class, for all - // the types which require to be specified below - // ////////////////////////////////////////////////////////////////// - /** Definition allowing to retrieve the associated BOM structure type. */ - typedef NetworkStructure_T Structure_T; - - /** Definition allowing to retrieve the associated parent - BOM content type. */ - typedef BomRoot Parent_T; - - /** Definition allowing to retrieve the map/multimap type using by - BomChildrenHolder. */ - typedef std::map<const MapKey_T, const Structure_T*> Map_T; - - /** Define the list of children holder types. */ -#if BOOST_VERSION >= 103500 - typedef boost::fusion::map< - boost::fusion::pair<NetworkDate, NetworkDateHolder_T*> - > ChildrenHolderMap_T; -#else // BOOST_VERSION >= 103500 - typedef boost::mpl::map< > ChildrenHolderMap_T; -#endif // BOOST_VERSION >= 103500 - // ////////////////////////////////////////////////////////////////// - - public: - // /////////// Getters ///////////// - /** Get a list or map of a children type for iteration methods. */ - NetworkDateList_T getNetworkDateList () const; - NetworkDateMap_T getNetworkDateMap () const; - - /** Retrieve, if existing, the NetworkDate corresponding to the - given Date . - <br>If not existing, return the NULL pointer. */ - NetworkDate* getNetworkDate (const Date_T&) const; - - public: - // /////////// Display support methods ///////// - /** Dump a Business Object into an output stream. - @param ostream& the output stream. */ - void toStream (std::ostream& ioOut) const; - - /** Read a Business Object from an input stream. - @param istream& the input stream. */ - void fromStream (std::istream& ioIn); - - /** Get the serialised version of the Business Object. */ - std::string toString() const; - - /** Get a string describing the whole key (differentiating two objects - at any level). */ - const std::string describeKey() const; - - protected: - /** Constructors are private so as to force the usage of the Factory - layer. */ - /** Constructors. */ - Network (const Key_T&, Structure_T&); - /** Destructor. */ - ~Network(); - /** Initialise all the pointers of children holder to NULL. */ - void init(); - /** Default constructors. */ - Network (); - Network (const Network&); - - protected: - // Attributes - /** Reference structure. */ - Structure_T& _structure; - }; - -} -#endif // __STDAIR_BOM_NETWORK_HPP - Deleted: trunk/stdair/stdair/bom/NetworkContent.cpp =================================================================== --- trunk/stdair/stdair/bom/NetworkContent.cpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/NetworkContent.cpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,20 +0,0 @@ -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STL -#include <cassert> -// STDAIR -#include <stdair/bom/NetworkContent.hpp> - -namespace stdair { - - // //////////////////////////////////////////////////////////////////// - NetworkContent::NetworkContent (const Key_T& iKey) : _key (iKey) { - } - - // //////////////////////////////////////////////////////////////////// - NetworkContent::~NetworkContent () { - } - -} - Deleted: trunk/stdair/stdair/bom/NetworkContent.hpp =================================================================== --- trunk/stdair/stdair/bom/NetworkContent.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/NetworkContent.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,59 +0,0 @@ -#ifndef __STDAIR_BOM_NETWORKCONTENT_HPP -#define __STDAIR_BOM_NETWORKCONTENT_HPP - -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STDAIR -#include <stdair/bom/BomContent.hpp> -#include <stdair/bom/NetworkKey.hpp> - -namespace stdair { - - /** Class representing the actual attributes for an airline network. */ - class NetworkContent : public BomContent { - public : - // Type definitions - /** Definition allowing to retrieve the associated BOM key type. */ - typedef NetworkKey_T Key_T; - - public: - // ////////// Getters //////////// - /** Get the network key. */ - const Key_T& getKey() const { - return _key; - } - - public: - // /////////// Display support methods ///////// - /** Dump a Business Object into an output stream. - @param ostream& the output stream. */ - virtual void toStream (std::ostream& ioOut) const = 0; - - /** Read a Business Object from an input stream. - @param istream& the input stream. */ - virtual void fromStream (std::istream& ioIn) = 0; - - /** Get the serialised version of the Business Object. */ - virtual std::string toString() const = 0; - - /** Get a string describing the short key (differentiating two objects - at the same level). */ - const std::string describeShortKey() const { return _key.toString(); } - - protected: - /** Default constructors. */ - NetworkContent (const Key_T&); - NetworkContent (const NetworkContent&); - /** Destructor. */ - virtual ~NetworkContent(); - - protected: - // Attributes - /** The key of both structure and content objects. */ - Key_T _key; - }; - -} -#endif // __STDAIR_BOM_NETWORKCONTENT_HPP - Deleted: trunk/stdair/stdair/bom/NetworkDate.cpp =================================================================== --- trunk/stdair/stdair/bom/NetworkDate.cpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/NetworkDate.cpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,66 +0,0 @@ -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STL -#include <cassert> -// STDAIR -#include <stdair/bom/BomSource.hpp> - -namespace stdair { - - // //////////////////////////////////////////////////////////////////// - NetworkDate::NetworkDate (const Key_T& iKey, - Structure_T& ioNetworkDateStructure) - : NetworkDateContent (iKey), _structure (ioNetworkDateStructure) { - init (); - } - - // //////////////////////////////////////////////////////////////////// - NetworkDate::~NetworkDate () { - } - - // //////////////////////////////////////////////////////////////////// - void NetworkDate::init () { - _structure.initChildrenHolder<AirportDate>(); - } - - // //////////////////////////////////////////////////////////////////// - void NetworkDate::toStream (std::ostream& ioOut) const { - ioOut << toString() << std::endl; - } - - // //////////////////////////////////////////////////////////////////// - void NetworkDate::fromStream (std::istream& ioIn) { - } - - // //////////////////////////////////////////////////////////////////// - std::string NetworkDate::toString() const { - std::ostringstream oStr; - oStr << _key.toString(); - return oStr.str(); - } - - // //////////////////////////////////////////////////////////////////// - const std::string NetworkDate::describeKey() const { - std::ostringstream oStr; - oStr << _structure.describeParentKey() << ", " << describeShortKey(); - return oStr.str(); - } - - // //////////////////////////////////////////////////////////////////// - AirportDateList_T NetworkDate::getAirportDateList () const { - return _structure.getChildrenHolder<AirportDate>(); - } - - // //////////////////////////////////////////////////////////////////// - AirportDateMap_T NetworkDate::getAirportDateMap () const { - return _structure.getChildrenHolder<AirportDate>(); - } - - // //////////////////////////////////////////////////////////////////// - AirportDate* NetworkDate::getAirportDate (const AirportCode_T& iCode) const { - return _structure.getChildPtr<AirportDate> (iCode); - } - -} - Deleted: trunk/stdair/stdair/bom/NetworkDate.hpp =================================================================== --- trunk/stdair/stdair/bom/NetworkDate.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/NetworkDate.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,105 +0,0 @@ -#ifndef __STDAIR_BOM_NETWORKDATE_HPP -#define __STDAIR_BOM_NETWORKDATE_HPP - -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// Boost Fusion -#include <boost/version.hpp> -#if BOOST_VERSION >= 103500 -#include <boost/fusion/include/map.hpp> -#else // BOOST_VERSION >= 103500 -#include <boost/mpl/map.hpp> -#endif // BOOST_VERSION >= 103500 -// StdAir -#include <stdair/bom/NetworkDateContent.hpp> -#include <stdair/bom/NetworkDateTypes.hpp> -#include <stdair/bom/AirportDateTypes.hpp> - -namespace stdair { - // Forward declarations - class Network; - class AirportDate; - - /** Class representing the actual functional/business content for - a network-date. */ - class NetworkDate : public NetworkDateContent { - friend class FacBomContent; - - public: - // ////////////////////////////////////////////////////////////////// - // See the explanations, within the BomRoot class, for all - // the types which require to be specified below - // ////////////////////////////////////////////////////////////////// - /** Definition allowing to retrieve the associated BOM structure type. */ - typedef NetworkDateStructure_T Structure_T; - - /** Definition allowing to retrieve the associated parent - BOM content type. */ - typedef Network Parent_T; - - /** Definition allowing to retrieve the map/multimap type using by - BomChildrenHolder. */ - typedef std::map<const MapKey_T, const Structure_T*> Map_T; - - /** Define the list of children holder types. */ -#if BOOST_VERSION >= 103500 - typedef boost::fusion::map< - boost::fusion::pair<AirportDate, AirportDateHolder_T*> - > ChildrenHolderMap_T; -#else // BOOST_VERSION >= 103500 - typedef boost::mpl::map< > ChildrenHolderMap_T; -#endif // BOOST_VERSION >= 103500 - // ////////////////////////////////////////////////////////////////// - - public: - // /////////// Getters ///////////// - /** Get a list or map of a children type for iteration methods. */ - AirportDateList_T getAirportDateList () const; - AirportDateMap_T getAirportDateMap () const; - - /** Retrieve, if existing, the AirportDate corresponding to the - given airport-code. - <br>If not existing, return the NULL pointer. */ - AirportDate* getAirportDate (const AirportCode_T&) const; - - public: - // /////////// Display support methods ///////// - /** Dump a Business Object into an output stream. - @param ostream& the output stream. */ - void toStream (std::ostream& ioOut) const; - - /** Read a Business Object from an input stream. - @param istream& the input stream. */ - void fromStream (std::istream& ioIn); - - /** Get the serialised version of the Business Object. */ - std::string toString() const; - - /** Get a string describing the whole key (differentiating two objects - at any level). */ - const std::string describeKey() const; - - protected: - /** Constructors are private so as to force the usage of the Factory - layer. */ - /** Constructors. */ - NetworkDate (const Key_T&, Structure_T&); - /** Destructor. */ - ~NetworkDate(); - /** Initialise all the pointers of children holder to NULL. */ - void init(); - /** Default constructors. */ - NetworkDate (); - NetworkDate (const NetworkDate&); - - protected: - // Attributes - /** Reference structure. */ - Structure_T& _structure; - - }; - -} -#endif // __STDAIR_BOM_NETWORKDATE_HPP - Deleted: trunk/stdair/stdair/bom/NetworkDateContent.cpp =================================================================== --- trunk/stdair/stdair/bom/NetworkDateContent.cpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/NetworkDateContent.cpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,20 +0,0 @@ -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STL -#include <cassert> -// STDAIR -#include <stdair/bom/NetworkDateContent.hpp> - -namespace stdair { - - // //////////////////////////////////////////////////////////////////// - NetworkDateContent::NetworkDateContent (const Key_T& iKey) : _key (iKey) { - } - - // //////////////////////////////////////////////////////////////////// - NetworkDateContent::~NetworkDateContent () { - } - -} - Deleted: trunk/stdair/stdair/bom/NetworkDateContent.hpp =================================================================== --- trunk/stdair/stdair/bom/NetworkDateContent.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/NetworkDateContent.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,59 +0,0 @@ -#ifndef __STDAIR_BOM_NETWORKDATECONTENT_HPP -#define __STDAIR_BOM_NETWORKDATECONTENT_HPP - -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STDAIR -#include <stdair/bom/BomContent.hpp> -#include <stdair/bom/NetworkDateKey.hpp> - -namespace stdair { - - /** Class representing the actual attributes for a network-date. */ - class NetworkDateContent : public BomContent { - public : - // Type definitions - /** Definition allowing to retrieve the associated BOM key type. */ - typedef NetworkDateKey_T Key_T; - - public: - // ////////// Getters //////////// - /** Get the network-date key. */ - const Key_T& getKey() const { - return _key; - } - - public: - // /////////// Display support methods ///////// - /** Dump a Business Object into an output stream. - @param ostream& the output stream. */ - virtual void toStream (std::ostream& ioOut) const = 0; - - /** Read a Business Object from an input stream. - @param istream& the input stream. */ - virtual void fromStream (std::istream& ioIn) = 0; - - /** Get the serialised version of the Business Object. */ - virtual std::string toString() const = 0; - - /** Get a string describing the short key (differentiating two objects - at the same level). */ - const std::string describeShortKey() const { return _key.toString(); } - - protected: - /** Default constructors. */ - NetworkDateContent (const Key_T&); - NetworkDateContent (const NetworkDateContent&); - /** Destructor. */ - virtual ~NetworkDateContent(); - - protected: - // Attributes - /** The key of both structure and content objects. */ - Key_T _key; - }; - -} -#endif // __STDAIR_BOM_NETWORKDATECONTENT_HPP - Deleted: trunk/stdair/stdair/bom/NetworkDateKey.cpp =================================================================== --- trunk/stdair/stdair/bom/NetworkDateKey.cpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/NetworkDateKey.cpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,44 +0,0 @@ -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STDAIR -#include <stdair/bom/NetworkDateKey.hpp> - -namespace stdair { - - // //////////////////////////////////////////////////////////////////// - NetworkDateKey_T::NetworkDateKey_T () - : _referenceDate (Date_T (1970, 01, 01)) { - } - - // //////////////////////////////////////////////////////////////////// - NetworkDateKey_T::NetworkDateKey_T (const Date_T& iReferenceDate) - : _referenceDate (iReferenceDate) { - } - - // //////////////////////////////////////////////////////////////////// - NetworkDateKey_T::NetworkDateKey_T (const NetworkDateKey_T& iKey) - : _referenceDate (iKey._referenceDate) { - } - - // //////////////////////////////////////////////////////////////////// - NetworkDateKey_T::~NetworkDateKey_T () { - } - - // //////////////////////////////////////////////////////////////////// - void NetworkDateKey_T::toStream (std::ostream& ioOut) const { - ioOut << "NetworkDateKey: " << toString() << std::endl; - } - - // //////////////////////////////////////////////////////////////////// - void NetworkDateKey_T::fromStream (std::istream& ioIn) { - } - - // //////////////////////////////////////////////////////////////////// - const std::string NetworkDateKey_T::toString() const { - std::ostringstream oStr; - oStr << _referenceDate; - return oStr.str(); - } - -} Deleted: trunk/stdair/stdair/bom/NetworkDateKey.hpp =================================================================== --- trunk/stdair/stdair/bom/NetworkDateKey.hpp 2010-07-07 14:07:43 UTC (rev 210) +++ trunk/stdair/stdair/bom/NetworkDateKey.hpp 2010-07-07 15:10:13 UTC (rev 211) @@ -1,61 +0,0 @@ -#ifndef __STDAIR_BOM_NETWORKDATEKEY_HPP -#define __STDAIR_BOM_NETWORKDATEKEY_HPP - -// ////////////////////////////////////////////////////////////////////// -// Import section -// ////////////////////////////////////////////////////////////////////// -// STDAIR -#include <stdair/bom/BomKey.hpp> - -namespace stdair { - /** Key of network-date. */ - struct NetworkDateKey_T : public BomKey_T { - - private: - // /////////// Default constructor ////////// - NetworkDateKey_T (); - - public: - // /////////// Construction /////////// - /** Constructors. */ - NetworkDateKey_T (const Date_T& iReferenceDate); - NetworkDateKey_T (const NetworkDateKey_T&); - - /** Destructor. */ - ~NetworkDat... [truncated message content] |
From: <qua...@us...> - 2010-07-07 14:07:49
|
Revision: 210 http://stdair.svn.sourceforge.net/stdair/?rev=210&view=rev Author: quannaus Date: 2010-07-07 14:07:43 +0000 (Wed, 07 Jul 2010) Log Message: ----------- [dev] Added functions for getting travel solution list. Modified Paths: -------------- trunk/stdair/stdair/STDAIR_Types.hpp trunk/stdair/stdair/bom/BomManager.cpp trunk/stdair/stdair/bom/BomManager.hpp trunk/stdair/stdair/bom/BookingClassTypes.hpp trunk/stdair/stdair/bom/SegmentPathPeriod.cpp trunk/stdair/stdair/bom/SegmentPathPeriod.hpp trunk/stdair/stdair/bom/SegmentPeriodContent.cpp trunk/stdair/stdair/bom/SegmentPeriodContent.hpp trunk/stdair/stdair/bom/TravelSolutionStruct.cpp trunk/stdair/stdair/bom/TravelSolutionStruct.hpp Modified: trunk/stdair/stdair/STDAIR_Types.hpp =================================================================== --- trunk/stdair/stdair/STDAIR_Types.hpp 2010-06-30 15:59:19 UTC (rev 209) +++ trunk/stdair/stdair/STDAIR_Types.hpp 2010-07-07 14:07:43 UTC (rev 210) @@ -467,6 +467,13 @@ /** Key of a STL map. */ typedef std::string MapKey_T; + + /** List of keys. */ + typedef std::vector<std::string> KeyList_T; + + /** Map between the cabin codes and the booking class codes within + each cabin. */ + typedef std::map<CabinCode_T, ClassList_String_T> CabinBookingClassMap_T; } #endif // __STDAIR_STDAIR_TYPES_HPP Modified: trunk/stdair/stdair/bom/BomManager.cpp =================================================================== --- trunk/stdair/stdair/bom/BomManager.cpp 2010-06-30 15:59:19 UTC (rev 209) +++ trunk/stdair/stdair/bom/BomManager.cpp 2010-07-07 14:07:43 UTC (rev 210) @@ -492,5 +492,97 @@ oStream << dInt; } } + + // //////////////////////////////////////////////////////////////////// + void BomManager::displaySegmentPathNetwork (std::ostream& oStream, + const BomRoot& iBomRoot) { + // Store current formatting flags of the given output stream + std::ios::fmtflags oldFlags = oStream.flags(); + + oStream << std::endl; + + // Browse the reachable universe objects. + const ReachableUniverseList_T& lRUList = iBomRoot.getReachableUniverseList(); + for (ReachableUniverseList_T::iterator itRU = lRUList.begin(); + itRU != lRUList.end(); ++itRU) { + const ReachableUniverse& lCurrentRU = *itRU; + + display (oStream, lCurrentRU); + } + + // Reset formatting flags of the given output stream + oStream.flags (oldFlags); + } + + // //////////////////////////////////////////////////////////////////// + void BomManager::display (std::ostream& oStream, + const ReachableUniverse& iReachableUniverse) { + // Store current formatting flags of the given output stream + std::ios::fmtflags oldFlags = oStream.flags(); + + oStream << std::endl << "Reachable Universe level: " + << iReachableUniverse.describeShortKey() << std::endl; + + // Browse the origin-destination set objects. + const OriginDestinationSetList_T& lODSetList = + iReachableUniverse.getOriginDestinationSetList (); + for (OriginDestinationSetList_T::iterator itODS = lODSetList.begin(); + itODS != lODSetList.end(); ++itODS) { + const OriginDestinationSet& lCurrentODS = *itODS; + + display (oStream, lCurrentODS); + } + + // Reset formatting flags of the given output stream + oStream.flags (oldFlags); + } + + // //////////////////////////////////////////////////////////////////// + void BomManager::display (std::ostream& oStream, + const OriginDestinationSet& iOriginDestinationSet) { + // Store current formatting flags of the given output stream + std::ios::fmtflags oldFlags = oStream.flags(); + + oStream << "Origine-Destination Set level: " + << iOriginDestinationSet.describeShortKey () << std::endl; + + // Browse the segment path period objects. + const SegmentPathPeriodList_T& lSegmentPathPeriodList = + iOriginDestinationSet.getSegmentPathPeriodList (); + for (SegmentPathPeriodList_T::iterator itSegmentPath = + lSegmentPathPeriodList.begin(); + itSegmentPath != lSegmentPathPeriodList.end(); ++itSegmentPath) { + const SegmentPathPeriod& lCurrentSegmentPath = *itSegmentPath; + + display (oStream, lCurrentSegmentPath); + } + + // Reset formatting flags of the given output stream + oStream.flags (oldFlags); + } + + // //////////////////////////////////////////////////////////////////// + void BomManager::display (std::ostream& oStream, + const SegmentPathPeriod& iSegmentPathPeriod) { + // Store current formatting flags of the given output stream + std::ios::fmtflags oldFlags = oStream.flags(); + + oStream << "Segment Path Period level: " + << iSegmentPathPeriod.describeShortKey () << std::endl; + + // Browse the segment period objects. + const SegmentPeriodList_T& lSegmentPeriodList = + iSegmentPathPeriod.getSegmentPeriodList(); + for (SegmentPeriodList_T::iterator itSegmentPeriod = + lSegmentPeriodList.begin(); + itSegmentPeriod != lSegmentPeriodList.end(); ++itSegmentPeriod) { + const SegmentPeriod& lCurrentSegmentPeriod = *itSegmentPeriod; + oStream << "Segment Period details: " + << lCurrentSegmentPeriod.describeKey() << std::endl; + } + + // Reset formatting flags of the given output stream + oStream.flags (oldFlags); + } } Modified: trunk/stdair/stdair/bom/BomManager.hpp =================================================================== --- trunk/stdair/stdair/bom/BomManager.hpp 2010-06-30 15:59:19 UTC (rev 209) +++ trunk/stdair/stdair/bom/BomManager.hpp 2010-07-07 14:07:43 UTC (rev 210) @@ -18,6 +18,11 @@ class SegmentDate; class SegmentCabin; class BookingClass; + class ReachableUniverse; + class OriginDestinationSet; + class SegmentPathPeriod; + class FlightPeriod; + class SegmentPeriod; class Network; class NetworkDate; class AirportDate; @@ -128,6 +133,25 @@ const BookingRequestStruct& iBookingRequest); /** Helper fuction to display an interger. */ static void intDisplay (std::ostream&, const int&); + + /** Recursively display (dump in the underlying output log stream) + the objects of the given BOM tree. + @param std::ostream& Output stream in which the BOM tree should be + logged/dumped. + @param const BomRoot& Root of the BOM tree to be displayed. */ + static void displaySegmentPathNetwork (std::ostream&, const BomRoot&); + + /** Recursively display (dump in the underlying output log stream) + the objects of the given BOM tree. */ + static void display (std::ostream&, const ReachableUniverse&); + + /** Recursively display (dump in the underlying output log stream) + the objects of the given BOM tree. */ + static void display (std::ostream&, const OriginDestinationSet&); + + /** Recursively display (dump in the underlying output log stream) + the objects of the given BOM tree. */ + static void display (std::ostream&, const SegmentPathPeriod&); }; } Modified: trunk/stdair/stdair/bom/BookingClassTypes.hpp =================================================================== --- trunk/stdair/stdair/bom/BookingClassTypes.hpp 2010-06-30 15:59:19 UTC (rev 209) +++ trunk/stdair/stdair/bom/BookingClassTypes.hpp 2010-07-07 14:07:43 UTC (rev 210) @@ -28,11 +28,7 @@ typedef BomList_T<BookingClass> BookingClassList_T; /** Define the booking class map. */ - typedef BomMap_T<BookingClass> BookingClassMap_T; - - /** Define the STL list of booking classes. */ - typedef std::vector<BookingClass*> BookingClassSTLList_T; - + typedef BomMap_T<BookingClass> BookingClassMap_T; } #endif // __STDAIR_BOM_BOOKINGCLASSTYPES_HPP Modified: trunk/stdair/stdair/bom/SegmentPathPeriod.cpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPathPeriod.cpp 2010-06-30 15:59:19 UTC (rev 209) +++ trunk/stdair/stdair/bom/SegmentPathPeriod.cpp 2010-07-07 14:07:43 UTC (rev 210) @@ -194,8 +194,8 @@ const DateOffset_T& lLastBoardingDateOffset = lBoardingDateOffsetList.at (getNbOfSegments() - 1); const DateOffset_T lNextBoardingDateOffset = - lLastBoardingDateOffset + lNextSegmentPeriod_ptr->getOffDateOffset() - - lNextSegmentPeriod_ptr->getBoardingDateOffset(); + lLastBoardingDateOffset + lLastSegmentPeriod_ptr->getOffDateOffset() + - lLastSegmentPeriod_ptr->getBoardingDateOffset(); const DateOffset_T lNegativeNextBoardingDateOffset = DateOffset_T (0) - lNextBoardingDateOffset; @@ -224,8 +224,8 @@ const DateOffset_T& lLastBoardingDateOffset = lBoardingDateOffsetList.at (getNbOfSegments() - 1); const DateOffset_T lNextBoardingDateOffset = - lLastBoardingDateOffset + lNextSegmentPeriod_ptr->getOffDateOffset() - - lNextSegmentPeriod_ptr->getBoardingDateOffset() + DateOffset_T (1); + lLastBoardingDateOffset + lLastSegmentPeriod_ptr->getOffDateOffset() + - lLastSegmentPeriod_ptr->getBoardingDateOffset() + DateOffset_T (1); const DateOffset_T lNegativeNextBoardingDateOffset = DateOffset_T (0) - lNextBoardingDateOffset; @@ -267,6 +267,28 @@ } return false; } + + // //////////////////////////////////////////////////////////////////// + bool SegmentPathPeriod:: + isDepartureDateValid (const Date_T& iDepartureDate) const { + const PeriodStruct_T& lPeriod = getDeparturePeriod (); + + // Check if the departure date is within the date range. + const DatePeriod_T& lDeparturePeriod = lPeriod.getDateRange (); + if (lDeparturePeriod.contains (iDepartureDate) == false) { + return false; + } + + // Check if the departure date is valid within the DOW. + // 0 = Sunday, 1 = Monday, etc. + const short lDay = iDepartureDate.day_of_week (); + const DoWStruct_T& lDoW = lPeriod.getDoW (); + if (lDoW.getStandardDayOfWeek (lDay) == false) { + return false; + } + + return true; + } } Modified: trunk/stdair/stdair/bom/SegmentPathPeriod.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPathPeriod.hpp 2010-06-30 15:59:19 UTC (rev 209) +++ trunk/stdair/stdair/bom/SegmentPathPeriod.hpp 2010-07-07 14:07:43 UTC (rev 210) @@ -73,7 +73,25 @@ of the last segment. */ const AirportCode_T& getDestination () const; + public: + // /////////// Display support methods ///////// + /** Dump a Business Object into an output stream. + @param ostream& the output stream. */ + void toStream (std::ostream& ioOut) const; + + /** Read a Business Object from an input stream. + @param istream& the input stream. */ + void fromStream (std::istream& ioIn); + + /** Get the serialised version of the Business Object. */ + std::string toString() const; + + /** Get a string describing the whole key (differentiating two objects + at any level). */ + const std::string describeKey() const; + public: + // ////////////// Busniess methods //////////////// /** Check if the (i-1)-length segment path period can be fused with the single segment segment path period in order to create an i-length segment path period. The function will return a valid or non-valid @@ -96,23 +114,11 @@ the segments of the internal list. */ bool isAirlineFlown (const AirlineCode_T&) const; - public: - // /////////// Display support methods ///////// - /** Dump a Business Object into an output stream. - @param ostream& the output stream. */ - void toStream (std::ostream& ioOut) const; + /** Check if the given departure date is included in the departure period + of the segment path. */ + bool isDepartureDateValid (const Date_T&) const; - /** Read a Business Object from an input stream. - @param istream& the input stream. */ - void fromStream (std::istream& ioIn); - /** Get the serialised version of the Business Object. */ - std::string toString() const; - - /** Get a string describing the whole key (differentiating two objects - at any level). */ - const std::string describeKey() const; - protected: /** Constructors are private so as to force the usage of the Factory layer. */ Modified: trunk/stdair/stdair/bom/SegmentPeriodContent.cpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPeriodContent.cpp 2010-06-30 15:59:19 UTC (rev 209) +++ trunk/stdair/stdair/bom/SegmentPeriodContent.cpp 2010-07-07 14:07:43 UTC (rev 210) @@ -18,5 +18,14 @@ SegmentPeriodContent::~SegmentPeriodContent () { } + // //////////////////////////////////////////////////////////////////// + void SegmentPeriodContent:: + addCabinBookingClassList (const CabinCode_T& iCabinCode, + const ClassList_String_T& iClassCodeList) { + const bool insert = _cabinBookingClassMap. + insert (CabinBookingClassMap_T::value_type (iCabinCode, iClassCodeList)).second; + assert (insert == true); + } + } Modified: trunk/stdair/stdair/bom/SegmentPeriodContent.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPeriodContent.hpp 2010-06-30 15:59:19 UTC (rev 209) +++ trunk/stdair/stdair/bom/SegmentPeriodContent.hpp 2010-07-07 14:07:43 UTC (rev 210) @@ -59,6 +59,11 @@ return _elapsedTime; } + /** Get the cabin booking class map. */ + const CabinBookingClassMap_T& getCabinBookingClassMap () const { + return _cabinBookingClassMap; + } + public: // ///////// Setters ////////// /** Set the boarding time. */ @@ -86,6 +91,11 @@ _elapsedTime = iElapsedTime; } + /** Add a pair cabin code and list of class codes within the cabin to the + cabin booking class map. */ + void addCabinBookingClassList (const CabinCode_T&, + const ClassList_String_T&); + public: // /////////// Display support methods ///////// @@ -120,6 +130,7 @@ DateOffset_T _boardingDateOffset; DateOffset_T _offDateOffset; Duration_T _elapsedTime; + CabinBookingClassMap_T _cabinBookingClassMap; }; } Modified: trunk/stdair/stdair/bom/TravelSolutionStruct.cpp =================================================================== --- trunk/stdair/stdair/bom/TravelSolutionStruct.cpp 2010-06-30 15:59:19 UTC (rev 209) +++ trunk/stdair/stdair/bom/TravelSolutionStruct.cpp 2010-07-07 14:07:43 UTC (rev 210) @@ -8,33 +8,22 @@ #include <sstream> // StdAir #include <stdair/basic/BasConst_BookingClass.hpp> -#include <stdair/bom/OutboundPath.hpp> #include <stdair/bom/TravelSolutionStruct.hpp> namespace stdair { - // //////////////////////////////////////////////////////////////////// - TravelSolutionStruct::TravelSolutionStruct () - : _outboundPath_ptr (NULL) { - assert (false); + TravelSolutionStruct::TravelSolutionStruct () + : _fare (DEFAULT_FARE_VALUE), _availability (DEFAULT_AVAILABILITY) { } // //////////////////////////////////////////////////////////////////// TravelSolutionStruct:: TravelSolutionStruct (const TravelSolutionStruct& iTravelSolutionStruct) - : _outboundPath_ptr (iTravelSolutionStruct._outboundPath_ptr), - _bookingClassList (iTravelSolutionStruct._bookingClassList), + : _segmentDateKeyList (iTravelSolutionStruct._segmentDateKeyList), + _bookingClassKeyList (iTravelSolutionStruct._bookingClassKeyList), _fare (iTravelSolutionStruct._fare), _availability (iTravelSolutionStruct._availability) { } - - // //////////////////////////////////////////////////////////////////// - TravelSolutionStruct:: - TravelSolutionStruct (OutboundPath& ioOutboundPath, - const BookingClassSTLList_T& iBookingClassList) - : _outboundPath_ptr (&ioOutboundPath), _bookingClassList (iBookingClassList), - _fare (DEFAULT_FARE_VALUE), _availability (DEFAULT_AVAILABILITY) { - } // //////////////////////////////////////////////////////////////////// TravelSolutionStruct::~TravelSolutionStruct () { @@ -52,29 +41,21 @@ // ////////////////////////////////////////////////////////////////////// const std::string TravelSolutionStruct::describe() const { std::ostringstream oStr; - if (_outboundPath_ptr != NULL) { - oStr << *_outboundPath_ptr; + + ClassList_String_T::const_iterator itClass = _bookingClassKeyList.begin(); + + for (KeyList_T::const_iterator itSegmentKey = _segmentDateKeyList.begin (); + itSegmentKey != _segmentDateKeyList.end(); ++itSegmentKey) { + oStr << *itSegmentKey << ", "; + if (itClass != _bookingClassKeyList.end()) { + oStr << *itClass << ", "; + ++itClass; + } } + + oStr << _fare << ", " << _availability; return oStr.str(); } - - // ////////////////////////////////////////////////////////////////////// - const std::string TravelSolutionStruct::describeKey() const { - std::string oString; - if (_outboundPath_ptr != NULL) { - oString = _outboundPath_ptr->describeKey(); - } - return oString; - } - - // ////////////////////////////////////////////////////////////////////// - const std::string TravelSolutionStruct::describeShortKey() const { - std::string oString; - if (_outboundPath_ptr != NULL) { - oString = _outboundPath_ptr->describeShortKey(); - } - return oString; - } } Modified: trunk/stdair/stdair/bom/TravelSolutionStruct.hpp =================================================================== --- trunk/stdair/stdair/bom/TravelSolutionStruct.hpp 2010-06-30 15:59:19 UTC (rev 209) +++ trunk/stdair/stdair/bom/TravelSolutionStruct.hpp 2010-07-07 14:07:43 UTC (rev 210) @@ -14,21 +14,15 @@ #include <stdair/bom/BookingClassTypes.hpp> namespace stdair { - - // Forward declarations - class OutboundPath; - /** Structure holding the elements of a travel solution. */ struct TravelSolutionStruct : public StructAbstract { public: // /////////// Getters /////////////// - /** Retrieve the attributes of the object. */ - OutboundPath& getOutboundPath() const { - assert (_outboundPath_ptr != NULL); - return *_outboundPath_ptr; + const KeyList_T& getSegmentDateKeyList () { + return _segmentDateKeyList; } - const BookingClassSTLList_T& getBookingClassList () const { - return _bookingClassList; + const ClassList_String_T& getBookingClassKeyList () const { + return _bookingClassKeyList; } const Fare_T getFare() const { return _fare; } const Availability_T getAvailability() const { return _availability; } @@ -38,6 +32,12 @@ /** Setter for some attributes. */ void setFare (const Fare_T& iFare) { _fare = iFare; } void setAvailability (const Availability_T& iAvail) { _availability=iAvail; } + void addSegmentDateKey (const std::string& iKey) { + _segmentDateKeyList.push_back (iKey); + } + void addBookingClassKey (const char iKey) { + _bookingClassKeyList.push_back (iKey); + } public: // /////////// Display support method ///////////// @@ -51,35 +51,24 @@ /** Display of the structure. */ const std::string describe() const; - - /** Get a string describing the whole key (differentiating two objects - at any level). */ - const std::string describeKey() const; - - /** Get a string describing the short key (differentiating two objects - at the same level). */ - const std::string describeShortKey() const; - public: // //////////// Constructors & Destructor /////////////// /** Main constructor. */ - TravelSolutionStruct (OutboundPath&, const BookingClassSTLList_T&); + TravelSolutionStruct (); /** Destructor. */ ~TravelSolutionStruct (); /** Default copy constructor. */ TravelSolutionStruct (const TravelSolutionStruct&); - /** Default constructor, not to be used. */ - TravelSolutionStruct (); private: // ///////////////////// Attributes ////////////////////// - /** The outbound path associated to this solution.*/ - OutboundPath* _outboundPath_ptr; - - /** The list of booking classes which make the travel solution. */ - BookingClassSTLList_T _bookingClassList; - + /** The list of segment-date whole keys which make the travel solution. */ + KeyList_T _segmentDateKeyList; + + /** The list of booking class keys which make the travel solution. */ + ClassList_String_T _bookingClassKeyList; + /** The fare of the travel solution. */ Fare_T _fare; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <qua...@us...> - 2010-06-30 15:59:25
|
Revision: 209 http://stdair.svn.sourceforge.net/stdair/?rev=209&view=rev Author: quannaus Date: 2010-06-30 15:59:19 +0000 (Wed, 30 Jun 2010) Log Message: ----------- [dev] Implemented the new network generator. Modified Paths: -------------- trunk/stdair/stdair/basic/BasConst.cpp trunk/stdair/stdair/basic/BasConst_TravelSolution.hpp trunk/stdair/stdair/bom/DoWStruct.cpp trunk/stdair/stdair/bom/DoWStruct.hpp trunk/stdair/stdair/bom/FlightPeriodContent.hpp trunk/stdair/stdair/bom/FlightPeriodKey.cpp trunk/stdair/stdair/bom/FlightPeriodKey.hpp trunk/stdair/stdair/bom/SegmentPathPeriod.cpp trunk/stdair/stdair/bom/SegmentPathPeriod.hpp trunk/stdair/stdair/bom/SegmentPathPeriodContent.cpp trunk/stdair/stdair/bom/SegmentPathPeriodContent.hpp trunk/stdair/stdair/bom/SegmentPathPeriodKey.cpp trunk/stdair/stdair/bom/SegmentPathPeriodKey.hpp trunk/stdair/stdair/bom/SegmentPathPeriodTypes.hpp trunk/stdair/stdair/bom/SegmentPeriod.cpp trunk/stdair/stdair/bom/SegmentPeriod.hpp trunk/stdair/stdair/bom/sources.mk Added Paths: ----------- trunk/stdair/stdair/bom/PeriodStruct.cpp trunk/stdair/stdair/bom/PeriodStruct.hpp Modified: trunk/stdair/stdair/basic/BasConst.cpp =================================================================== --- trunk/stdair/stdair/basic/BasConst.cpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/basic/BasConst.cpp 2010-06-30 15:59:19 UTC (rev 209) @@ -226,6 +226,9 @@ /** Default Minimum connection time. */ const Duration_T DEFAULT_MINIMUM_CONNECTION_TIME (0, 30, 0); + /** Default maximum connection time. */ + const Duration_T DEFAULT_MAXIMUM_CONNECTION_TIME (24, 0, 0); + /** Default Matching Indicator value. */ const MatchingIndicator_T DEFAULT_MATCHING_INDICATOR (0.0); Modified: trunk/stdair/stdair/basic/BasConst_TravelSolution.hpp =================================================================== --- trunk/stdair/stdair/basic/BasConst_TravelSolution.hpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/basic/BasConst_TravelSolution.hpp 2010-06-30 15:59:19 UTC (rev 209) @@ -18,6 +18,9 @@ /** Default Minimum connection time. */ extern const Duration_T DEFAULT_MINIMUM_CONNECTION_TIME; + + /** Default maximum connection time. */ + extern const Duration_T DEFAULT_MAXIMUM_CONNECTION_TIME; /** Null time duration (in boost::time_duration unit).*/ extern const Duration_T NULL_BOOST_TIME_DURATION; Modified: trunk/stdair/stdair/bom/DoWStruct.cpp =================================================================== --- trunk/stdair/stdair/bom/DoWStruct.cpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/DoWStruct.cpp 2010-06-30 15:59:19 UTC (rev 209) @@ -9,6 +9,13 @@ #include <stdair/bom/DoWStruct.hpp> namespace stdair { + + // //////////////////////////////////////////////////////////////////// + DoWStruct_T::DoWStruct_T () { + for (unsigned short i = 0; i < 7; ++i) { + _dowList.push_back (false); + } + } // //////////////////////////////////////////////////////////////////// DoWStruct_T::DoWStruct_T (const std::string& iDowString) { @@ -71,4 +78,49 @@ return _dowList.at (iStd); } + // //////////////////////////////////////////////////////////////////// + void DoWStruct_T::setDayOfWeek (const unsigned short i, const bool iBool) { + assert (i >= 0 && i < 7); + _dowList.at (i) = iBool; + } + + // //////////////////////////////////////////////////////////////////// + DoWStruct_T DoWStruct_T::shift (const long& iNbOfDays) const { + DoWStruct_T oDoW (DEFAULT_DOW_STRING); + + for (short i = 0; i < 7; ++i) { + const bool lDoWBool = _dowList.at (i); + short lIndex = (i + iNbOfDays) % 7; + if (lIndex < 0) { + lIndex += 7; + } + oDoW.setDayOfWeek (lIndex, lDoWBool); + } + + return oDoW; + } + + // //////////////////////////////////////////////////////////////////// + DoWStruct_T DoWStruct_T::intersection (const DoWStruct_T& iDoW) const { + DoWStruct_T oDoW (DEFAULT_DOW_STRING); + for (unsigned short i = 0; i < 7; ++i) { + if (getDayOfWeek(i) && iDoW.getDayOfWeek(i)) { + oDoW.setDayOfWeek (i, true); + } else { + oDoW.setDayOfWeek (i, false); + } + } + return oDoW; + } + + // //////////////////////////////////////////////////////////////////// + const bool DoWStruct_T::isValid () const { + for (unsigned short i = 0; i < 7; ++i) { + if (getDayOfWeek(i)) { + return true; + } + } + return false; + } + } Modified: trunk/stdair/stdair/bom/DoWStruct.hpp =================================================================== --- trunk/stdair/stdair/bom/DoWStruct.hpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/DoWStruct.hpp 2010-06-30 15:59:19 UTC (rev 209) @@ -19,16 +19,22 @@ public: /** Define the bit set representing the DoW. */ typedef std::vector<bool> BooleanList_T; - - /** Attributes. */ - BooleanList_T _dowList; + public: + // //////////////// Getters /////////////// /** Get the i-th day of the week (Monday being the first one). */ bool getDayOfWeek (const unsigned short i) const; /** Get the i-th day of the week (Sunday being the first one). */ bool getStandardDayOfWeek (const unsigned short i) const; - + + public: + // //////////////// Setters /////////////// + /** Set the new value for the i-th day-of-week. */ + void setDayOfWeek (const unsigned short, const bool); + + public: + // //////////////// Display methods /////////////// /** Display explicitly (e.g., "Mon.Tue.Wed.Thu.Fri."). */ const std::string describe() const; @@ -36,15 +42,29 @@ const std::string describeShort() const; public: + // ///////////////// Business Methods //////////////// + /** Build a new DoW struct by shifting the current DoW by a given number. */ + DoWStruct_T shift (const long&) const; + + /** Build a new DoW struct by intersecting two DoW structs. */ + DoWStruct_T intersection (const DoWStruct_T&) const; + + /** Return if the DoW struct is valid (i.e., has at least one "true"). */ + const bool isValid () const; + + public: /** Constructor from a given bit set (e.g., "0000011" for the week-ends). */ DoWStruct_T (const std::string& iDowString); - - /** Default constructor. */ + /** Default constructors. */ DoWStruct_T (); - - /** Default constructor. */ DoWStruct_T (const DoWStruct_T&); + /** Default destructor. */ + ~DoWStruct_T () { } + + private: + /** Attributes. */ + BooleanList_T _dowList; }; } Modified: trunk/stdair/stdair/bom/FlightPeriodContent.hpp =================================================================== --- trunk/stdair/stdair/bom/FlightPeriodContent.hpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/FlightPeriodContent.hpp 2010-06-30 15:59:19 UTC (rev 209) @@ -29,16 +29,11 @@ return _key.getFlightNumber(); } - /** Get the departure date range. */ - const DatePeriod_T& getDeparturePeriod () const { - return _key.getDeparturePeriod(); + /** Get the departure period (part of the key). */ + const PeriodStruct_T& getPeriod () const { + return _key.getPeriod(); } - /** Get the active days-of-week. */ - const DoWStruct_T& getDoW () const { - return _key.getDoW(); - } - public: // /////////// Display support methods ///////// /** Dump a Business Object into an output stream. Modified: trunk/stdair/stdair/bom/FlightPeriodKey.cpp =================================================================== --- trunk/stdair/stdair/bom/FlightPeriodKey.cpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/FlightPeriodKey.cpp 2010-06-30 15:59:19 UTC (rev 209) @@ -8,15 +8,13 @@ // //////////////////////////////////////////////////////////////////// FlightPeriodKey_T::FlightPeriodKey_T (const FlightNumber_T& iFlightNumber, - const DatePeriod_T& iDatePeriod, - const DoWStruct_T& iDoW) - : _flightNumber (iFlightNumber), _dateRange (iDatePeriod), _dow (iDoW) { + const PeriodStruct_T& iPeriod) + : _flightNumber (iFlightNumber), _period (iPeriod) { } // //////////////////////////////////////////////////////////////////// FlightPeriodKey_T::FlightPeriodKey_T (const FlightPeriodKey_T& iKey) - : _flightNumber (iKey._flightNumber), _dateRange (iKey._dateRange), - _dow (iKey._dow) { + : _flightNumber (iKey._flightNumber), _period (iKey._period) { } // //////////////////////////////////////////////////////////////////// @@ -35,8 +33,7 @@ // //////////////////////////////////////////////////////////////////// const std::string FlightPeriodKey_T::toString() const { std::ostringstream oStr; - oStr << _flightNumber << ", " << _dateRange << ", " - << _dow.describeShort(); + oStr << _flightNumber << ", " << _period.describeShort(); return oStr.str(); } Modified: trunk/stdair/stdair/bom/FlightPeriodKey.hpp =================================================================== --- trunk/stdair/stdair/bom/FlightPeriodKey.hpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/FlightPeriodKey.hpp 2010-06-30 15:59:19 UTC (rev 209) @@ -6,7 +6,7 @@ // ////////////////////////////////////////////////////////////////////// // STDAIR #include <stdair/bom/BomKey.hpp> -#include <stdair/bom/DoWStruct.hpp> +#include <stdair/bom/PeriodStruct.hpp> namespace stdair { /** Key of flight-period. */ @@ -18,8 +18,7 @@ public: // /////////// Construction /////////// /** Constructors. */ - FlightPeriodKey_T (const FlightNumber_T&, const DatePeriod_T&, - const DoWStruct_T&); + FlightPeriodKey_T (const FlightNumber_T&, const PeriodStruct_T&); FlightPeriodKey_T (const FlightPeriodKey_T&); /** Destructor. */ ~FlightPeriodKey_T (); @@ -30,14 +29,9 @@ return _flightNumber; } - /** Get the departure date range. */ - const DatePeriod_T& getDeparturePeriod () const { - return _dateRange; - } - /** Get the active days-of-week. */ - const DoWStruct_T& getDoW () const { - return _dow; + const PeriodStruct_T& getPeriod () const { + return _period; } // /////////// Display support methods ///////// @@ -61,11 +55,8 @@ /** Flight number. */ FlightNumber_T _flightNumber; - /** Departure period of the (first leg of the) flight. */ - DatePeriod_T _dateRange; - - /** DoW during the departure period. */ - DoWStruct_T _dow; + /** Period during the departure period. */ + PeriodStruct_T _period; }; Added: trunk/stdair/stdair/bom/PeriodStruct.cpp =================================================================== --- trunk/stdair/stdair/bom/PeriodStruct.cpp (rev 0) +++ trunk/stdair/stdair/bom/PeriodStruct.cpp 2010-06-30 15:59:19 UTC (rev 209) @@ -0,0 +1,78 @@ +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STL +#include <sstream> +#include <cassert> +// STDAIR +#include <stdair/basic/BasConst_Period_BOM.hpp> +#include <stdair/bom/PeriodStruct.hpp> + +namespace stdair { + // //////////////////////////////////////////////////////////////////// + PeriodStruct_T::PeriodStruct_T () + : _dateRange (BOOST_DEFAULT_DATE_PERIOD), _dow () { + } + + // //////////////////////////////////////////////////////////////////// + PeriodStruct_T::PeriodStruct_T (const DatePeriod_T& iDateRange, + const DoWStruct_T& iDoW) + : _dateRange (iDateRange), _dow (iDoW) { + } + + // //////////////////////////////////////////////////////////////////// + PeriodStruct_T::PeriodStruct_T (const PeriodStruct_T& iPeriodStruct) + : _dateRange (iPeriodStruct._dateRange), _dow (iPeriodStruct._dow) { + + } + + // //////////////////////////////////////////////////////////////////// + const std::string PeriodStruct_T::describeShort() const { + std::ostringstream ostr; + ostr << _dateRange << ", " << _dow.describeShort (); + return ostr.str(); + } + + // //////////////////////////////////////////////////////////////////// + const std::string PeriodStruct_T::describe() const { + std::ostringstream ostr; + ostr << _dateRange << ", " << _dow.describe (); + return ostr.str(); + } + + // //////////////////////////////////////////////////////////////////// + PeriodStruct_T PeriodStruct_T:: + addDateOffset (const DateOffset_T& iDateOffset) const { + // Create a new date range by shifting the date range of this object with + // iDateOffset. + DatePeriod_T lNewDateRange = getDateRange(); + lNewDateRange.shift (iDateOffset); + + // Create a new DoWStruct by shifting the DoWStruct of this object with + // iDateOffset. + const long lNbOfDaysOffset = iDateOffset.days(); + const DoWStruct_T& lDoW = getDoW(); + const DoWStruct_T lNewDoW = lDoW.shift (lNbOfDaysOffset); + + return PeriodStruct_T (lNewDateRange, lNewDoW); + } + + // //////////////////////////////////////////////////////////////////// + PeriodStruct_T PeriodStruct_T:: + intersection (const PeriodStruct_T& iPeriodStruct) const { + const DatePeriod_T lNewDateRange = + _dateRange.intersection (iPeriodStruct._dateRange); + const DoWStruct_T lNewDoW = _dow.intersection (iPeriodStruct._dow); + + return PeriodStruct_T (lNewDateRange, lNewDoW); + } + + // //////////////////////////////////////////////////////////////////// + const bool PeriodStruct_T::isValid () const { + if (_dateRange.is_null() == false && _dow.isValid()) { + return true; + } + return false; + } + +} Added: trunk/stdair/stdair/bom/PeriodStruct.hpp =================================================================== --- trunk/stdair/stdair/bom/PeriodStruct.hpp (rev 0) +++ trunk/stdair/stdair/bom/PeriodStruct.hpp 2010-06-30 15:59:19 UTC (rev 209) @@ -0,0 +1,72 @@ +#ifndef __STDAIR_BOM_PERIODSTRUCT_HPP +#define __STDAIR_BOM_PERIODSTRUCT_HPP + +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STL +#include <string> +#include <vector> +// STDAIR +#include <stdair/basic/StructAbstract.hpp> +#include <stdair/bom/DoWStruct.hpp> + +namespace stdair { + + /** Define a departure period + <br> A period is defined by a date range and a day-of-week struct. */ + struct PeriodStruct_T : public StructAbstract { + public: + // ////////// Getters ///////////// + /** Retrieve the attributes. */ + const DatePeriod_T& getDateRange () const { + return _dateRange; + } + const DoWStruct_T& getDoW () const { + return _dow; + } + + public: + // /////////// Setters //////////// + /** Set the new value for the attributes. */ + void setDateRange (const DatePeriod_T& iDateRange) { + _dateRange = iDateRange; + } + void setDoW (const DoWStruct_T& iDoW) { _dow = iDoW; } + + public: + /** Display explicitly (e.g., "Mon.Tue.Wed.Thu.Fri."). */ + const std::string describe() const; + + /** Display as a bit set (e.g., "1111100"). */ + const std::string describeShort() const; + + public: + // /////////// Business Methods ///////////// + /** Build a period struct from this period struct by adding a date offset. */ + PeriodStruct_T addDateOffset (const DateOffset_T&) const; + + /** Build a new period struct which is the intersection of two + period structs. */ + PeriodStruct_T intersection (const PeriodStruct_T&) const; + + /** Return if the period is valid (i.e., valid date range and valid DoW). */ + const bool isValid () const; + + public: + /** Constructor. */ + PeriodStruct_T (const DatePeriod_T&, const DoWStruct_T&); + /** Default constructors. */ + PeriodStruct_T (); + PeriodStruct_T (const PeriodStruct_T&); + /** Default destructor. */ + ~PeriodStruct_T () { } + + private: + // Attributes + DatePeriod_T _dateRange; + DoWStruct_T _dow; + }; + +} +#endif // __STDAIR_BOM_PERIODSTRUCT_HPP Modified: trunk/stdair/stdair/bom/SegmentPathPeriod.cpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPathPeriod.cpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/SegmentPathPeriod.cpp 2010-06-30 15:59:19 UTC (rev 209) @@ -4,6 +4,7 @@ // STL #include <cassert> // STDAIR +#include <stdair/basic/BasConst_TravelSolution.hpp> #include <stdair/bom/BomSource.hpp> namespace stdair { @@ -112,91 +113,143 @@ assert (lLastSegment_ptr != NULL); return lLastSegment_ptr->getOffPoint(); } - - // //////////////////////////////////////////////////////////////////// - void SegmentPathPeriod::updateAirlineCode() { - // TODO: to be optimised. - // std::ostringstream ostr; - // SegmentPeriodList_T lSegmentPeriodList = getSegmentPeriodList(); - - // for (SegmentPeriodList_T::iterator itSegmentPeriod = - // lSegmentPeriodList.begin(); - // itSegmentPeriod != lSegmentPeriodList.end(); ++itSegmentPeriod) { - // const SegmentPeriod& lSegmentPeriod = *itSegmentPeriod; - // ostr << lSegmentPeriod.getAirlineCode(); - // } - - // const AirlineCode_T lAirlineCode (ostr.str()); - // setAirlineCode(lAirlineCode); - } // //////////////////////////////////////////////////////////////////// bool SegmentPathPeriod:: isAirlineFlown (const AirlineCode_T& iAirlineCode) const { bool oAirlineFlown = false; - // const SegmentPeriodList_T& lSegmentPeriodList = getSegmentPeriodList (); - // for (SegmentPeriodList_T::iterator itSegmentPeriod = - // lSegmentPeriodList.begin(); - // itSegmentPeriod != lSegmentPeriodList.end(); ++itSegmentPeriod) { - // const SegmentPeriod& lSegmentPeriod = *itSegmentPeriod; + const SegmentPeriodList_T& lSegmentPeriodList = getSegmentPeriodList (); + for (SegmentPeriodList_T::iterator itSegmentPeriod = + lSegmentPeriodList.begin(); + itSegmentPeriod != lSegmentPeriodList.end(); ++itSegmentPeriod) { + const SegmentPeriod& lSegmentPeriod = *itSegmentPeriod; - // const AirlineCode_T& lSegmentAirlineCode = - // lSegmentPeriod.getAirlineCode(); - // if (lSegmentAirlineCode == iAirlineCode) { - // oAirlineFlown = true; - // break; - // } - // } + const AirlineCode_T& lSegmentAirlineCode = + lSegmentPeriod.getParent().getParent().getAirlineCode(); + if (lSegmentAirlineCode == iAirlineCode) { + oAirlineFlown = true; + break; + } + } return oAirlineFlown; } // //////////////////////////////////////////////////////////////////// - void SegmentPathPeriod:: - updateAfterAddingSegmentPeriod (const SegmentPeriod& iSegmentPeriod) { - // Increment the flight path code - // std::ostringstream ostr; - // FlightPathCode_T lPreviousFPCode = getCurrentFlightPathCode(); - // ostr << lPreviousFPCode - // << iSegmentPeriod.getFlightNumber(); - // setFlightPathCode(ostr.str()); - } - - // //////////////////////////////////////////////////////////////////// - const SegmentPathPeriodKey_T SegmentPathPeriod:: + SegmentPathPeriodKey_T SegmentPathPeriod:: connectWithAnotherSegment(const SegmentPathPeriod& iSingleSegmentPath) const { SegmentPathPeriodKey_T oSegmentPathPeriodKey; // Retrieve the (only) segment period of the single segment path. - const SegmentPeriod* lSegmentPeriod_ptr = getFirstSegmentPeriod (); - assert (lSegmentPeriod_ptr != NULL); + const SegmentPeriod* lNextSegmentPeriod_ptr = + iSingleSegmentPath.getFirstSegmentPeriod (); + assert (lNextSegmentPeriod_ptr != NULL); + // Retrive the last segment period of the current segment path and check + // if the combination of the last segment and the next segment that we + // want to add to the current segment path will create a new segment + // (i.e., the two segment period belongs to the same flight number). + const SegmentPeriod* lLastSegmentPeriod_ptr = getLastSegmentPeriod (); + assert (lLastSegmentPeriod_ptr != NULL); + const FlightPeriod& lLastFlightPeriod = lLastSegmentPeriod_ptr->getParent(); + const FlightPeriod& lNextFlightPeriod = lNextSegmentPeriod_ptr->getParent(); + if (lLastFlightPeriod.getFlightNumber()==lNextFlightPeriod.getFlightNumber() + && lLastFlightPeriod.getParent().getAirlineCode() == + lNextFlightPeriod.getParent().getAirlineCode()) { + return oSegmentPathPeriodKey; + } + // Check if the new segment period will create a circle. - const AirportCode_T& lDestination = lSegmentPeriod_ptr->getOffPoint(); + const AirportCode_T& lDestination = lNextSegmentPeriod_ptr->getOffPoint(); if (checkCircle (lDestination) == true) { return oSegmentPathPeriodKey; } - - return oSegmentPathPeriodKey; - } + // Check if a passenger can connect from the last segment of the + // current segment path to the first segment of the to-be-added + // segment path. If yes, build a new departure period for the new + // segment path. + DateOffsetList_T lBoardingDateOffsetList = + getBoardingDateOffsetList(); + const PeriodStruct_T& lCurrentDeparturePeriod = getDeparturePeriod(); + const PeriodStruct_T& lNextDeparturePeriod = + iSingleSegmentPath.getDeparturePeriod(); + const Duration_T& lLastOffTime = lLastSegmentPeriod_ptr->getOffTime(); + const Duration_T& lNextBoardingTime = + lNextSegmentPeriod_ptr->getBoardingTime(); + // If the next boarding time is later than the last off time, check if + // the passengers will have enough time for the transfer. If the next + // boarding time is earlier than the last off time, check if the passengers + // can connect to a flight in the next day. + if (lNextBoardingTime >= lLastOffTime) { + const Duration_T lStopTime = lNextBoardingTime - lLastOffTime; + if (lStopTime < DEFAULT_MINIMUM_CONNECTION_TIME) { + return oSegmentPathPeriodKey; + } else { + // Calulcate the date offset of the next segment compare to + // the first one. In this case, this value is equal to the offset + // of the off date of the last segment compare to the boarding date + // of the first segment. + const DateOffset_T& lLastBoardingDateOffset = + lBoardingDateOffsetList.at (getNbOfSegments() - 1); + const DateOffset_T lNextBoardingDateOffset = + lLastBoardingDateOffset + lNextSegmentPeriod_ptr->getOffDateOffset() + - lNextSegmentPeriod_ptr->getBoardingDateOffset(); + const DateOffset_T lNegativeNextBoardingDateOffset = + DateOffset_T (0) - lNextBoardingDateOffset; - // //////////////////////////////////////////////////////////////////// - bool SegmentPathPeriod:: - isConnectable (const SegmentPathPeriod& iSegmentPathPeriod) const { - // Delegate the check on the two (potentially) connecting SegmentPeriod - // objects, i.e., the last SegmentPeriod of the current SegmentPathPeriod, - // and the first SegmentPeriod of the given SegmentPathPeriod. - const SegmentPeriod* lOffSegment_ptr = getLastSegmentPeriod(); - assert (lOffSegment_ptr != NULL); + // Compute the adjusted departure period of the next segment by + // substracting the origin one with the boarding date offset. + const PeriodStruct_T lAdjustedNextDeparturePeriod = + lNextDeparturePeriod.addDateOffset (lNegativeNextBoardingDateOffset); - const SegmentPeriod* lBoardingSegment_ptr = - iSegmentPathPeriod.getFirstSegmentPeriod(); - assert (lBoardingSegment_ptr != NULL); - - return lOffSegment_ptr->isConnectable (*lBoardingSegment_ptr); - // TODO + // Build the intersection of the two periods. + const PeriodStruct_T lNewDeparturePeriod = + lCurrentDeparturePeriod.intersection (lAdjustedNextDeparturePeriod); + Duration_T lNewElapsed = getElapsedTime() + lStopTime + + lNextSegmentPeriod_ptr->getElapsedTime(); + lBoardingDateOffsetList.push_back (lNextBoardingDateOffset); + oSegmentPathPeriodKey.setPeriod (lNewDeparturePeriod); + oSegmentPathPeriodKey.setElapsedTime (lNewElapsed); + } + } else { + const Duration_T lStopTime = + lNextBoardingTime - lLastOffTime + Duration_T (24, 0, 0); + if (lStopTime < DEFAULT_MINIMUM_CONNECTION_TIME) { + return oSegmentPathPeriodKey; + } else { + // Calulcate the date offset of the next segment compare to + // the first one. + const DateOffset_T& lLastBoardingDateOffset = + lBoardingDateOffsetList.at (getNbOfSegments() - 1); + const DateOffset_T lNextBoardingDateOffset = + lLastBoardingDateOffset + lNextSegmentPeriod_ptr->getOffDateOffset() + - lNextSegmentPeriod_ptr->getBoardingDateOffset() + DateOffset_T (1); + const DateOffset_T lNegativeNextBoardingDateOffset = + DateOffset_T (0) - lNextBoardingDateOffset; + + // Compute the adjusted departure period of the next segment by + // substracting the origin one with the boarding date offset. + const PeriodStruct_T lAdjustedNextDeparturePeriod = + lNextDeparturePeriod.addDateOffset (lNegativeNextBoardingDateOffset); + + // Build the intersection of the two periods. + const PeriodStruct_T lNewDeparturePeriod = + lCurrentDeparturePeriod.intersection (lAdjustedNextDeparturePeriod); + Duration_T lNewElapsed = getElapsedTime() + lStopTime + + lNextSegmentPeriod_ptr->getElapsedTime(); + lBoardingDateOffsetList.push_back (lNextBoardingDateOffset); + oSegmentPathPeriodKey.setPeriod (lNewDeparturePeriod); + oSegmentPathPeriodKey.setElapsedTime (lNewElapsed); + } + } + + const Duration_T& lBoardingTime = getBoardingTime(); + oSegmentPathPeriodKey.setBoardingTime (lBoardingTime); + oSegmentPathPeriodKey.setBoardingDateOffsetList (lBoardingDateOffsetList); + + return oSegmentPathPeriodKey; } // //////////////////////////////////////////////////////////////////// Modified: trunk/stdair/stdair/bom/SegmentPathPeriod.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPathPeriod.hpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/SegmentPathPeriod.hpp 2010-06-30 15:59:19 UTC (rev 209) @@ -86,17 +86,7 @@ 2. There is no circle within the new segment path. 3. The intersection of the two periods is non-empty. */ - const SegmentPathPeriodKey_T connectWithAnotherSegment (const SegmentPathPeriod&) const; - - /** States whether or not the given SegmentPathPeriod may connect with the - current one. - <br>Basically, the board time of the given SegmentPathPeriod should be - such as to allow the passenger connecting from the previous flight - (current SegmentPathPeriod object) to the next one - (given SegmentPathPeriod). - <br>Note that this method relies on the eponym method of the - SegmentPeriod class. */ - bool isConnectable (const SegmentPathPeriod&) const; + SegmentPathPeriodKey_T connectWithAnotherSegment (const SegmentPathPeriod&) const; /** Check if the given destination airport the departure point of one of the segment member. If yes, a circle exists. */ @@ -105,14 +95,7 @@ /** State whether or not the given airline is flown by (at least) one of the segments of the internal list. */ bool isAirlineFlown (const AirlineCode_T&) const; - - /** Update Airline Code. */ - void updateAirlineCode (); - /** Update the total flight time and the flight path code after - adding a segment-date. */ - void updateAfterAddingSegmentPeriod (const SegmentPeriod&); - public: // /////////// Display support methods ///////// /** Dump a Business Object into an output stream. Modified: trunk/stdair/stdair/bom/SegmentPathPeriodContent.cpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPathPeriodContent.cpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/SegmentPathPeriodContent.cpp 2010-06-30 15:59:19 UTC (rev 209) @@ -11,8 +11,7 @@ // //////////////////////////////////////////////////////////////////// SegmentPathPeriodContent::SegmentPathPeriodContent (const Key_T& iKey) - : _key (iKey), _airlineCode (DEFAULT_AIRLINE_CODE), - _flightPathCode (DEFAULT_FLIGHTPATH_CODE) { + : _key (iKey) { } // //////////////////////////////////////////////////////////////////// Modified: trunk/stdair/stdair/bom/SegmentPathPeriodContent.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPathPeriodContent.hpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/SegmentPathPeriodContent.hpp 2010-06-30 15:59:19 UTC (rev 209) @@ -23,26 +23,17 @@ const Key_T& getKey() const { return _key; } - /** Get the airline code (from the whole outbound path). */ - const AirlineCode_T& getAirlineCode() const { - return _airlineCode; - } - /** Get the flightPathCode (from the whole outbound path). */ - const FlightPathCode_T& getFlightPathCode() const { - return _flightPathCode; - } - - /** Get the current flightPathCode (from the whole outbound path). */ - FlightPathCode_T getCurrentFlightPathCode() { - return _flightPathCode; - } - /** Get the number of segments (part of the primary key). */ - const NbOfSegments_T& getNbOfSegments() const { + const NbOfSegments_T getNbOfSegments() const { return _key.getNbOfSegments(); } + /** Get the boarding date offset list. */ + const DateOffsetList_T& getBoardingDateOffsetList () const { + return _key.getBoardingDateOffsetList(); + } + /** Get the elapsed time (part of the primary key). */ const Duration_T& getElapsedTime() const { return _key.getElapsedTime(); @@ -57,19 +48,12 @@ const Duration_T& getBoardingTime() const { return _key.getBoardingTime(); } - - public: - // /////////// Setters //////////// - /** Set Airline Code. */ - void setAirlineCode (const AirlineCode_T& iAirlineCode) { - _airlineCode = iAirlineCode; + + /** Get the departure period. */ + const PeriodStruct_T& getDeparturePeriod () const { + return _key.getPeriod(); } - /** Set the flight path Code. */ - void setFlightPathCode (const FlightPathCode_T& iFPCode) { - _flightPathCode = iFPCode; - } - public: // /////////// Display support methods ///////// /** Dump a Business Object into an output stream. @@ -99,12 +83,6 @@ // Attributes /** The key of both structure and content objects. */ Key_T _key; - - /** AirlineCode for the whole outboundPath.*/ - AirlineCode_T _airlineCode; - - /** FlightPathCode (AirlineCode + flight numbers of all segments). */ - FlightPathCode_T _flightPathCode; }; } Modified: trunk/stdair/stdair/bom/SegmentPathPeriodKey.cpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPathPeriodKey.cpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/SegmentPathPeriodKey.cpp 2010-06-30 15:59:19 UTC (rev 209) @@ -10,27 +10,23 @@ // //////////////////////////////////////////////////////////////////// SegmentPathPeriodKey_T::SegmentPathPeriodKey_T () - : _dateRange (BOOST_DEFAULT_DATE_PERIOD), - _dow (DEFAULT_DOW_STRING), + : _period (), _boardingTime (NULL_BOOST_TIME_DURATION), _elapsed (NULL_BOOST_TIME_DURATION), - _nbOfSegments (0), _nbOfAirlines (0){ } // //////////////////////////////////////////////////////////////////// SegmentPathPeriodKey_T:: - SegmentPathPeriodKey_T (const DatePeriod_T& iDeparturePeriod, - const DoWStruct_T& iDoW, + SegmentPathPeriodKey_T (const PeriodStruct_T& iPeriod, const Duration_T& iBoardingTime, const Duration_T& iElapsedTime, - const NbOfSegments_T& iNbOfSegments, + const DateOffsetList_T& iBoardingDateOffsetList, const NbOfAirlines_T& iNbOfAirlines) - : _dateRange (iDeparturePeriod), - _dow (iDoW), + : _period (iPeriod), _boardingTime (iBoardingTime), _elapsed (iElapsedTime), - _nbOfSegments (iNbOfSegments), + _boardingDateOffsetList (iBoardingDateOffsetList), _nbOfAirlines (iNbOfAirlines){ } @@ -50,9 +46,15 @@ // //////////////////////////////////////////////////////////////////// const std::string SegmentPathPeriodKey_T::toString() const { std::ostringstream oStr; - oStr << _dateRange << ", " << _dow.describeShort () << ", " - << _boardingTime << ", " << _elapsed << ", " - << _nbOfSegments << ", " << _nbOfAirlines ; + oStr << _period.describeShort () << ", " + << _boardingTime << ", " << _elapsed << ", "; + for (DateOffsetList_T::const_iterator itOffset = + _boardingDateOffsetList.begin(); + itOffset != _boardingDateOffsetList.end(); ++itOffset) { + oStr << *itOffset << ", "; + } + + oStr << _nbOfAirlines ; return oStr.str(); } Modified: trunk/stdair/stdair/bom/SegmentPathPeriodKey.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPathPeriodKey.hpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/SegmentPathPeriodKey.hpp 2010-06-30 15:59:19 UTC (rev 209) @@ -7,7 +7,8 @@ // STDAIR #include <stdair/STDAIR_Types.hpp> #include <stdair/bom/BomKey.hpp> -#include <stdair/bom/DoWStruct.hpp> +#include <stdair/bom/PeriodStruct.hpp> +#include <stdair/bom/SegmentPathPeriodTypes.hpp> namespace stdair { /** Key of SegmentPathPeriod. */ @@ -17,27 +18,26 @@ // /////////// Construction /////////// /** Constructors. */ SegmentPathPeriodKey_T (); - SegmentPathPeriodKey_T (const DatePeriod_T&, const DoWStruct_T&, + SegmentPathPeriodKey_T (const PeriodStruct_T&, const Duration_T&, const Duration_T&, - const NbOfSegments_T&, const NbOfAirlines_T&); + const DateOffsetList_T&, const NbOfAirlines_T&); /** Destructor. */ ~SegmentPathPeriodKey_T (); // /////////// Getters ////////// - /** Get the departure period. */ - const DatePeriod_T& getDeparturePeriod () const { - return _dateRange; + /** Get the active days-of-week. */ + const PeriodStruct_T& getPeriod () const { + return _period; } - /** Get the active days-of-week. */ - const DoWStruct_T& getDoW () const { - return _dow; + const DateOffsetList_T& getBoardingDateOffsetList () const { + return _boardingDateOffsetList; } /** Get the number of segments. */ - const NbOfSegments_T& getNbOfSegments() const { - return _nbOfSegments; + const NbOfSegments_T getNbOfSegments() const { + return _boardingDateOffsetList.size(); } /** Get the number of airlines. */ @@ -54,7 +54,32 @@ const Duration_T& getBoardingTime () const { return _boardingTime; } + + // /////////// Setters ////////// + /** Set the active days-of-week. */ + void setPeriod (const PeriodStruct_T& iPeriod) { + _period = iPeriod; + } + + void setBoardingDateOffsetList (const DateOffsetList_T& iList) { + _boardingDateOffsetList = iList; + } + /** Set the number of airlines. */ + void setNbOfAirlines (const NbOfAirlines_T& iNbOfAirlines) { + _nbOfAirlines = iNbOfAirlines; + } + + /** Set the elapsed time. */ + void setElapsedTime (const Duration_T& iElapsed) { + _elapsed = iElapsed; + } + + /** Set the boarding time. */ + void setBoardingTime (const Duration_T& iBoardingTime) { + _boardingTime = iBoardingTime; + } + // /////////// Display support methods ///////// /** Dump a Business Object Key into an output stream. @param ostream& the output stream. */ @@ -70,14 +95,17 @@ <br>For instance, "H" and "K" allow to differentiate among two marketing classes for the same segment-cabin. */ const std::string toString() const; + + // /////////// Business methods //////////// + /** Check if the key is valid (i.e. the departure period is valid). */ + const bool isValid () const { + return _period.isValid (); + } private: // Attributes /** Departure peiod. */ - DatePeriod_T _dateRange; - - /** Active days-of-week. */ - DoWStruct_T _dow; + PeriodStruct_T _period; /** The boarding time. */ Duration_T _boardingTime; @@ -85,8 +113,9 @@ /** The elapsed time of the path. */ Duration_T _elapsed; - /** Number of segments included in the path. */ - NbOfSegments_T _nbOfSegments; + /** The list of boarding date offsets of the segments compare to + the first one. */ + DateOffsetList_T _boardingDateOffsetList; /** Number of airlines included in the path. */ NbOfAirlines_T _nbOfAirlines; Modified: trunk/stdair/stdair/bom/SegmentPathPeriodTypes.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPathPeriodTypes.hpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/SegmentPathPeriodTypes.hpp 2010-06-30 15:59:19 UTC (rev 209) @@ -8,6 +8,8 @@ // STL #include <map> #include <vector> +// STDAIR +#include <stdair/STDAIR_Types.hpp> namespace stdair { @@ -32,6 +34,10 @@ typedef std::vector<const SegmentPathPeriod*> SegmentPathPeriodLightList_T; typedef std::vector<SegmentPathPeriodLightList_T>SegmentPathPeriodListList_T; + + /** Define the vector of boarding date offsets of the member segments of + a segment path compare to the boarding date of the first segment. */ + typedef std::vector <DateOffset_T> DateOffsetList_T; } #endif // __STDAIR_BOM_SEGMENTPATHPERIODTYPES_HPP Modified: trunk/stdair/stdair/bom/SegmentPeriod.cpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPeriod.cpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/SegmentPeriod.cpp 2010-06-30 15:59:19 UTC (rev 209) @@ -50,14 +50,6 @@ oStr << _structure.describeParentKey() << ", " << describeShortKey(); return oStr.str(); } - - // //////////////////////////////////////////////////////////////////// - bool SegmentPeriod:: - isConnectable (const SegmentPeriod& iSegmentPeriod) const { - bool oIsConnectable = false; - - return oIsConnectable; - } // //////////////////////////////////////////////////////////////////// const SegmentPeriod::Parent_T& SegmentPeriod::getParent () const { @@ -65,14 +57,9 @@ } // //////////////////////////////////////////////////////////////////// - const DatePeriod_T& SegmentPeriod::getDeparturePeriod () const { - return getParent().getDeparturePeriod(); + const PeriodStruct_T& SegmentPeriod::getPeriod () const { + return getParent().getPeriod(); } - - // //////////////////////////////////////////////////////////////////// - const DoWStruct_T& SegmentPeriod::getDoW () const { - return getParent().getDoW(); - } } Modified: trunk/stdair/stdair/bom/SegmentPeriod.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPeriod.hpp 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/SegmentPeriod.hpp 2010-06-30 15:59:19 UTC (rev 209) @@ -54,23 +54,10 @@ /** Get the parent object. */ const Parent_T& getParent () const; - /** Get the departure date range. */ - const DatePeriod_T& getDeparturePeriod () const; + /** Get the departure period of the flight-date parent. */ + const PeriodStruct_T& getPeriod () const; - /** Get the active days-of-week. */ - const DoWStruct_T& getDoW () const; - public: - // /////////// Business Methods ////////////// - /** States whether or not the given SegmentPeriod may connect with the - current one. - <br>Basically, the board time of the given SegmentPeriod should be - such as to allow the passenger connecting from the previous flight - (current SegmentPeriod object) to the next one (given SegmentPeriod). */ - bool isConnectable (const SegmentPeriod&) const; - - - public: // /////////// Display support methods ///////// /** Dump a Business Object into an output stream. @param ostream& the output stream. */ Modified: trunk/stdair/stdair/bom/sources.mk =================================================================== --- trunk/stdair/stdair/bom/sources.mk 2010-06-28 15:24:10 UTC (rev 208) +++ trunk/stdair/stdair/bom/sources.mk 2010-06-30 15:59:19 UTC (rev 209) @@ -100,6 +100,7 @@ $(top_srcdir)/stdair/bom/YieldStore.hpp \ $(top_srcdir)/stdair/bom/OptimizerStruct.hpp \ $(top_srcdir)/stdair/bom/DoWStruct.hpp \ + $(top_srcdir)/stdair/bom/PeriodStruct.hpp \ $(top_srcdir)/stdair/bom/TravelSolutionStruct.hpp \ $(top_srcdir)/stdair/bom/BookingRequestStruct.hpp \ $(top_srcdir)/stdair/bom/AirlineStruct.hpp \ @@ -172,6 +173,7 @@ $(top_srcdir)/stdair/bom/YieldStore.cpp \ $(top_srcdir)/stdair/bom/OptimizerStruct.cpp \ $(top_srcdir)/stdair/bom/DoWStruct.cpp \ + $(top_srcdir)/stdair/bom/PeriodStruct.cpp \ $(top_srcdir)/stdair/bom/TravelSolutionStruct.cpp \ $(top_srcdir)/stdair/bom/BookingRequestStruct.cpp \ $(top_srcdir)/stdair/bom/AirlineStruct.cpp \ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-06-28 15:24:16
|
Revision: 208 http://stdair.svn.sourceforge.net/stdair/?rev=208&view=rev Author: denis_arnaud Date: 2010-06-28 15:24:10 +0000 (Mon, 28 Jun 2010) Log Message: ----------- [Dev] The BomKey_T (default) destructor is now virtual (it was non-virtual before, as it was not specified and therefore implicitly instantiated). Modified Paths: -------------- trunk/stdair/stdair/bom/BomKey.hpp Modified: trunk/stdair/stdair/bom/BomKey.hpp =================================================================== --- trunk/stdair/stdair/bom/BomKey.hpp 2010-06-28 12:49:47 UTC (rev 207) +++ trunk/stdair/stdair/bom/BomKey.hpp 2010-06-28 15:24:10 UTC (rev 208) @@ -36,6 +36,8 @@ marketing classes for the same segment-date. */ virtual const std::string toString() const { return std::string("Hello!"); } + /** Default destructor. */ + virtual ~BomKey_T() {} }; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-06-28 12:49:59
|
Revision: 207 http://stdair.svn.sourceforge.net/stdair/?rev=207&view=rev Author: denis_arnaud Date: 2010-06-28 12:49:47 +0000 (Mon, 28 Jun 2010) Log Message: ----------- [Dev] Added pragma directives to support Boost versions lower than 1.35 (e.g., for RedHat/CentOS 5). Modified Paths: -------------- trunk/stdair/stdair/bom/AirlineFeature.hpp trunk/stdair/stdair/bom/AirportDate.hpp trunk/stdair/stdair/bom/BomRoot.hpp trunk/stdair/stdair/bom/BookingClass.hpp trunk/stdair/stdair/bom/Bucket.hpp trunk/stdair/stdair/bom/DemandStream.hpp trunk/stdair/stdair/bom/FlightDate.hpp trunk/stdair/stdair/bom/FlightPeriod.hpp trunk/stdair/stdair/bom/Inventory.hpp trunk/stdair/stdair/bom/LegCabin.hpp trunk/stdair/stdair/bom/LegDate.hpp trunk/stdair/stdair/bom/Network.hpp trunk/stdair/stdair/bom/NetworkDate.hpp trunk/stdair/stdair/bom/OriginDestinationSet.hpp trunk/stdair/stdair/bom/OutboundPath.hpp trunk/stdair/stdair/bom/ReachableUniverse.hpp trunk/stdair/stdair/bom/SegmentCabin.hpp trunk/stdair/stdair/bom/SegmentDate.hpp trunk/stdair/stdair/bom/SegmentPathPeriod.hpp trunk/stdair/stdair/bom/SegmentPeriod.hpp trunk/stdair/stdair/bom/Structure.hpp trunk/stdair/stdair/bom/YieldStore.hpp trunk/stdair/stdair/factory/FacBomContent.hpp trunk/stdair/stdair/factory/FacBomStructure.hpp Modified: trunk/stdair/stdair/bom/AirlineFeature.hpp =================================================================== --- trunk/stdair/stdair/bom/AirlineFeature.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/AirlineFeature.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/AirportDate.hpp =================================================================== --- trunk/stdair/stdair/bom/AirportDate.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/AirportDate.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/BomRoot.hpp =================================================================== --- trunk/stdair/stdair/bom/BomRoot.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/BomRoot.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/BookingClass.hpp =================================================================== --- trunk/stdair/stdair/bom/BookingClass.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/BookingClass.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/Bucket.hpp =================================================================== --- trunk/stdair/stdair/bom/Bucket.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/Bucket.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/DemandStream.hpp =================================================================== --- trunk/stdair/stdair/bom/DemandStream.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/DemandStream.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/FlightDate.hpp =================================================================== --- trunk/stdair/stdair/bom/FlightDate.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/FlightDate.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/FlightPeriod.hpp =================================================================== --- trunk/stdair/stdair/bom/FlightPeriod.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/FlightPeriod.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/Inventory.hpp =================================================================== --- trunk/stdair/stdair/bom/Inventory.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/Inventory.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/LegCabin.hpp =================================================================== --- trunk/stdair/stdair/bom/LegCabin.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/LegCabin.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/LegDate.hpp =================================================================== --- trunk/stdair/stdair/bom/LegDate.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/LegDate.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/Network.hpp =================================================================== --- trunk/stdair/stdair/bom/Network.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/Network.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/NetworkDate.hpp =================================================================== --- trunk/stdair/stdair/bom/NetworkDate.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/NetworkDate.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/OriginDestinationSet.hpp =================================================================== --- trunk/stdair/stdair/bom/OriginDestinationSet.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/OriginDestinationSet.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/OutboundPath.hpp =================================================================== --- trunk/stdair/stdair/bom/OutboundPath.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/OutboundPath.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/ReachableUniverse.hpp =================================================================== --- trunk/stdair/stdair/bom/ReachableUniverse.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/ReachableUniverse.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/SegmentCabin.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentCabin.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/SegmentCabin.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/SegmentDate.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentDate.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/SegmentDate.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/SegmentPathPeriod.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPathPeriod.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/SegmentPathPeriod.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/bom/SegmentPeriod.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPeriod.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/SegmentPeriod.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -4,7 +4,14 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#include <boost/version.hpp> +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/SegmentPeriodContent.hpp> #include <stdair/bom/SegmentPeriodTypes.hpp> @@ -35,7 +42,11 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/Structure.hpp =================================================================== --- trunk/stdair/stdair/bom/Structure.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/Structure.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -9,7 +9,6 @@ // Boost Fusion #include <boost/version.hpp> #if BOOST_VERSION >= 103500 -//#include <boost/fusion/include/map.hpp> #include <boost/fusion/include/at_key.hpp> #endif // BOOST_VERSION >= 103500 // STDAIR Modified: trunk/stdair/stdair/bom/YieldStore.hpp =================================================================== --- trunk/stdair/stdair/bom/YieldStore.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/bom/YieldStore.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -5,6 +5,7 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #else // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/factory/FacBomContent.hpp =================================================================== --- trunk/stdair/stdair/factory/FacBomContent.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/factory/FacBomContent.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -7,6 +7,7 @@ // STL #include <cassert> // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/at_key.hpp> #endif // BOOST_VERSION >= 103500 Modified: trunk/stdair/stdair/factory/FacBomStructure.hpp =================================================================== --- trunk/stdair/stdair/factory/FacBomStructure.hpp 2010-06-28 11:19:12 UTC (rev 206) +++ trunk/stdair/stdair/factory/FacBomStructure.hpp 2010-06-28 12:49:47 UTC (rev 207) @@ -8,11 +8,9 @@ #include <cassert> #include <string> #include <vector> -//#include <iostream> // Boost Fusion +#include <boost/version.hpp> #if BOOST_VERSION >= 103500 -//#include <boost/fusion/container/map.hpp> -//#include <boost/fusion/include/map.hpp> #include <boost/fusion/include/at_key.hpp> #else // BOOST_VERSION >= 103500 #include <boost/mpl/map.hpp> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-06-28 11:19:18
|
Revision: 206 http://stdair.svn.sourceforge.net/stdair/?rev=206&view=rev Author: denis_arnaud Date: 2010-06-28 11:19:12 +0000 (Mon, 28 Jun 2010) Log Message: ----------- [Dev] Added pragma directives to support Boost versions lower than 1.35 (e.g., for RedHat/CentOS 5). Modified Paths: -------------- trunk/stdair/stdair/bom/Structure.hpp trunk/stdair/stdair/factory/FacBomContent.hpp trunk/stdair/stdair/factory/FacBomStructure.hpp Modified: trunk/stdair/stdair/bom/Structure.hpp =================================================================== --- trunk/stdair/stdair/bom/Structure.hpp 2010-06-28 11:05:45 UTC (rev 205) +++ trunk/stdair/stdair/bom/Structure.hpp 2010-06-28 11:19:12 UTC (rev 206) @@ -9,7 +9,7 @@ // Boost Fusion #include <boost/version.hpp> #if BOOST_VERSION >= 103500 -#include <boost/fusion/include/map.hpp> +//#include <boost/fusion/include/map.hpp> #include <boost/fusion/include/at_key.hpp> #endif // BOOST_VERSION >= 103500 // STDAIR Modified: trunk/stdair/stdair/factory/FacBomContent.hpp =================================================================== --- trunk/stdair/stdair/factory/FacBomContent.hpp 2010-06-28 11:05:45 UTC (rev 205) +++ trunk/stdair/stdair/factory/FacBomContent.hpp 2010-06-28 11:19:12 UTC (rev 206) @@ -5,8 +5,12 @@ // Import section // ////////////////////////////////////////////////////////////////////// // STL -#include <map> -// STDAIR +#include <cassert> +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/at_key.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/STDAIR_Types.hpp> #include <stdair/basic/BasConst_Inventory.hpp> #include <stdair/basic/DemandCharacteristicTypes.hpp> Modified: trunk/stdair/stdair/factory/FacBomStructure.hpp =================================================================== --- trunk/stdair/stdair/factory/FacBomStructure.hpp 2010-06-28 11:05:45 UTC (rev 205) +++ trunk/stdair/stdair/factory/FacBomStructure.hpp 2010-06-28 11:19:12 UTC (rev 206) @@ -8,11 +8,11 @@ #include <cassert> #include <string> #include <vector> -#include <iostream> +//#include <iostream> // Boost Fusion #if BOOST_VERSION >= 103500 -#include <boost/fusion/container/map.hpp> -#include <boost/fusion/include/map.hpp> +//#include <boost/fusion/container/map.hpp> +//#include <boost/fusion/include/map.hpp> #include <boost/fusion/include/at_key.hpp> #else // BOOST_VERSION >= 103500 #include <boost/mpl/map.hpp> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-06-28 11:05:51
|
Revision: 205 http://stdair.svn.sourceforge.net/stdair/?rev=205&view=rev Author: denis_arnaud Date: 2010-06-28 11:05:45 +0000 (Mon, 28 Jun 2010) Log Message: ----------- [Dev] Added pragma directives to support Boost versions lower than 1.35 (e.g., for RedHat/CentOS 5). Modified Paths: -------------- trunk/stdair/stdair/bom/Structure.hpp trunk/stdair/stdair/factory/FacBomStructure.hpp Modified: trunk/stdair/stdair/bom/Structure.hpp =================================================================== --- trunk/stdair/stdair/bom/Structure.hpp 2010-06-28 10:35:53 UTC (rev 204) +++ trunk/stdair/stdair/bom/Structure.hpp 2010-06-28 11:05:45 UTC (rev 205) @@ -10,7 +10,7 @@ #include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> -#include <boost/fusion/sequence/intrinsic/at_key.hpp> +#include <boost/fusion/include/at_key.hpp> #endif // BOOST_VERSION >= 103500 // STDAIR #include <stdair/bom/BomStructure.hpp> Modified: trunk/stdair/stdair/factory/FacBomStructure.hpp =================================================================== --- trunk/stdair/stdair/factory/FacBomStructure.hpp 2010-06-28 10:35:53 UTC (rev 204) +++ trunk/stdair/stdair/factory/FacBomStructure.hpp 2010-06-28 11:05:45 UTC (rev 205) @@ -13,7 +13,7 @@ #if BOOST_VERSION >= 103500 #include <boost/fusion/container/map.hpp> #include <boost/fusion/include/map.hpp> -#include <boost/fusion/sequence/intrinsic/at_key.hpp> +#include <boost/fusion/include/at_key.hpp> #else // BOOST_VERSION >= 103500 #include <boost/mpl/map.hpp> #endif // BOOST_VERSION >= 103500 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-06-28 10:35:59
|
Revision: 204 http://stdair.svn.sourceforge.net/stdair/?rev=204&view=rev Author: denis_arnaud Date: 2010-06-28 10:35:53 +0000 (Mon, 28 Jun 2010) Log Message: ----------- [Dev] Added pragma directives to support Boost versions lower than 1.35 (e.g., for RedHat/CentOS 5). Modified Paths: -------------- trunk/stdair/stdair/bom/AirportDate.hpp trunk/stdair/stdair/bom/FlightDate.hpp trunk/stdair/stdair/bom/NetworkDate.hpp trunk/stdair/stdair/bom/OriginDestinationSet.hpp trunk/stdair/stdair/bom/ReachableUniverse.hpp trunk/stdair/stdair/bom/SegmentPathPeriod.hpp Modified: trunk/stdair/stdair/bom/AirportDate.hpp =================================================================== --- trunk/stdair/stdair/bom/AirportDate.hpp 2010-06-28 09:28:02 UTC (rev 203) +++ trunk/stdair/stdair/bom/AirportDate.hpp 2010-06-28 10:35:53 UTC (rev 204) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/AirportDateContent.hpp> #include <stdair/bom/AirportDateTypes.hpp> #include <stdair/bom/OutboundPathTypes.hpp> @@ -36,9 +42,13 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<OutboundPath, OutboundPathHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/FlightDate.hpp =================================================================== --- trunk/stdair/stdair/bom/FlightDate.hpp 2010-06-28 09:28:02 UTC (rev 203) +++ trunk/stdair/stdair/bom/FlightDate.hpp 2010-06-28 10:35:53 UTC (rev 204) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/FlightDateContent.hpp> #include <stdair/bom/FlightDateTypes.hpp> #include <stdair/bom/SegmentDateTypes.hpp> @@ -40,10 +46,14 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<LegDate, LegDateHolder_T*>, boost::fusion::pair<SegmentDate, SegmentDateHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/NetworkDate.hpp =================================================================== --- trunk/stdair/stdair/bom/NetworkDate.hpp 2010-06-28 09:28:02 UTC (rev 203) +++ trunk/stdair/stdair/bom/NetworkDate.hpp 2010-06-28 10:35:53 UTC (rev 204) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/NetworkDateContent.hpp> #include <stdair/bom/NetworkDateTypes.hpp> #include <stdair/bom/AirportDateTypes.hpp> @@ -36,9 +42,13 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<AirportDate, AirportDateHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/OriginDestinationSet.hpp =================================================================== --- trunk/stdair/stdair/bom/OriginDestinationSet.hpp 2010-06-28 09:28:02 UTC (rev 203) +++ trunk/stdair/stdair/bom/OriginDestinationSet.hpp 2010-06-28 10:35:53 UTC (rev 204) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/OriginDestinationSetContent.hpp> #include <stdair/bom/OriginDestinationSetTypes.hpp> #include <stdair/bom/SegmentPathPeriodTypes.hpp> @@ -36,9 +42,13 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<SegmentPathPeriod, SegmentPathPeriodHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/ReachableUniverse.hpp =================================================================== --- trunk/stdair/stdair/bom/ReachableUniverse.hpp 2010-06-28 09:28:02 UTC (rev 203) +++ trunk/stdair/stdair/bom/ReachableUniverse.hpp 2010-06-28 10:35:53 UTC (rev 204) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/ReachableUniverseContent.hpp> #include <stdair/bom/ReachableUniverseTypes.hpp> #include <stdair/bom/SegmentPathPeriodTypes.hpp> @@ -38,9 +44,13 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<OriginDestinationSet, OriginDestinationSetHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/SegmentPathPeriod.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentPathPeriod.hpp 2010-06-28 09:28:02 UTC (rev 203) +++ trunk/stdair/stdair/bom/SegmentPathPeriod.hpp 2010-06-28 10:35:53 UTC (rev 204) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/SegmentPathPeriodContent.hpp> #include <stdair/bom/SegmentPathPeriodTypes.hpp> #include <stdair/bom/SegmentPeriodTypes.hpp> @@ -36,9 +42,13 @@ typedef std::multimap<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<SegmentPeriod, SegmentPeriodHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-06-28 10:10:37
|
Revision: 203 http://stdair.svn.sourceforge.net/stdair/?rev=203&view=rev Author: denis_arnaud Date: 2010-06-28 09:28:02 +0000 (Mon, 28 Jun 2010) Log Message: ----------- [Dev] Added pragma directives to support Boost versions lower than 1.35 (e.g., for RedHat/CentOS 5). Modified Paths: -------------- trunk/stdair/stdair/bom/BookingClass.hpp trunk/stdair/stdair/bom/Bucket.hpp trunk/stdair/stdair/bom/DemandStream.hpp trunk/stdair/stdair/bom/FlightPeriod.hpp trunk/stdair/stdair/bom/LegCabin.hpp trunk/stdair/stdair/bom/LegDate.hpp trunk/stdair/stdair/bom/SegmentCabin.hpp trunk/stdair/stdair/bom/SegmentDate.hpp Modified: trunk/stdair/stdair/bom/BookingClass.hpp =================================================================== --- trunk/stdair/stdair/bom/BookingClass.hpp 2010-06-28 09:16:58 UTC (rev 202) +++ trunk/stdair/stdair/bom/BookingClass.hpp 2010-06-28 09:28:02 UTC (rev 203) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/BookingClassContent.hpp> #include <stdair/bom/BookingClassTypes.hpp> @@ -34,7 +40,11 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// // /////////////// Getters //////////////// Modified: trunk/stdair/stdair/bom/Bucket.hpp =================================================================== --- trunk/stdair/stdair/bom/Bucket.hpp 2010-06-28 09:16:58 UTC (rev 202) +++ trunk/stdair/stdair/bom/Bucket.hpp 2010-06-28 09:28:02 UTC (rev 203) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/BucketContent.hpp> #include <stdair/bom/BucketTypes.hpp> @@ -33,7 +39,11 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/DemandStream.hpp =================================================================== --- trunk/stdair/stdair/bom/DemandStream.hpp 2010-06-28 09:16:58 UTC (rev 202) +++ trunk/stdair/stdair/bom/DemandStream.hpp 2010-06-28 09:28:02 UTC (rev 203) @@ -5,7 +5,11 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 // StdAir #include <stdair/bom/DemandStreamContent.hpp> #include <stdair/bom/DemandStreamTypes.hpp> @@ -35,7 +39,11 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/FlightPeriod.hpp =================================================================== --- trunk/stdair/stdair/bom/FlightPeriod.hpp 2010-06-28 09:16:58 UTC (rev 202) +++ trunk/stdair/stdair/bom/FlightPeriod.hpp 2010-06-28 09:28:02 UTC (rev 203) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/FlightPeriodContent.hpp> #include <stdair/bom/FlightPeriodTypes.hpp> #include <stdair/bom/SegmentPeriodTypes.hpp> @@ -38,9 +44,13 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<SegmentPeriod, SegmentPeriodHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/LegCabin.hpp =================================================================== --- trunk/stdair/stdair/bom/LegCabin.hpp 2010-06-28 09:16:58 UTC (rev 202) +++ trunk/stdair/stdair/bom/LegCabin.hpp 2010-06-28 09:28:02 UTC (rev 203) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/LegCabinContent.hpp> #include <stdair/bom/LegCabinTypes.hpp> #include <stdair/bom/BucketTypes.hpp> @@ -38,10 +44,14 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<Bucket, BucketHolder_T*>, boost::fusion::pair<SegmentCabin, SegmentCabinHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/LegDate.hpp =================================================================== --- trunk/stdair/stdair/bom/LegDate.hpp 2010-06-28 09:16:58 UTC (rev 202) +++ trunk/stdair/stdair/bom/LegDate.hpp 2010-06-28 09:28:02 UTC (rev 203) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/LegDateContent.hpp> #include <stdair/bom/LegDateTypes.hpp> #include <stdair/bom/LegCabinTypes.hpp> @@ -38,10 +44,14 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<LegCabin, LegCabinHolder_T*>, boost::fusion::pair<SegmentDate, SegmentDateHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/SegmentCabin.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentCabin.hpp 2010-06-28 09:16:58 UTC (rev 202) +++ trunk/stdair/stdair/bom/SegmentCabin.hpp 2010-06-28 09:28:02 UTC (rev 203) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/SegmentCabinContent.hpp> #include <stdair/bom/SegmentCabinTypes.hpp> #include <stdair/bom/BookingClassTypes.hpp> @@ -38,10 +44,14 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<BookingClass, BookingClassHolder_T*>, boost::fusion::pair<LegCabin, LegCabinHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/SegmentDate.hpp =================================================================== --- trunk/stdair/stdair/bom/SegmentDate.hpp 2010-06-28 09:16:58 UTC (rev 202) +++ trunk/stdair/stdair/bom/SegmentDate.hpp 2010-06-28 09:28:02 UTC (rev 203) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/SegmentDateContent.hpp> #include <stdair/bom/SegmentDateTypes.hpp> #include <stdair/bom/LegDateTypes.hpp> @@ -38,10 +44,14 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<SegmentCabin, SegmentCabinHolder_T*>, boost::fusion::pair<LegDate, LegDateHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-06-28 09:17:04
|
Revision: 202 http://stdair.svn.sourceforge.net/stdair/?rev=202&view=rev Author: denis_arnaud Date: 2010-06-28 09:16:58 +0000 (Mon, 28 Jun 2010) Log Message: ----------- [Dev] Added pragma directives to support Boost versions lower than 1.35 (e.g., for RedHat/CentOS 5). Modified Paths: -------------- trunk/stdair/stdair/factory/FacBomStructure.hpp Modified: trunk/stdair/stdair/factory/FacBomStructure.hpp =================================================================== --- trunk/stdair/stdair/factory/FacBomStructure.hpp 2010-06-28 08:59:37 UTC (rev 201) +++ trunk/stdair/stdair/factory/FacBomStructure.hpp 2010-06-28 09:16:58 UTC (rev 202) @@ -9,11 +9,15 @@ #include <string> #include <vector> #include <iostream> -// BOOST Fusion +// Boost Fusion +#if BOOST_VERSION >= 103500 #include <boost/fusion/container/map.hpp> #include <boost/fusion/include/map.hpp> #include <boost/fusion/sequence/intrinsic/at_key.hpp> -// STDAIR +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/STDAIR_Types.hpp> #include <stdair/basic/BasConst_Inventory.hpp> #include <stdair/bom/BomChildrenHolderImp.hpp> @@ -58,6 +62,7 @@ typedef typename CHILD::Content_T CHILD_CONTENT_T; typedef BomChildrenHolderImp<CHILD_CONTENT_T> CHILDREN_HOLDER_T; +#if BOOST_VERSION >= 103500 CHILDREN_HOLDER_T*& lChildrenHolder_ptr = boost::fusion::at_key<CHILD_CONTENT_T> (ioParent._holderMap); @@ -67,6 +72,11 @@ } return addObjectToHolder<CHILD_CONTENT_T> (*lChildrenHolder_ptr, iChild); + +#else // BOOST_VERSION >= 103500 + return true; + +#endif // BOOST_VERSION >= 103500 } // ////////////////////////////////////////////////////////////////// @@ -79,6 +89,7 @@ typedef typename CHILD::Content_T CHILD_CONTENT_T; typedef BomChildrenHolderImp<CHILD_CONTENT_T> CHILDREN_HOLDER_T; +#if BOOST_VERSION >= 103500 CHILDREN_HOLDER_T*& lChildrenHolder_ptr = boost::fusion::at_key<CHILD_CONTENT_T> (ioParent._holderMap); @@ -89,6 +100,11 @@ return addFullObjectToHolder<CHILD_CONTENT_T> (*lChildrenHolder_ptr, iChild); + +#else // BOOST_VERSION >= 103500 + return true; + +#endif // BOOST_VERSION >= 103500 } // ////////////////////////////////////////////////////////////////// This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-06-28 08:59:43
|
Revision: 201 http://stdair.svn.sourceforge.net/stdair/?rev=201&view=rev Author: denis_arnaud Date: 2010-06-28 08:59:37 +0000 (Mon, 28 Jun 2010) Log Message: ----------- [Dev] Added pragma directives to support Boost versions lower than 1.35 (e.g., for RedHat/CentOS 5). Modified Paths: -------------- trunk/stdair/stdair/bom/Network.hpp trunk/stdair/stdair/bom/YieldStore.hpp Modified: trunk/stdair/stdair/bom/Network.hpp =================================================================== --- trunk/stdair/stdair/bom/Network.hpp 2010-06-28 08:53:24 UTC (rev 200) +++ trunk/stdair/stdair/bom/Network.hpp 2010-06-28 08:59:37 UTC (rev 201) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/NetworkContent.hpp> #include <stdair/bom/NetworkTypes.hpp> #include <stdair/bom/NetworkDateTypes.hpp> @@ -36,9 +42,13 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<NetworkDate, NetworkDateHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/YieldStore.hpp =================================================================== --- trunk/stdair/stdair/bom/YieldStore.hpp 2010-06-28 08:53:24 UTC (rev 200) +++ trunk/stdair/stdair/bom/YieldStore.hpp 2010-06-28 08:59:37 UTC (rev 201) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/YieldStoreContent.hpp> #include <stdair/bom/YieldStoreTypes.hpp> @@ -34,7 +40,11 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <qua...@us...> - 2010-06-28 08:53:31
|
Revision: 200 http://stdair.svn.sourceforge.net/stdair/?rev=200&view=rev Author: quannaus Date: 2010-06-28 08:53:24 +0000 (Mon, 28 Jun 2010) Log Message: ----------- [dev] Added ReachableUniverse, OriginDestinationSet, SegmentPathPeriod, FlightPeriod, SegmentPeriod Modified Paths: -------------- trunk/stdair/stdair/STDAIR_Types.hpp trunk/stdair/stdair/basic/BasConst.cpp trunk/stdair/stdair/basic/BasConst_Period_BOM.hpp trunk/stdair/stdair/bom/BomManager.cpp trunk/stdair/stdair/bom/BomRoot.cpp trunk/stdair/stdair/bom/BomRoot.hpp trunk/stdair/stdair/bom/BomSource.hpp trunk/stdair/stdair/bom/DoWStruct.cpp trunk/stdair/stdair/bom/Inventory.cpp trunk/stdair/stdair/bom/Inventory.hpp trunk/stdair/stdair/bom/LegDateContent.cpp trunk/stdair/stdair/bom/LegDateContent.hpp trunk/stdair/stdair/bom/OutboundPath.cpp trunk/stdair/stdair/bom/OutboundPath.hpp trunk/stdair/stdair/bom/OutboundPathContent.cpp trunk/stdair/stdair/bom/OutboundPathContent.hpp trunk/stdair/stdair/bom/SegmentDate.cpp trunk/stdair/stdair/bom/SegmentDate.hpp trunk/stdair/stdair/bom/SegmentDateContent.cpp trunk/stdair/stdair/bom/SegmentDateContent.hpp trunk/stdair/stdair/bom/sources.mk trunk/stdair/stdair/command/CmdBomManager.cpp trunk/stdair/stdair/command/CmdBomManager.hpp Added Paths: ----------- trunk/stdair/stdair/bom/FlightPeriod.cpp trunk/stdair/stdair/bom/FlightPeriod.hpp trunk/stdair/stdair/bom/FlightPeriodContent.cpp trunk/stdair/stdair/bom/FlightPeriodContent.hpp trunk/stdair/stdair/bom/FlightPeriodKey.cpp trunk/stdair/stdair/bom/FlightPeriodKey.hpp trunk/stdair/stdair/bom/FlightPeriodTypes.hpp trunk/stdair/stdair/bom/OriginDestinationSet.cpp trunk/stdair/stdair/bom/OriginDestinationSet.hpp trunk/stdair/stdair/bom/OriginDestinationSetContent.cpp trunk/stdair/stdair/bom/OriginDestinationSetContent.hpp trunk/stdair/stdair/bom/OriginDestinationSetKey.cpp trunk/stdair/stdair/bom/OriginDestinationSetKey.hpp trunk/stdair/stdair/bom/OriginDestinationSetTypes.hpp trunk/stdair/stdair/bom/ReachableUniverse.cpp trunk/stdair/stdair/bom/ReachableUniverse.hpp trunk/stdair/stdair/bom/ReachableUniverseContent.cpp trunk/stdair/stdair/bom/ReachableUniverseContent.hpp trunk/stdair/stdair/bom/ReachableUniverseKey.cpp trunk/stdair/stdair/bom/ReachableUniverseKey.hpp trunk/stdair/stdair/bom/ReachableUniverseTypes.hpp trunk/stdair/stdair/bom/SegmentPathPeriod.cpp trunk/stdair/stdair/bom/SegmentPathPeriod.hpp trunk/stdair/stdair/bom/SegmentPathPeriodContent.cpp trunk/stdair/stdair/bom/SegmentPathPeriodContent.hpp trunk/stdair/stdair/bom/SegmentPathPeriodKey.cpp trunk/stdair/stdair/bom/SegmentPathPeriodKey.hpp trunk/stdair/stdair/bom/SegmentPathPeriodTypes.hpp trunk/stdair/stdair/bom/SegmentPeriod.cpp trunk/stdair/stdair/bom/SegmentPeriod.hpp trunk/stdair/stdair/bom/SegmentPeriodContent.cpp trunk/stdair/stdair/bom/SegmentPeriodContent.hpp trunk/stdair/stdair/bom/SegmentPeriodKey.cpp trunk/stdair/stdair/bom/SegmentPeriodKey.hpp trunk/stdair/stdair/bom/SegmentPeriodTypes.hpp Modified: trunk/stdair/stdair/STDAIR_Types.hpp =================================================================== --- trunk/stdair/stdair/STDAIR_Types.hpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/STDAIR_Types.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -29,47 +29,36 @@ class STDAIR_Service; // ///////// Exceptions /////////// - class RootException : public std::exception { - }; + class RootException : public std::exception { }; - class FileNotFoundException : public RootException { - }; + class FileNotFoundException : public RootException { }; - class NonInitialisedLogServiceException : public RootException { - }; + class NonInitialisedLogServiceException : public RootException { }; - class NonInitialisedDBSessionManagerException : public RootException { - }; + class NonInitialisedDBSessionManagerException : public RootException { }; - class NonInitialisedServiceException : public RootException { - }; + class NonInitialisedServiceException : public RootException { }; - class MemoryAllocationException : public RootException { - }; + class MemoryAllocationException : public RootException { }; - class ObjectLinkingException : public RootException { - }; + class ObjectLinkingException : public RootException { }; - class ParserException : public RootException { - }; + class ParserException : public RootException { }; - class CodeConversionException : public ParserException { - }; + class CodeConversionException : public ParserException { }; - class CodeDuplicationException : public ParserException { - }; + class CodeDuplicationException : public ParserException { }; - class ObjectNotFoundException : public RootException { - }; + class ObjectCreationgDuplicationException : public ParserException { }; - class SQLDatabaseException : public RootException { - }; + class ObjectNotFoundException : public RootException { }; + class SQLDatabaseException : public RootException { }; + class SQLDatabaseConnectionImpossibleException : public SQLDatabaseException { }; - class DocumentNotFoundException : public RootException { - }; + class DocumentNotFoundException : public RootException { }; // /////////////// Log ///////////// /** Level of logs. */ @@ -147,8 +136,8 @@ /** Define the Day-Of-the-Week as a string. */ typedef std::string DOW_String_T; - /** Define the Date Off-Set (e.g., -1 ). */ - typedef boost::gregorian::date_duration DateOffSet_T; + /** Define the Date Offset (e.g., -1 ). */ + typedef boost::gregorian::date_duration DateOffset_T; /** Define a duration in number of days. */ typedef unsigned int DayDuration_T; Modified: trunk/stdair/stdair/basic/BasConst.cpp =================================================================== --- trunk/stdair/stdair/basic/BasConst.cpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/basic/BasConst.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -42,11 +42,11 @@ const std::string DOW_STR[] = {"Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"}; - /** Default DOW String (e.g., "1111100"). */ - const DOW_String_T DEFAULT_DOW_STRING ("1111100"); + /** Default DOW String (e.g., "0000000"). */ + const DOW_String_T DEFAULT_DOW_STRING ("0000000"); - /** Default Date OffSet (e.g., 0). */ - const DateOffSet_T DEFAULT_DATE_OFFSET (0); + /** Default Date Offset (e.g., 0). */ + const DateOffset_T DEFAULT_DATE_OFFSET (0); // // //////// General /////// /** Default date for the General. */ Modified: trunk/stdair/stdair/basic/BasConst_Period_BOM.hpp =================================================================== --- trunk/stdair/stdair/basic/BasConst_Period_BOM.hpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/basic/BasConst_Period_BOM.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -19,8 +19,8 @@ /** Default DOW String (e.g., "1111100"). */ extern const DOW_String_T DEFAULT_DOW_STRING; - /** Default Date OffSet (e.g., 0). */ - extern const DateOffSet_T DEFAULT_DATE_OFFSET; + /** Default Date Offset (e.g., 0). */ + extern const DateOffset_T DEFAULT_DATE_OFFSET; /** Default Duration in days (e.g., 0). */ extern const DayDuration_T DEFAULT_DAY_DURATION; Modified: trunk/stdair/stdair/bom/BomManager.cpp =================================================================== --- trunk/stdair/stdair/bom/BomManager.cpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/BomManager.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -6,25 +6,7 @@ #include <ostream> // StdAir #include <stdair/basic/BasConst_BomManager.hpp> -#include <stdair/bom/BomChildrenHolderImp.hpp> -#include <stdair/bom/Structure.hpp> -#include <stdair/bom/BomList.hpp> -#include <stdair/bom/BomMap.hpp> -#include <stdair/bom/BomRoot.hpp> -#include <stdair/bom/AirlineFeature.hpp> -#include <stdair/bom/BomList.hpp> -#include <stdair/bom/BomMap.hpp> -#include <stdair/bom/Inventory.hpp> -#include <stdair/bom/FlightDate.hpp> -#include <stdair/bom/SegmentDate.hpp> -#include <stdair/bom/LegDate.hpp> -#include <stdair/bom/SegmentCabin.hpp> -#include <stdair/bom/LegCabin.hpp> -#include <stdair/bom/BookingClass.hpp> -#include <stdair/bom/Network.hpp> -#include <stdair/bom/NetworkDate.hpp> -#include <stdair/bom/AirportDate.hpp> -#include <stdair/bom/OutboundPath.hpp> +#include <stdair/bom/BomSource.hpp> #include <stdair/bom/BookingRequestStruct.hpp> #include <stdair/bom/BomManager.hpp> @@ -145,10 +127,10 @@ << lCurrentLD.getOffPoint() << ", " << lCurrentLD.getBoardingDate() << " -> " << lCurrentLD.getOffDate() << " / " - << lCurrentLD.getDateOffSet() << ", " + << lCurrentLD.getDateOffset() << ", " << lCurrentLD.getBoardingTime() << " -> " << lCurrentLD.getOffTime() << " (" - << lCurrentLD.getTimeOffSet() << ") / " + << lCurrentLD.getTimeOffset() << ") / " << lCurrentLD.getElapsedTime() << ", " << lCurrentLD.getDistance() << ", " << lCurrentLD.getCapacity() << ", " @@ -278,10 +260,10 @@ << lCurrentSC.getCabinCode() << ", " << lCurrentSD.getBoardingDate() << " -> " << lCurrentSD.getOffDate() << " / " - << lCurrentSD.getDateOffSet() << ", " + << lCurrentSD.getDateOffset() << ", " << lCurrentSD.getBoardingTime() << " -> " << lCurrentSD.getOffTime() << " (" - << lCurrentSD.getTimeOffSet() << ") / " + << lCurrentSD.getTimeOffset() << ") / " << lCurrentSD.getElapsedTime() << ", " << lCurrentSD.getDistance() << ", " << std::endl; Modified: trunk/stdair/stdair/bom/BomRoot.cpp =================================================================== --- trunk/stdair/stdair/bom/BomRoot.cpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/BomRoot.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -21,6 +21,7 @@ // //////////////////////////////////////////////////////////////////// void BomRoot::init() { _structure.initChildrenHolder<Inventory>(); + _structure.initChildrenHolder<ReachableUniverse>(); _structure.initChildrenHolder<Network>(); _structure.initChildrenHolder<AirlineFeature>(); _structure.initChildrenHolder<DemandStream>(); @@ -38,6 +39,16 @@ } // //////////////////////////////////////////////////////////////////// + ReachableUniverseList_T BomRoot::getReachableUniverseList () const { + return _structure.getChildrenHolder<ReachableUniverse>(); + } + + // //////////////////////////////////////////////////////////////////// + ReachableUniverseMap_T BomRoot::getReachableUniverseMap () const { + return _structure.getChildrenHolder<ReachableUniverse>(); + } + + // //////////////////////////////////////////////////////////////////// NetworkList_T BomRoot::getNetworkList () const { return _structure.getChildrenHolder<Network>(); } @@ -83,6 +94,12 @@ } // //////////////////////////////////////////////////////////////////// + ReachableUniverse* BomRoot:: + getReachableUniverse (const AirportCode_T& iAirportCode) const { + return _structure.getChildPtr<ReachableUniverse> (iAirportCode); + } + + // //////////////////////////////////////////////////////////////////// Network* BomRoot::getNetwork (const NetworkID_T& iNetworkID) const { return _structure.getChildPtr<Network> (iNetworkID); } Modified: trunk/stdair/stdair/bom/BomRoot.hpp =================================================================== --- trunk/stdair/stdair/bom/BomRoot.hpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/BomRoot.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -14,6 +14,7 @@ #include <stdair/bom/BomRootContent.hpp> #include <stdair/bom/BomRootTypes.hpp> #include <stdair/bom/InventoryTypes.hpp> +#include <stdair/bom/ReachableUniverseTypes.hpp> #include <stdair/bom/NetworkTypes.hpp> #include <stdair/bom/DemandStreamTypes.hpp> #include <stdair/bom/AirlineFeatureTypes.hpp> @@ -62,6 +63,7 @@ #if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<Inventory, InventoryHolder_T*>, + boost::fusion::pair<ReachableUniverse, ReachableUniverseHolder_T*>, boost::fusion::pair<Network, NetworkHolder_T*>, boost::fusion::pair<AirlineFeature, AirlineFeatureHolder_T*>, boost::fusion::pair<DemandStream, DemandStreamHolder_T*>, @@ -77,6 +79,8 @@ /** Get a list or map of a children type for iteration methods. */ InventoryList_T getInventoryList () const; InventoryMap_T getInventoryMap () const; + ReachableUniverseList_T getReachableUniverseList () const; + ReachableUniverseMap_T getReachableUniverseMap () const; NetworkList_T getNetworkList () const; NetworkMap_T getNetworkMap () const; DemandStreamList_T getDemandStreamList () const; @@ -91,6 +95,11 @@ <br>If not existing, return the NULL pointer. */ Inventory* getInventory (const AirlineCode_T&) const; + /** Retrieve, if existing, the ReachableUniverse corresponding to the + given airport. + <br>If not existing, return the NULL pointer. */ + ReachableUniverse* getReachableUniverse (const AirportCode_T&) const; + /** Retrieve, if existing, the Network corresponding to the given airline code (Network key). <br>If not existing, return the NULL pointer. */ Modified: trunk/stdair/stdair/bom/BomSource.hpp =================================================================== --- trunk/stdair/stdair/bom/BomSource.hpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/BomSource.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -22,6 +22,11 @@ #include <stdair/bom/LegDate.hpp> #include <stdair/bom/LegCabin.hpp> #include <stdair/bom/Bucket.hpp> +#include <stdair/bom/FlightPeriod.hpp> +#include <stdair/bom/SegmentPeriod.hpp> +#include <stdair/bom/ReachableUniverse.hpp> +#include <stdair/bom/OriginDestinationSet.hpp> +#include <stdair/bom/SegmentPathPeriod.hpp> #include <stdair/bom/DemandStream.hpp> #include <stdair/bom/AirlineFeature.hpp> #include <stdair/bom/YieldStore.hpp> Modified: trunk/stdair/stdair/bom/DoWStruct.cpp =================================================================== --- trunk/stdair/stdair/bom/DoWStruct.cpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/DoWStruct.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -1,17 +1,16 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// C -#include <assert.h> // STL #include <sstream> +#include <cassert> // STDAIR #include <stdair/basic/BasConst_Period_BOM.hpp> #include <stdair/bom/DoWStruct.hpp> namespace stdair { - // ////////////////////////////////////////////////////////////////////// + // //////////////////////////////////////////////////////////////////// DoWStruct_T::DoWStruct_T (const std::string& iDowString) { const unsigned short lDowStringSize = iDowString.size(); assert (lDowStringSize == 7); @@ -24,13 +23,13 @@ } } - // ////////////////////////////////////////////////////////////////////// + // //////////////////////////////////////////////////////////////////// DoWStruct_T::DoWStruct_T (const DoWStruct_T& iDowStruct) : _dowList (iDowStruct._dowList) { } - // ////////////////////////////////////////////////////////////////////// + // //////////////////////////////////////////////////////////////////// const std::string DoWStruct_T::describeShort() const { std::ostringstream ostr; short i = 0; @@ -42,7 +41,7 @@ return ostr.str(); } - // ////////////////////////////////////////////////////////////////////// + // //////////////////////////////////////////////////////////////////// const std::string DoWStruct_T::describe() const { std::ostringstream ostr; short i = 0; @@ -56,12 +55,12 @@ return ostr.str(); } - // ////////////////////////////////////////////////////////////////////// + // //////////////////////////////////////////////////////////////////// bool DoWStruct_T::getDayOfWeek (const unsigned short i) const { return _dowList.at (i); } - // ////////////////////////////////////////////////////////////////////// + // //////////////////////////////////////////////////////////////////// bool DoWStruct_T::getStandardDayOfWeek (const unsigned short i) const { unsigned short iStd = i; if (iStd == 0) { Copied: trunk/stdair/stdair/bom/FlightPeriod.cpp (from rev 195, trunk/stdair/stdair/bom/FlightDate.cpp) =================================================================== --- trunk/stdair/stdair/bom/FlightPeriod.cpp (rev 0) +++ trunk/stdair/stdair/bom/FlightPeriod.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,75 @@ +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STL +#include <cassert> +#include <iostream> +#include <algorithm> +// STDAIR +#include <stdair/bom/BomSource.hpp> + +namespace stdair { + + // //////////////////////////////////////////////////////////////////// + FlightPeriod::FlightPeriod (const Key_T& iKey, + Structure_T& ioFlightStructure) + : FlightPeriodContent (iKey), _structure (ioFlightStructure) { + init (); + } + + // //////////////////////////////////////////////////////////////////// + FlightPeriod::~FlightPeriod () { + } + + // //////////////////////////////////////////////////////////////////// + void FlightPeriod::init() { + _structure.initChildrenHolder<SegmentPeriod>(); + } + + // //////////////////////////////////////////////////////////////////// + void FlightPeriod::toStream (std::ostream& ioOut) const { + ioOut << toString() << std::endl; + } + + // //////////////////////////////////////////////////////////////////// + void FlightPeriod::fromStream (std::istream& ioIn) { + } + + // //////////////////////////////////////////////////////////////////// + std::string FlightPeriod::toString() const { + std::ostringstream oStr; + + // First, put the key of that level + oStr << describeShortKey() << std::endl; + + return oStr.str(); + } + + // //////////////////////////////////////////////////////////////////// + const std::string FlightPeriod::describeKey() const { + std::ostringstream oStr; + oStr << _structure.describeParentKey() << ", " << describeShortKey(); + return oStr.str(); + } + + // //////////////////////////////////////////////////////////////////// + const FlightPeriod::Parent_T& FlightPeriod::getParent () const { + return _structure.getParent().getContent(); + } + + // //////////////////////////////////////////////////////////////////// + SegmentPeriodList_T FlightPeriod::getSegmentPeriodList () const { + return _structure.getChildrenHolder<SegmentPeriod>(); + } + + // //////////////////////////////////////////////////////////////////// + SegmentPeriodMap_T FlightPeriod::getSegmentPeriodMap () const { + return _structure.getChildrenHolder<SegmentPeriod>(); + } + + // //////////////////////////////////////////////////////////////////// + SegmentPeriod* FlightPeriod::getSegmentPeriod (const SegmentPeriodKey_T& iKey) const { + return _structure.getChildPtr<SegmentPeriod> (iKey.toString() ); + } +} + Copied: trunk/stdair/stdair/bom/FlightPeriod.hpp (from rev 195, trunk/stdair/stdair/bom/FlightDate.hpp) =================================================================== --- trunk/stdair/stdair/bom/FlightPeriod.hpp (rev 0) +++ trunk/stdair/stdair/bom/FlightPeriod.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,98 @@ +#ifndef __STDAIR_BOM_FLIGHTPERIOD_HPP +#define __STDAIR_BOM_FLIGHTPERIOD_HPP + +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STDAIR +#include <stdair/bom/FlightPeriodContent.hpp> +#include <stdair/bom/FlightPeriodTypes.hpp> +#include <stdair/bom/SegmentPeriodTypes.hpp> + +namespace stdair { + // Forward declarations + class Inventory; + class SegmentPeriod; + struct SegmentPeriodKey_T; + + /** Class representing the actual functional/business content for a + flight-period. */ + class FlightPeriod : public FlightPeriodContent { + friend class FacBomContent; + + public: + // Type definitions + // ////////////////////////////////////////////////////////////////// + // See the explanations, within the BomRoot class, for all + // the types which require to be specified below + // ////////////////////////////////////////////////////////////////// + /** Definition allowing to retrieve the associated BOM structure type. */ + typedef FlightPeriodStructure_T Structure_T; + + /** Definition allowing to retrieve the associated parent + BOM content type. */ + typedef Inventory Parent_T; + + /** Definition allowing to retrieve the map/multimap type using by + BomChildrenHolder. */ + typedef std::map<const MapKey_T, const Structure_T*> Map_T; + + /** Define the list of children holder types. */ + typedef boost::fusion::map< + boost::fusion::pair<SegmentPeriod, SegmentPeriodHolder_T*> + > ChildrenHolderMap_T; + // ////////////////////////////////////////////////////////////////// + + public: + // /////////// Getters ///////////// + /** Get the parent object. */ + const Parent_T& getParent () const; + + /** Get a list or map of a children type for iteration methods. */ + SegmentPeriodList_T getSegmentPeriodList () const; + SegmentPeriodMap_T getSegmentPeriodMap () const; + + /** Retrieve, if existing, the SegmentPeriod corresponding to the + given SegmentPeriod key. + <br>If not existing, return the NULL pointer. */ + SegmentPeriod* getSegmentPeriod (const SegmentPeriodKey_T&) const; + + public: + // /////////// Display support methods ///////// + /** Dump a Business Object into an output stream. + @param ostream& the output stream. */ + void toStream (std::ostream& ioOut) const; + + /** Read a Business Object from an input stream. + @param istream& the input stream. */ + void fromStream (std::istream& ioIn); + + /** Get the serialised version of the Business Object. */ + std::string toString() const; + + /** Get a string describing the whole key (differentiating two objects + at any level). */ + const std::string describeKey() const; + + protected: + /** Constructors are private so as to force the usage of the Factory + layer. */ + /** Constructors. */ + FlightPeriod (const Key_T&, Structure_T&); + /** Destructor. */ + ~FlightPeriod(); + /** Initialise all the pointers of children holder to NULL. */ + void init(); + /** Default constructors. */ + FlightPeriod (); + FlightPeriod (const FlightPeriod&); + + protected: + // Attributes + /** Reference structure. */ + Structure_T& _structure; + }; + +} +#endif // __STDAIR_BOM_FLIGHTPERIOD_HPP + Copied: trunk/stdair/stdair/bom/FlightPeriodContent.cpp (from rev 195, trunk/stdair/stdair/bom/FlightDateContent.cpp) =================================================================== --- trunk/stdair/stdair/bom/FlightPeriodContent.cpp (rev 0) +++ trunk/stdair/stdair/bom/FlightPeriodContent.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,21 @@ +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STL +#include <cassert> +// STDAIR +#include <stdair/bom/FlightPeriodContent.hpp> + +namespace stdair { + + // //////////////////////////////////////////////////////////////////// + FlightPeriodContent::FlightPeriodContent (const Key_T& iKey) + : _key (iKey) { + } + + // //////////////////////////////////////////////////////////////////// + FlightPeriodContent::~FlightPeriodContent () { + } + +} + Copied: trunk/stdair/stdair/bom/FlightPeriodContent.hpp (from rev 195, trunk/stdair/stdair/bom/FlightDateContent.hpp) =================================================================== --- trunk/stdair/stdair/bom/FlightPeriodContent.hpp (rev 0) +++ trunk/stdair/stdair/bom/FlightPeriodContent.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,74 @@ +#ifndef __STDAIR_BOM_FLIGHTPERIODCONTENT_HPP +#define __STDAIR_BOM_FLIGHTPERIODCONTENT_HPP + +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STDAIR +#include <stdair/bom/BomContent.hpp> +#include <stdair/bom/FlightPeriodKey.hpp> + +namespace stdair { + + /** Class representing the actual attributes for an airline flight-period. */ + class FlightPeriodContent : public BomContent { + public: + // Type definitions. + /** Definition allowing to retrieve the associated BOM key type. */ + typedef FlightPeriodKey_T Key_T; + + public: + // /////////// Getters /////////////// + /** Get the flight-period key. */ + const Key_T& getKey () const { + return _key; + } + + /** Get the flight number (part of the primary key). */ + const FlightNumber_T& getFlightNumber () const { + return _key.getFlightNumber(); + } + + /** Get the departure date range. */ + const DatePeriod_T& getDeparturePeriod () const { + return _key.getDeparturePeriod(); + } + + /** Get the active days-of-week. */ + const DoWStruct_T& getDoW () const { + return _key.getDoW(); + } + + public: + // /////////// Display support methods ///////// + /** Dump a Business Object into an output stream. + @param ostream& the output stream. */ + virtual void toStream (std::ostream& ioOut) const = 0; + + /** Read a Business Object from an input stream. + @param istream& the input stream. */ + virtual void fromStream (std::istream& ioIn) = 0; + + /** Get the serialised version of the Business Object. */ + virtual std::string toString() const = 0; + + /** Get a string describing the short key (differentiating two objects + at the same level). */ + const std::string describeShortKey() const { return _key.toString(); } + + protected: + /** Default constructors. */ + FlightPeriodContent (const Key_T&); + FlightPeriodContent (const FlightPeriodContent&); + /** Destructor. */ + virtual ~FlightPeriodContent(); + + protected: + // Attributes + /** The key of both structure and content objects. */ + Key_T _key; + }; + +} +#endif // __STDAIR_BOM_FLIGHTPERIODCONTENT_HPP + Copied: trunk/stdair/stdair/bom/FlightPeriodKey.cpp (from rev 195, trunk/stdair/stdair/bom/FlightDateKey.cpp) =================================================================== --- trunk/stdair/stdair/bom/FlightPeriodKey.cpp (rev 0) +++ trunk/stdair/stdair/bom/FlightPeriodKey.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,43 @@ +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STDAIR +#include <stdair/bom/FlightPeriodKey.hpp> + +namespace stdair { + + // //////////////////////////////////////////////////////////////////// + FlightPeriodKey_T::FlightPeriodKey_T (const FlightNumber_T& iFlightNumber, + const DatePeriod_T& iDatePeriod, + const DoWStruct_T& iDoW) + : _flightNumber (iFlightNumber), _dateRange (iDatePeriod), _dow (iDoW) { + } + + // //////////////////////////////////////////////////////////////////// + FlightPeriodKey_T::FlightPeriodKey_T (const FlightPeriodKey_T& iKey) + : _flightNumber (iKey._flightNumber), _dateRange (iKey._dateRange), + _dow (iKey._dow) { + } + + // //////////////////////////////////////////////////////////////////// + FlightPeriodKey_T::~FlightPeriodKey_T () { + } + + // //////////////////////////////////////////////////////////////////// + void FlightPeriodKey_T::toStream (std::ostream& ioOut) const { + ioOut << "FlightPeriodKey: " << toString() << std::endl; + } + + // //////////////////////////////////////////////////////////////////// + void FlightPeriodKey_T::fromStream (std::istream& ioIn) { + } + + // //////////////////////////////////////////////////////////////////// + const std::string FlightPeriodKey_T::toString() const { + std::ostringstream oStr; + oStr << _flightNumber << ", " << _dateRange << ", " + << _dow.describeShort(); + return oStr.str(); + } + +} Copied: trunk/stdair/stdair/bom/FlightPeriodKey.hpp (from rev 195, trunk/stdair/stdair/bom/FlightDateKey.hpp) =================================================================== --- trunk/stdair/stdair/bom/FlightPeriodKey.hpp (rev 0) +++ trunk/stdair/stdair/bom/FlightPeriodKey.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,73 @@ +#ifndef __STDAIR_BOM_FLIGHTPERIODKEY_HPP +#define __STDAIR_BOM_FLIGHTPERIODKEY_HPP + +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STDAIR +#include <stdair/bom/BomKey.hpp> +#include <stdair/bom/DoWStruct.hpp> + +namespace stdair { + /** Key of flight-period. */ + struct FlightPeriodKey_T : public BomKey_T { + + private: + // /////////// Default constructor ////////// + FlightPeriodKey_T (); + public: + // /////////// Construction /////////// + /** Constructors. */ + FlightPeriodKey_T (const FlightNumber_T&, const DatePeriod_T&, + const DoWStruct_T&); + FlightPeriodKey_T (const FlightPeriodKey_T&); + /** Destructor. */ + ~FlightPeriodKey_T (); + + // /////////// Getters ////////// + /** Get the flight number. */ + const FlightNumber_T& getFlightNumber() const { + return _flightNumber; + } + + /** Get the departure date range. */ + const DatePeriod_T& getDeparturePeriod () const { + return _dateRange; + } + + /** Get the active days-of-week. */ + const DoWStruct_T& getDoW () const { + return _dow; + } + + // /////////// Display support methods ///////// + /** Dump a Business Object Key into an output stream. + @param ostream& the output stream. */ + void toStream (std::ostream& ioOut) const; + + /** Read a Business Object Key from an input stream. + @param istream& the input stream. */ + void fromStream (std::istream& ioIn); + + /** Get the serialised version of the Business Object Key. + <br>That string is unique, at the level of a given Business Object, + when among children of a given parent Business Object. + <br>For instance, "H" and "K" allow to differentiate among two + marketing classes for the same segment-period. */ + const std::string toString() const; + + private: + // Attributes + /** Flight number. */ + FlightNumber_T _flightNumber; + + /** Departure period of the (first leg of the) flight. */ + DatePeriod_T _dateRange; + + /** DoW during the departure period. */ + DoWStruct_T _dow; + + }; + +} +#endif // __STDAIR_BOM_FLIGHTPERIODKEY_HPP Copied: trunk/stdair/stdair/bom/FlightPeriodTypes.hpp (from rev 195, trunk/stdair/stdair/bom/FlightDateTypes.hpp) =================================================================== --- trunk/stdair/stdair/bom/FlightPeriodTypes.hpp (rev 0) +++ trunk/stdair/stdair/bom/FlightPeriodTypes.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,34 @@ +// ////////////////////////////////////////////////////////////////////// +#ifndef __STDAIR_BOM_FLIGHTPERIODTYPES_HPP +#define __STDAIR_BOM_FLIGHTPERIODTYPES_HPP + +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STL +#include <map> +#include <vector> + +namespace stdair { + + // Forward declarations. + template <typename CONTENT> class Structure; + template <typename CONTENT> class BomChildrenHolderImp; + template <typename BOM> struct BomList_T; + template <typename BOM> struct BomMap_T; + class FlightPeriod; + + /** Define the FlightPeriod structure. */ + typedef Structure<FlightPeriod> FlightPeriodStructure_T; + + /** Define the FlightPeriod holder. */ + typedef BomChildrenHolderImp<FlightPeriod> FlightPeriodHolder_T; + + /** Define the flight-period list. */ + typedef BomList_T<FlightPeriod> FlightPeriodList_T; + + /** Define the flight-period map. */ + typedef BomMap_T<FlightPeriod> FlightPeriodMap_T; +} +#endif // __STDAIR_BOM_FLIGHTPERIODTYPES_HPP + Modified: trunk/stdair/stdair/bom/Inventory.cpp =================================================================== --- trunk/stdair/stdair/bom/Inventory.cpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/Inventory.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -22,6 +22,7 @@ // //////////////////////////////////////////////////////////////////// void Inventory::init () { _structure.initChildrenHolder<FlightDate> (); + _structure.initChildrenHolder<FlightPeriod> (); } // //////////////////////////////////////////////////////////////////// @@ -46,6 +47,11 @@ } // //////////////////////////////////////////////////////////////////// + const Inventory::Parent_T& Inventory::getParent () const { + return _structure.getParent().getContent(); + } + + // //////////////////////////////////////////////////////////////////// FlightDateList_T Inventory::getFlightDateList () const { return _structure.getChildrenHolder<FlightDate>(); } @@ -56,9 +62,25 @@ } // //////////////////////////////////////////////////////////////////// + FlightPeriodList_T Inventory::getFlightPeriodList () const { + return _structure.getChildrenHolder<FlightPeriod>(); + } + + // //////////////////////////////////////////////////////////////////// + FlightPeriodMap_T Inventory::getFlightPeriodMap () const { + return _structure.getChildrenHolder<FlightPeriod>(); + } + + // //////////////////////////////////////////////////////////////////// FlightDate* Inventory:: getFlightDate (const FlightDateKey_T& iKey) const { return _structure.getChildPtr<FlightDate> (iKey.toString()); } + + // //////////////////////////////////////////////////////////////////// + FlightPeriod* Inventory:: + getFlightPeriod (const FlightPeriodKey_T& iKey) const { + return _structure.getChildPtr<FlightPeriod> (iKey.toString()); + } } Modified: trunk/stdair/stdair/bom/Inventory.hpp =================================================================== --- trunk/stdair/stdair/bom/Inventory.hpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/Inventory.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -14,13 +14,16 @@ #include <stdair/bom/InventoryContent.hpp> #include <stdair/bom/InventoryTypes.hpp> #include <stdair/bom/FlightDateTypes.hpp> +#include <stdair/bom/FlightPeriodTypes.hpp> namespace stdair { // Forward declarations class BomRoot; class FlightDate; + class FlightPeriod; class AirlineFeature; struct FlightDateKey_T; + struct FlightPeriodKey_T; /** Class representing the actual functional/business content for an airline inventory. */ @@ -46,7 +49,8 @@ /** Define the list of children holder types. */ #if BOOST_VERSION >= 103500 typedef boost::fusion::map< - boost::fusion::pair<FlightDate, FlightDateHolder_T*> + boost::fusion::pair<FlightDate, FlightDateHolder_T*>, + boost::fusion::pair<FlightPeriod, FlightPeriodHolder_T*> > ChildrenHolderMap_T; #else // BOOST_VERSION >= 103500 typedef boost::mpl::map< > ChildrenHolderMap_T; @@ -72,9 +76,14 @@ public: // /////////// Getters ///////////// + /** Get the parent object. */ + const Parent_T& getParent () const; + /** Get a list or map of a children type for iteration methods. */ FlightDateList_T getFlightDateList () const; FlightDateMap_T getFlightDateMap () const; + FlightPeriodList_T getFlightPeriodList () const; + FlightPeriodMap_T getFlightPeriodMap () const; /** Get the airline feature. */ const AirlineFeature* getAirlineFeature () const { @@ -85,6 +94,11 @@ given flight number and flight date (FlightDate key). <br>If not existing, return the NULL pointer. */ FlightDate* getFlightDate (const FlightDateKey_T&) const; + + /** Retrieve, if existing, the FlightPeriod corresponding to the + given flight number and flight period (FlightPeriod key). + <br>If not existing, return the NULL pointer. */ + FlightPeriod* getFlightPeriod (const FlightPeriodKey_T&) const; public: // /////////// Setters //////////// Modified: trunk/stdair/stdair/bom/LegDateContent.cpp =================================================================== --- trunk/stdair/stdair/bom/LegDateContent.cpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/LegDateContent.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -21,14 +21,14 @@ } // //////////////////////////////////////////////////////////////////// - const Duration_T LegDateContent::getTimeOffSet() const { - // TimeOffSet = (OffTime - BoardingTime) + (OffDate - BoardingDate) * 24 + const Duration_T LegDateContent::getTimeOffset() const { + // TimeOffset = (OffTime - BoardingTime) + (OffDate - BoardingDate) * 24 // - ElapsedTime - Duration_T oTimeOffSet = (_offTime - _boardingTime); - const DateOffSet_T& lDateOffSet = getDateOffSet(); - const Duration_T lDateOffSetInHours (lDateOffSet.days() * 24, 0, 0); - oTimeOffSet += lDateOffSetInHours - _elapsedTime; - return oTimeOffSet; + Duration_T oTimeOffset = (_offTime - _boardingTime); + const DateOffset_T& lDateOffset = getDateOffset(); + const Duration_T lDateOffsetInHours (lDateOffset.days() * 24, 0, 0); + oTimeOffset += lDateOffsetInHours - _elapsedTime; + return oTimeOffset; } // //////////////////////////////////////////////////////////////////// Modified: trunk/stdair/stdair/bom/LegDateContent.hpp =================================================================== --- trunk/stdair/stdair/bom/LegDateContent.hpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/LegDateContent.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -69,16 +69,16 @@ return _capacity; } - /** Get the date off set (off date - boarding date). */ - const DateOffSet_T getDateOffSet () const { + /** Get the date offset (off date - boarding date). */ + const DateOffset_T getDateOffset () const { return _offDate - _boardingDate; } /** Get the time off set between boarding and off points. <br>It is defined as being: - TimeOffSet = (OffTime - BoardingTime) + (OffDate - BoardingDate) * 24 + TimeOffset = (OffTime - BoardingTime) + (OffDate - BoardingDate) * 24 - ElapsedTime. */ - const Duration_T getTimeOffSet() const; + const Duration_T getTimeOffset() const; public: // ///////// Setters ////////// Copied: trunk/stdair/stdair/bom/OriginDestinationSet.cpp (from rev 195, trunk/stdair/stdair/bom/Network.cpp) =================================================================== --- trunk/stdair/stdair/bom/OriginDestinationSet.cpp (rev 0) +++ trunk/stdair/stdair/bom/OriginDestinationSet.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,68 @@ +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STL +#include <cassert> +// STDAIR +#include <stdair/bom/BomSource.hpp> + +namespace stdair { + + // //////////////////////////////////////////////////////////////////// + OriginDestinationSet::OriginDestinationSet (const Key_T& iKey, + Structure_T& ioOriginDestinationSetStructure) + : OriginDestinationSetContent (iKey), + _structure (ioOriginDestinationSetStructure) { + init (); + } + + // //////////////////////////////////////////////////////////////////// + OriginDestinationSet::~OriginDestinationSet () { + } + + // //////////////////////////////////////////////////////////////////// + void OriginDestinationSet::init () { + _structure.initChildrenHolder<SegmentPathPeriod>(); + } + + // //////////////////////////////////////////////////////////////////// + void OriginDestinationSet::toStream (std::ostream& ioOut) const { + ioOut << toString() << std::endl; + } + + // //////////////////////////////////////////////////////////////////// + void OriginDestinationSet::fromStream (std::istream& ioIn) { + } + + // //////////////////////////////////////////////////////////////////// + std::string OriginDestinationSet::toString() const { + std::ostringstream oStr; + oStr << _key.toString(); + return oStr.str(); + } + + // //////////////////////////////////////////////////////////////////// + const std::string OriginDestinationSet::describeKey() const { + return _key.toString(); + } + + // //////////////////////////////////////////////////////////////////// + const OriginDestinationSet::Parent_T& OriginDestinationSet:: + getParent () const { + return _structure.getParent().getContent(); + } + + // //////////////////////////////////////////////////////////////////// + SegmentPathPeriodList_T OriginDestinationSet:: + getSegmentPathPeriodList () const { + return _structure.getChildrenHolder<SegmentPathPeriod>(); + } + + // //////////////////////////////////////////////////////////////////// + SegmentPathPeriodMultimap_T OriginDestinationSet:: + getSegmentPathPeriodMultimap () const { + return _structure.getChildrenHolder<SegmentPathPeriod>(); + } + +} + Copied: trunk/stdair/stdair/bom/OriginDestinationSet.hpp (from rev 195, trunk/stdair/stdair/bom/Network.hpp) =================================================================== --- trunk/stdair/stdair/bom/OriginDestinationSet.hpp (rev 0) +++ trunk/stdair/stdair/bom/OriginDestinationSet.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,91 @@ +#ifndef __STDAIR_BOM_ORIGINDESTINATIONSET_HPP +#define __STDAIR_BOM_ORIGINDESTINATIONSET_HPP + +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STDAIR +#include <stdair/bom/OriginDestinationSetContent.hpp> +#include <stdair/bom/OriginDestinationSetTypes.hpp> +#include <stdair/bom/SegmentPathPeriodTypes.hpp> + +namespace stdair { + // Forward declarations + class ReachableUniverse; + class SegmentPathPeriod; + + /** Class representing the actual functional/business content for + a network. */ + class OriginDestinationSet : public OriginDestinationSetContent { + friend class FacBomContent; + + public: + // ////////////////////////////////////////////////////////////////// + // See the explanations, within the BomRoot class, for all + // the types which require to be specified below + // ////////////////////////////////////////////////////////////////// + /** Definition allowing to retrieve the associated BOM structure type. */ + typedef OriginDestinationSetStructure_T Structure_T; + + /** Definition allowing to retrieve the associated parent + BOM content type. */ + typedef ReachableUniverse Parent_T; + + /** Definition allowing to retrieve the map/multimap type using by + BomChildrenHolder. */ + typedef std::map<const MapKey_T, const Structure_T*> Map_T; + + /** Define the list of children holder types. */ + typedef boost::fusion::map< + boost::fusion::pair<SegmentPathPeriod, SegmentPathPeriodHolder_T*> + > ChildrenHolderMap_T; + // ////////////////////////////////////////////////////////////////// + + public: + // /////////// Getters ///////////// + /** Get the parent object. */ + const Parent_T& getParent () const; + + /** Get a list or map of a children type for iteration methods. */ + SegmentPathPeriodList_T getSegmentPathPeriodList () const; + SegmentPathPeriodMultimap_T getSegmentPathPeriodMultimap () const; + + public: + // /////////// Display support methods ///////// + /** Dump a Business Object into an output stream. + @param ostream& the output stream. */ + void toStream (std::ostream& ioOut) const; + + /** Read a Business Object from an input stream. + @param istream& the input stream. */ + void fromStream (std::istream& ioIn); + + /** Get the serialised version of the Business Object. */ + std::string toString() const; + + /** Get a string describing the whole key (differentiating two objects + at any level). */ + const std::string describeKey() const; + + protected: + /** Constructors are private so as to force the usage of the Factory + layer. */ + /** Constructors. */ + OriginDestinationSet (const Key_T&, Structure_T&); + /** Destructor. */ + ~OriginDestinationSet(); + /** Initialise all the pointers of children holder to NULL. */ + void init(); + /** Default constructors. */ + OriginDestinationSet (); + OriginDestinationSet (const OriginDestinationSet&); + + protected: + // Attributes + /** Reference structure. */ + Structure_T& _structure; + }; + +} +#endif // __STDAIR_BOM_ORIGINDESTINATIONSET_HPP + Copied: trunk/stdair/stdair/bom/OriginDestinationSetContent.cpp (from rev 195, trunk/stdair/stdair/bom/NetworkContent.cpp) =================================================================== --- trunk/stdair/stdair/bom/OriginDestinationSetContent.cpp (rev 0) +++ trunk/stdair/stdair/bom/OriginDestinationSetContent.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,21 @@ +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STL +#include <cassert> +// STDAIR +#include <stdair/bom/OriginDestinationSetContent.hpp> + +namespace stdair { + + // //////////////////////////////////////////////////////////////////// + OriginDestinationSetContent:: + OriginDestinationSetContent (const Key_T& iKey) : _key (iKey) { + } + + // //////////////////////////////////////////////////////////////////// + OriginDestinationSetContent::~OriginDestinationSetContent () { + } + +} + Copied: trunk/stdair/stdair/bom/OriginDestinationSetContent.hpp (from rev 195, trunk/stdair/stdair/bom/NetworkContent.hpp) =================================================================== --- trunk/stdair/stdair/bom/OriginDestinationSetContent.hpp (rev 0) +++ trunk/stdair/stdair/bom/OriginDestinationSetContent.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,59 @@ +#ifndef __STDAIR_BOM_ORIGINDESTINATIONSETCONTENT_HPP +#define __STDAIR_BOM_ORIGINDESTINATIONSETCONTENT_HPP + +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STDAIR +#include <stdair/bom/BomContent.hpp> +#include <stdair/bom/OriginDestinationSetKey.hpp> + +namespace stdair { + + /** Class representing the actual attributes for an airline network. */ + class OriginDestinationSetContent : public BomContent { + public : + // Type definitions + /** Definition allowing to retrieve the associated BOM key type. */ + typedef OriginDestinationSetKey_T Key_T; + + public: + // ////////// Getters //////////// + /** Get the network key. */ + const Key_T& getKey() const { + return _key; + } + + public: + // /////////// Display support methods ///////// + /** Dump a Business Object into an output stream. + @param ostream& the output stream. */ + virtual void toStream (std::ostream& ioOut) const = 0; + + /** Read a Business Object from an input stream. + @param istream& the input stream. */ + virtual void fromStream (std::istream& ioIn) = 0; + + /** Get the serialised version of the Business Object. */ + virtual std::string toString() const = 0; + + /** Get a string describing the short key (differentiating two objects + at the same level). */ + const std::string describeShortKey() const { return _key.toString(); } + + protected: + /** Default constructors. */ + OriginDestinationSetContent (const Key_T&); + OriginDestinationSetContent (const OriginDestinationSetContent&); + /** Destructor. */ + virtual ~OriginDestinationSetContent(); + + protected: + // Attributes + /** The key of both structure and content objects. */ + Key_T _key; + }; + +} +#endif // __STDAIR_BOM_ORIGINDESTINATIONSETCONTENT_HPP + Copied: trunk/stdair/stdair/bom/OriginDestinationSetKey.cpp (from rev 195, trunk/stdair/stdair/bom/NetworkKey.cpp) =================================================================== --- trunk/stdair/stdair/bom/OriginDestinationSetKey.cpp (rev 0) +++ trunk/stdair/stdair/bom/OriginDestinationSetKey.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,40 @@ +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STDAIR +#include <stdair/bom/OriginDestinationSetKey.hpp> + +namespace stdair { + + // //////////////////////////////////////////////////////////////////// + OriginDestinationSetKey_T:: + OriginDestinationSetKey_T (const AirportCode_T& iDestination) + : _destination (iDestination) { + } + // //////////////////////////////////////////////////////////////////// + OriginDestinationSetKey_T:: + OriginDestinationSetKey_T (const OriginDestinationSetKey_T& iKey) + : _destination (iKey._destination) { + } + + // //////////////////////////////////////////////////////////////////// + OriginDestinationSetKey_T::~OriginDestinationSetKey_T () { + } + + // //////////////////////////////////////////////////////////////////// + void OriginDestinationSetKey_T::toStream (std::ostream& ioOut) const { + ioOut << "OriginDestinationSetKey: " << toString() << std::endl; + } + + // //////////////////////////////////////////////////////////////////// + void OriginDestinationSetKey_T::fromStream (std::istream& ioIn) { + } + + // //////////////////////////////////////////////////////////////////// + const std::string OriginDestinationSetKey_T::toString() const { + std::ostringstream oStr; + oStr << _destination; + return oStr.str(); + } + +} Copied: trunk/stdair/stdair/bom/OriginDestinationSetKey.hpp (from rev 195, trunk/stdair/stdair/bom/NetworkKey.hpp) =================================================================== --- trunk/stdair/stdair/bom/OriginDestinationSetKey.hpp (rev 0) +++ trunk/stdair/stdair/bom/OriginDestinationSetKey.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,57 @@ +#ifndef __STDAIR_BOM_ORIGINDESTINATIONSETKEY_HPP +#define __STDAIR_BOM_ORIGINDESTINATIONSETKEY_HPP + +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STDAIR +#include <stdair/STDAIR_Types.hpp> +#include <stdair/bom/BomKey.hpp> + +namespace stdair { + /** Key of network. */ + struct OriginDestinationSetKey_T : public BomKey_T { + + private: + // /////////// Default constructor ////////// + OriginDestinationSetKey_T (); + + public: + // /////////// Construction /////////// + /** Constructors. */ + OriginDestinationSetKey_T (const AirportCode_T& ); + OriginDestinationSetKey_T (const OriginDestinationSetKey_T&); + /** Destructor. */ + ~OriginDestinationSetKey_T (); + + // /////////// Getters ////////// + /** Get the destination airport code. */ + const AirportCode_T& getOffPoint () const { + return _destination; + } + + // /////////// Display support methods ///////// + /** Dump a Business Object Key into an output stream. + @param ostream& the output stream. */ + void toStream (std::ostream& ioOut) const; + + /** Read a Business Object Key from an input stream. + @param istream& the input stream. */ + void fromStream (std::istream& ioIn); + + /** Get the serialised version of the Business Object Key. + <br>That string is unique, at the level of a given Business Object, + when among children of a given parent Business Object. + <br>For instance, "H" and "K" allow to differentiate among two + marketing classes for the same segment-date. */ + const std::string toString() const; + + + private: + // Attributes + /** OriginDestinationSet ID. */ + AirportCode_T _destination; + }; + +} +#endif // __STDAIR_BOM_ORIGINDESTINATIONSETKEY_HPP Copied: trunk/stdair/stdair/bom/OriginDestinationSetTypes.hpp (from rev 195, trunk/stdair/stdair/bom/NetworkTypes.hpp) =================================================================== --- trunk/stdair/stdair/bom/OriginDestinationSetTypes.hpp (rev 0) +++ trunk/stdair/stdair/bom/OriginDestinationSetTypes.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,35 @@ +// ////////////////////////////////////////////////////////////////////// +#ifndef __STDAIR_BOM_ORIGINDESTINATIONSETTYPES_HPP +#define __STDAIR_BOM_ORIGINDESTINATIONSETTYPES_HPP + +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STL +#include <map> +#include <vector> + +namespace stdair { + + // Forward declarations. + template <typename CONTENT> class Structure; + template <typename CONTENT> class BomChildrenHolderImp; + template <typename BOM> struct BomList_T; + template <typename BOM> struct BomMap_T; + class OriginDestinationSet; + + /** Define the OriginDestinationSet structure. */ + typedef Structure<OriginDestinationSet> OriginDestinationSetStructure_T; + + /** Define the OriginDestinationSet holder. */ + typedef BomChildrenHolderImp<OriginDestinationSet> OriginDestinationSetHolder_T; + + /** Define the OriginDestinationSet list. */ + typedef BomList_T<OriginDestinationSet> OriginDestinationSetList_T; + + /** Define the OriginDestinationSet map. */ + typedef BomMap_T<OriginDestinationSet> OriginDestinationSetMap_T; + +} +#endif // __STDAIR_BOM_ORIGINDESTINATIONSETTYPES_HPP + Modified: trunk/stdair/stdair/bom/OutboundPath.cpp =================================================================== --- trunk/stdair/stdair/bom/OutboundPath.cpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/OutboundPath.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -108,11 +108,6 @@ } // //////////////////////////////////////////////////////////////////// - void OutboundPath::incrementTotalFlightTime (const Duration_T& iElapsed) { - _flightTime += iElapsed; - } - - // //////////////////////////////////////////////////////////////////// void OutboundPath::updateAirlineCode() { // TODO: to be optimised. std::ostringstream ostr; @@ -163,7 +158,8 @@ iOutboundPath.getFirstSegmentDate(); assert (lBoardingSegment_ptr != NULL); - return lOffSegment_ptr->isConnectable (*lBoardingSegment_ptr); + //return lOffSegment_ptr->isConnectable (*lBoardingSegment_ptr); + return true; } // //////////////////////////////////////////////////////////////////// @@ -245,9 +241,6 @@ // //////////////////////////////////////////////////////////////////// void OutboundPath:: updateAfterAddingSegmentDate (const SegmentDate& iSegmentDate) { - // Increment the total flight time of the outbound path - const Duration_T lElapsed = iSegmentDate.getElapsedTime(); - incrementTotalFlightTime (lElapsed); // Increment the flight path code std::ostringstream ostr; FlightPathCode_T lPreviousFPCode = getCurrentFlightPathCode(); Modified: trunk/stdair/stdair/bom/OutboundPath.hpp =================================================================== --- trunk/stdair/stdair/bom/OutboundPath.hpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/OutboundPath.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -68,11 +68,6 @@ <br>Return a NULL pointer if the list is empty. */ const SegmentDate* getFirstSegmentDate () const; - private: - // ////////////// Business methods ////////////// - /** Increments the total flight time of the outbound path.*/ - void incrementTotalFlightTime (const Duration_T&); - public: /** Get the AirportDate corresponding to the destination of the outbound-path, i.e., the off point of the last segment-date Modified: trunk/stdair/stdair/bom/OutboundPathContent.cpp =================================================================== --- trunk/stdair/stdair/bom/OutboundPathContent.cpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/OutboundPathContent.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -12,8 +12,7 @@ // //////////////////////////////////////////////////////////////////// OutboundPathContent::OutboundPathContent (const Key_T& iKey) : _key (iKey), _airlineCode (DEFAULT_AIRLINE_CODE), - _flightPathCode (DEFAULT_FLIGHTPATH_CODE), - _flightTime (NULL_BOOST_TIME_DURATION) { + _flightPathCode (DEFAULT_FLIGHTPATH_CODE) { } // //////////////////////////////////////////////////////////////////// Modified: trunk/stdair/stdair/bom/OutboundPathContent.hpp =================================================================== --- trunk/stdair/stdair/bom/OutboundPathContent.hpp 2010-06-27 14:27:11 UTC (rev 199) +++ trunk/stdair/stdair/bom/OutboundPathContent.hpp 2010-06-28 08:53:24 UTC (rev 200) @@ -38,11 +38,6 @@ return _flightPathCode; } - /** Get the total flight time. */ - const Duration_T& getTotalFlightTime () const { - return _flightTime; - } - /** Get the number of segments (part of the primary key). */ const NbOfSegments_T& getNbOfSegments() const { return _key.getNbOfSegments(); @@ -115,9 +110,6 @@ /** FlightPathCode (AirlineCode + flight numbers of all segments). */ FlightPathCode_T _flightPathCode; - - /** Total flight time (without stop time).*/ - Duration_T _flightTime; }; } Copied: trunk/stdair/stdair/bom/ReachableUniverse.cpp (from rev 195, trunk/stdair/stdair/bom/AirportDate.cpp) =================================================================== --- trunk/stdair/stdair/bom/ReachableUniverse.cpp (rev 0) +++ trunk/stdair/stdair/bom/ReachableUniverse.cpp 2010-06-28 08:53:24 UTC (rev 200) @@ -0,0 +1,98 @@ +// ////////////////////////////////////////////////////////////////////// +// Import section +// ////////////////////////////////////////////////////////////////////// +// STL +#include <cassert> +// STDAIR +#include <stdair/basic/BasConst_Inventory.hpp> +#include <stdair/bom/BomSource.hpp> + +namespace stdair { + + // //////////////////////////////////////////////////////////////////// + ReachableUniverse::ReachableUniverse (const Key_T& iKey, + Structure_T& ioAirportStructure) + : ReachableUniverseContent (iKey), _structure (ioAirportStructure) { + init (); + } + + // //////////////////////////////////////////////////////////////////// + ReachableUniverse::~ReachableUniverse () { + } + + // //////////////////////////////////////////////////////////////////// + void ReachableUniverse::init () { + _structure.initChildrenHolder<OriginDestinationSet>(); + } + + // //////////////////////////////////////////////////////////////////// + voi... [truncated message content] |
From: <den...@us...> - 2010-06-27 14:27:17
|
Revision: 199 http://stdair.svn.sourceforge.net/stdair/?rev=199&view=rev Author: denis_arnaud Date: 2010-06-27 14:27:11 +0000 (Sun, 27 Jun 2010) Log Message: ----------- [Dev] Added pragma directives to support Boost versions lower than 1.35 (e.g., for RedHat/CentOS 5). Modified Paths: -------------- trunk/stdair/stdair/bom/AirlineFeature.hpp trunk/stdair/stdair/bom/BomRoot.hpp trunk/stdair/stdair/bom/Inventory.hpp trunk/stdair/stdair/bom/OutboundPath.hpp trunk/stdair/stdair/bom/Structure.hpp Modified: trunk/stdair/stdair/bom/AirlineFeature.hpp =================================================================== --- trunk/stdair/stdair/bom/AirlineFeature.hpp 2010-06-27 13:20:26 UTC (rev 198) +++ trunk/stdair/stdair/bom/AirlineFeature.hpp 2010-06-27 14:27:11 UTC (rev 199) @@ -5,7 +5,11 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 // StdAir #include <stdair/bom/AirlineFeatureContent.hpp> #include <stdair/bom/AirlineFeatureTypes.hpp> @@ -36,7 +40,11 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/BomRoot.hpp =================================================================== --- trunk/stdair/stdair/bom/BomRoot.hpp 2010-06-27 13:20:26 UTC (rev 198) +++ trunk/stdair/stdair/bom/BomRoot.hpp 2010-06-27 14:27:11 UTC (rev 199) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/BomRootContent.hpp> #include <stdair/bom/BomRootTypes.hpp> #include <stdair/bom/InventoryTypes.hpp> @@ -53,6 +59,7 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<Inventory, InventoryHolder_T*>, boost::fusion::pair<Network, NetworkHolder_T*>, @@ -60,6 +67,9 @@ boost::fusion::pair<DemandStream, DemandStreamHolder_T*>, boost::fusion::pair<YieldStore, YieldStoreHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/Inventory.hpp =================================================================== --- trunk/stdair/stdair/bom/Inventory.hpp 2010-06-27 13:20:26 UTC (rev 198) +++ trunk/stdair/stdair/bom/Inventory.hpp 2010-06-27 14:27:11 UTC (rev 199) @@ -4,7 +4,13 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#if BOOST_VERSION >= 103500 +#include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 +// StdAir #include <stdair/bom/InventoryContent.hpp> #include <stdair/bom/InventoryTypes.hpp> #include <stdair/bom/FlightDateTypes.hpp> @@ -38,9 +44,13 @@ typedef std::map<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<FlightDate, FlightDateHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/OutboundPath.hpp =================================================================== --- trunk/stdair/stdair/bom/OutboundPath.hpp 2010-06-27 13:20:26 UTC (rev 198) +++ trunk/stdair/stdair/bom/OutboundPath.hpp 2010-06-27 14:27:11 UTC (rev 199) @@ -5,7 +5,11 @@ // Import section // ////////////////////////////////////////////////////////////////////// // Boost Fusion +#if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> +#else // BOOST_VERSION >= 103500 +#include <boost/mpl/map.hpp> +#endif // BOOST_VERSION >= 103500 // StdAir #include <stdair/bom/OutboundPathContent.hpp> #include <stdair/bom/OutboundPathTypes.hpp> @@ -38,9 +42,13 @@ typedef std::multimap<const MapKey_T, const Structure_T*> Map_T; /** Define the list of children holder types. */ +#if BOOST_VERSION >= 103500 typedef boost::fusion::map< boost::fusion::pair<SegmentDate, SegmentDateHolder_T*> > ChildrenHolderMap_T; +#else // BOOST_VERSION >= 103500 + typedef boost::mpl::map< > ChildrenHolderMap_T; +#endif // BOOST_VERSION >= 103500 // ////////////////////////////////////////////////////////////////// public: Modified: trunk/stdair/stdair/bom/Structure.hpp =================================================================== --- trunk/stdair/stdair/bom/Structure.hpp 2010-06-27 13:20:26 UTC (rev 198) +++ trunk/stdair/stdair/bom/Structure.hpp 2010-06-27 14:27:11 UTC (rev 199) @@ -6,9 +6,12 @@ // ////////////////////////////////////////////////////////////////////// // STL #include <cassert> -// BOOST Fusion +// Boost Fusion +#include <boost/version.hpp> +#if BOOST_VERSION >= 103500 #include <boost/fusion/include/map.hpp> #include <boost/fusion/sequence/intrinsic/at_key.hpp> +#endif // BOOST_VERSION >= 103500 // STDAIR #include <stdair/bom/BomStructure.hpp> @@ -64,8 +67,16 @@ /** The the holder which corresponds to the CHILD type. */ template <typename CHILD> BomChildrenHolderImp<CHILD>& getChildrenHolder () const { + +#if BOOST_VERSION >= 103500 BomChildrenHolderImp<CHILD>* lHolder_ptr = boost::fusion::at_key<CHILD> (_holderMap); + +#else // BOOST_VERSION >= 103500 + BomChildrenHolderImp<CHILD>* lHolder_ptr = NULL; + +#endif // BOOST_VERSION >= 103500 + assert (lHolder_ptr != NULL); return *lHolder_ptr; } @@ -77,9 +88,15 @@ CHILD* getChildPtr (const MapKey_T& iKey) const { CHILD* oContentChild_ptr = NULL; +#if BOOST_VERSION >= 103500 BomChildrenHolderImp<CHILD>* lHolder_ptr = boost::fusion::at_key<CHILD> (_holderMap); +#else // BOOST_VERSION >= 103500 + BomChildrenHolderImp<CHILD>* lHolder_ptr = NULL; + +#endif // BOOST_VERSION >= 103500 + if (lHolder_ptr != NULL) { // Look for the child in the map, then in the multimap BomMap_T<CHILD> lChildrenMap (*lHolder_ptr); @@ -116,9 +133,12 @@ /** Initialise the pointer of children holder to NULL. */ template <typename CHILD> void initChildrenHolder() { + +#if BOOST_VERSION >= 103500 BomChildrenHolderImp<CHILD>*& lHolder_ptr = boost::fusion::at_key<CHILD> (_holderMap); lHolder_ptr = NULL; +#endif // BOOST_VERSION >= 103500 } public: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-06-27 13:20:32
|
Revision: 198 http://stdair.svn.sourceforge.net/stdair/?rev=198&view=rev Author: denis_arnaud Date: 2010-06-27 13:20:26 +0000 (Sun, 27 Jun 2010) Log Message: ----------- [Dev] Added pragma directives to support Boost versions lower than 1.35 (e.g., for RedHat/CentOS 5). Modified Paths: -------------- trunk/stdair/stdair/bom/AirlineFeature.hpp trunk/stdair/stdair/bom/BomContent.hpp trunk/stdair/stdair/bom/DemandStream.hpp trunk/stdair/stdair/bom/OutboundPath.hpp Modified: trunk/stdair/stdair/bom/AirlineFeature.hpp =================================================================== --- trunk/stdair/stdair/bom/AirlineFeature.hpp 2010-06-27 13:01:09 UTC (rev 197) +++ trunk/stdair/stdair/bom/AirlineFeature.hpp 2010-06-27 13:20:26 UTC (rev 198) @@ -4,7 +4,9 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#include <boost/fusion/include/map.hpp> +// StdAir #include <stdair/bom/AirlineFeatureContent.hpp> #include <stdair/bom/AirlineFeatureTypes.hpp> Modified: trunk/stdair/stdair/bom/BomContent.hpp =================================================================== --- trunk/stdair/stdair/bom/BomContent.hpp 2010-06-27 13:01:09 UTC (rev 197) +++ trunk/stdair/stdair/bom/BomContent.hpp 2010-06-27 13:20:26 UTC (rev 198) @@ -7,8 +7,6 @@ // STL #include <iosfwd> #include <string> -// BOOST Fusion -#include <boost/fusion/include/map.hpp> // STDAIR #include <stdair/STDAIR_Types.hpp> Modified: trunk/stdair/stdair/bom/DemandStream.hpp =================================================================== --- trunk/stdair/stdair/bom/DemandStream.hpp 2010-06-27 13:01:09 UTC (rev 197) +++ trunk/stdair/stdair/bom/DemandStream.hpp 2010-06-27 13:20:26 UTC (rev 198) @@ -4,7 +4,9 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#include <boost/fusion/include/map.hpp> +// StdAir #include <stdair/bom/DemandStreamContent.hpp> #include <stdair/bom/DemandStreamTypes.hpp> Modified: trunk/stdair/stdair/bom/OutboundPath.hpp =================================================================== --- trunk/stdair/stdair/bom/OutboundPath.hpp 2010-06-27 13:01:09 UTC (rev 197) +++ trunk/stdair/stdair/bom/OutboundPath.hpp 2010-06-27 13:20:26 UTC (rev 198) @@ -4,7 +4,9 @@ // ////////////////////////////////////////////////////////////////////// // Import section // ////////////////////////////////////////////////////////////////////// -// STDAIR +// Boost Fusion +#include <boost/fusion/include/map.hpp> +// StdAir #include <stdair/bom/OutboundPathContent.hpp> #include <stdair/bom/OutboundPathTypes.hpp> #include <stdair/bom/SegmentDateTypes.hpp> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-06-27 13:01:15
|
Revision: 197 http://stdair.svn.sourceforge.net/stdair/?rev=197&view=rev Author: denis_arnaud Date: 2010-06-27 13:01:09 +0000 (Sun, 27 Jun 2010) Log Message: ----------- [Dev] Added pragma directives to support Boost versions lower than 1.35 (e.g., for RedHat/CentOS 5). Modified Paths: -------------- trunk/stdair/stdair/basic/BasFileMgr.cpp Modified: trunk/stdair/stdair/basic/BasFileMgr.cpp =================================================================== --- trunk/stdair/stdair/basic/BasFileMgr.cpp 2010-06-27 12:59:39 UTC (rev 196) +++ trunk/stdair/stdair/basic/BasFileMgr.cpp 2010-06-27 13:01:09 UTC (rev 197) @@ -8,10 +8,10 @@ #include <boost/version.hpp> #if BOOST_VERSION >= 103500 #include <boost/filesystem.hpp> -#else +#else // BOOST_VERSION >= 103500 #include <boost/filesystem/path.hpp> #include <boost/filesystem/operations.hpp> -#endif +#endif // BOOST_VERSION >= 103500 // StdAir #include <stdair/basic/BasFileMgr.hpp> @@ -33,7 +33,7 @@ if (boostfs::is_regular (lPath) == true) { oFine = true; } -#endif +#endif // BOOST_VERSION >= 103500 return oFine; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <den...@us...> - 2010-06-27 12:59:47
|
Revision: 196 http://stdair.svn.sourceforge.net/stdair/?rev=196&view=rev Author: denis_arnaud Date: 2010-06-27 12:59:39 +0000 (Sun, 27 Jun 2010) Log Message: ----------- [Dev] Added pragma directives to support Boost versions lower than 1.35 (e.g., for RedHat/CentOS 5). Modified Paths: -------------- trunk/stdair/stdair/basic/BasFileMgr.cpp trunk/stdair/stdair/basic/RandomGeneration.cpp Modified: trunk/stdair/stdair/basic/BasFileMgr.cpp =================================================================== --- trunk/stdair/stdair/basic/BasFileMgr.cpp 2010-06-13 14:07:35 UTC (rev 195) +++ trunk/stdair/stdair/basic/BasFileMgr.cpp 2010-06-27 12:59:39 UTC (rev 196) @@ -5,7 +5,13 @@ #include <cassert> // Boost (STL Extension) // Boost Filesystem (http://www.boost.org/doc/libs/1_41_0/libs/filesystem/doc/index.htm) +#include <boost/version.hpp> +#if BOOST_VERSION >= 103500 #include <boost/filesystem.hpp> +#else +#include <boost/filesystem/path.hpp> +#include <boost/filesystem/operations.hpp> +#endif // StdAir #include <stdair/basic/BasFileMgr.hpp> @@ -19,11 +25,17 @@ boostfs::path lPath (iFilepath); - if (boostfs::exists (lPath) == true && boostfs::is_regular (lPath) == true) { + if (boostfs::exists (lPath) == false) { + return oFine; + } + +#if BOOST_VERSION >= 103500 + if (boostfs::is_regular (lPath) == true) { oFine = true; } +#endif - return true; + return oFine; } } Modified: trunk/stdair/stdair/basic/RandomGeneration.cpp =================================================================== --- trunk/stdair/stdair/basic/RandomGeneration.cpp 2010-06-13 14:07:35 UTC (rev 195) +++ trunk/stdair/stdair/basic/RandomGeneration.cpp 2010-06-27 12:59:39 UTC (rev 196) @@ -2,7 +2,10 @@ #include <cassert> #include <iostream> // Boost +#include <boost/version.hpp> +#if BOOST_VERSION >= 103500 #include <boost/math/distributions/normal.hpp> +#endif // BOOST_VERSION >= 103500 //STDAIR #include <stdair/basic/RandomGeneration.hpp> @@ -54,10 +57,15 @@ // ////////////////////////////////////////////////////////////////////// RealNumber_T RandomGeneration:: generateNormal (const RealNumber_T& mu, const RealNumber_T& sigma) { +#if BOOST_VERSION >= 103500 const Probability_T lVariateUnif = generateUniform01 (); const boost::math::normal lNormal (mu, sigma); const RealNumber_T lRealNumberOfRequestsToBeGenerated = boost::math::quantile(lNormal, lVariateUnif); +#else // BOOST_VERSION >= 103500 + // TODO: rely on GSL when Boost version smaller than 1.35 + const RealNumber_T lRealNumberOfRequestsToBeGenerated = 0.0; +#endif // BOOST_VERSION >= 103500 return lRealNumberOfRequestsToBeGenerated; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |