WSF
WsfGrammarInterface.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI
3//
4// The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
5//
6// Copyright 2003-2015 The Boeing Company. All rights reserved.
7//
8// The use, dissemination or disclosure of data in this file is subject to
9// limitation or restriction. See accompanying README and LICENSE for details.
10// ****************************************************************************
11
12#ifndef WSFGRAMMARINTERFACE_HPP
13#define WSFGRAMMARINTERFACE_HPP
14
15#include "wsf_export.h"
16
17#include <string>
18#include <vector>
19
21
25{
26public:
27 static WsfGrammarExtension* Find(WsfApplication& aApplication);
28
30
31 int ProcessCommandLine(WsfStandardApplication::Options& aOptions, int aArgc, char* aArgv[]) override;
32 void ProcessCommandLineCommands() override;
33
34 void AddGrammarFile(const std::string& aGrammarFilePath);
35 int AddGrammarDirectory(const std::string& aGrammarDirectoryPath);
36 void AddGrammarText(const std::string& aGrammarText);
37
38 const std::string& GetGrammarText();
39
40private:
41 const std::vector<std::string>& GetGrammarFiles();
42
43 // Below are temporary placeholders to handle integration with the IDE
44 void OutputIDE_Data(const std::string& aFileName);
45
46 bool mGrammarFilesLoaded;
47 std::vector<std::string> mInputGrammarTextList;
48 std::vector<std::string> mGrammarFilePaths;
49 std::string mGrammarText;
50
51 // Below are temporary placeholders to handle integration with the IDE
52 std::string mIDE_DataOutputFile;
53};
54#endif
#define WSF_EXPORT
Definition WsfXIO_Export.hpp:35
virtual void ProcessCommandLineCommands()
Definition WsfApplicationExtension.cpp:119
virtual int ProcessCommandLine(WsfStandardApplication::Options &aOptions, int aArgc, char *aArgv[])
Definition WsfApplicationExtension.cpp:97
friend class WsfApplication
Definition WsfApplicationExtension.hpp:88
WsfApplicationExtension()
Constructor.
Definition WsfApplicationExtension.cpp:22
WsfGrammarExtension()
Definition WsfGrammarInterface.cpp:46
int AddGrammarDirectory(const std::string &aGrammarDirectoryPath)
Adds all files with the .ag extension to the grammar text.
Definition WsfGrammarInterface.cpp:106
const std::string & GetGrammarText()
Returns the WSF grammar text.
Definition WsfGrammarInterface.cpp:178
static WsfGrammarExtension * Find(WsfApplication &aApplication)
Definition WsfGrammarInterface.cpp:41
void AddGrammarText(const std::string &aGrammarText)
Definition WsfGrammarInterface.cpp:100
void AddGrammarFile(const std::string &aGrammarFilePath)
Definition WsfGrammarInterface.cpp:89
Application options; Command line or otherwise.
Definition WsfStandardApplication.hpp:72
Copyrights Multiple, All Rights Reserved