AirInv Logo  1.00.9
C++ Simulated Airline Inventory Management System Library
Loading...
Searching...
No Matches
FFDisutilityParser.cpp
Go to the documentation of this file.
1// //////////////////////////////////////////////////////////////////////
2// Import section
3// //////////////////////////////////////////////////////////////////////
4// STL
5#include <cassert>
6#include <sstream>
7// StdAir
8#include <stdair/basic/BasFileMgr.hpp>
9#include <stdair/bom/BomRoot.hpp>
10#include <stdair/service/Logger.hpp>
11// Airinv
15
16namespace AIRINV {
17
18 // //////////////////////////////////////////////////////////////////////
20 parse (const stdair::FFDisutilityFilePath& iFFDisutilityFilename,
21 stdair::BomRoot& ioBomRoot) {
22
23 const stdair::Filename_T lFilename = iFFDisutilityFilename.name();
24
25 // Check that the file path given as input corresponds to an actual file
26 bool doesExistAndIsReadable =
27 stdair::BasFileMgr::doesExistAndIsReadable (lFilename);
28 if (doesExistAndIsReadable == false) {
29 std::ostringstream oMessage;
30 oMessage << "The FF disutility input file, '" << lFilename
31 << "', can not be retrieved on the file-system";
32 STDAIR_LOG_ERROR (oMessage.str());
33 throw FFDisutilityInputFileNotFoundException (oMessage.str());
34 }
35
36 // Initialise the FFDisutility file parser.
37 FFDisutilityFileParser lFFDisutilityParser (ioBomRoot, lFilename);
38
39 // Parse the CSV-formatted FFDisutility input file, and generate the
40 // corresponding FFDisutility curves.
41 lFFDisutilityParser.generateFFDisutilityCurves ();
42 }
43}
static void parse(const stdair::FFDisutilityFilePath &iFFDisutilityInputFilename, stdair::BomRoot &)