OMNeT++ NEDXML 6.1
Discrete Event Simulation Library
msgparser.h
Go to the documentation of this file.
1 //==========================================================================
2 // MSGPARSER.H - part of
3 //
4 // OMNeT++/OMNEST
5 // Discrete System Simulation in C++
6 //
7 //==========================================================================
8 
9 /*--------------------------------------------------------------*
10  Copyright (C) 2002-2017 Andras Varga
11  Copyright (C) 2006-2017 OpenSim Ltd.
12 
13  This file is distributed WITHOUT ANY WARRANTY. See the file
14  `license' for details on this and other legal matters.
15 *--------------------------------------------------------------*/
16 
17 #ifndef __OMNETPP_NEDXML_MSGPARSER_H
18 #define __OMNETPP_NEDXML_MSGPARSER_H
19 
20 #include <cstdio>
21 #include "yydefs.h"
22 
23 namespace omnetpp {
24 namespace nedxml {
25 
26 class ASTNode;
27 class ErrorStore;
28 class SourceDocument;
29 
30 /* to EXPR_TYPE: */
31 #define TYPE_NUMERIC 'N'
32 #define TYPE_CONST_NUM 'C'
33 #define TYPE_STRING 'S'
34 #define TYPE_BOOL 'B'
35 #define TYPE_XML 'X'
36 #define TYPE_ANYTYPE 'A'
37 
38 
49 {
50  public:
52 
53  protected:
54  bool loadFile(const char *osfname, const char *fname);
55  bool loadText(const char *nedtext, const char *fname);
56  ASTNode *parseMsg();
57 
58  public:
63 
67  ~MsgParser();
68 
74  void setStoreSource(bool b) {np.storesrc = b;}
75 
79  bool getStoreSourceFlag() {return np.storesrc;}
80 
87  ASTNode *parseMsgFile(const char *osfname, const char *fname=nullptr);
88 
95  ASTNode *parseMsgText(const char *text, const char *fname=nullptr);
96 };
97 
98 } // namespace nedxml
99 } // namespace omnetpp
100 
101 
102 #endif
103 
omnetpp::nedxml::ParseContext::storesrc
bool storesrc
Definition: yydefs.h:49
omnetpp::nedxml::MsgParser::np
ParseContext np
Definition: msgparser.h:51
NEDXML_API
#define NEDXML_API
Definition: nedxmldefs.h:31
yydefs.h
omnetpp
Definition: astbuilder.h:25
omnetpp::nedxml::ASTNode
Definition: astnode.h:87
omnetpp::nedxml::ParseContext
Definition: yydefs.h:48
omnetpp::nedxml::MsgParser::setStoreSource
void setStoreSource(bool b)
Definition: msgparser.h:74
omnetpp::nedxml::MsgParser
Parses MSG files into an AST.
Definition: msgparser.h:48
omnetpp::nedxml::ErrorStore
Definition: errorstore.h:37
omnetpp::nedxml::MsgParser::getStoreSourceFlag
bool getStoreSourceFlag()
Definition: msgparser.h:79