JSBSim Flight Dynamics Model
1.0 (02 March 2017)
An Open Source Flight Dynamics and Control Software Library in C++
FGXMLParse.h
1
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2
3
Header: FGXMLParse.h
4
Author: Jon S. Berndt
5
Date started: 8/20/04
6
7
------------- Copyright (C) 2004 Jon S. Berndt (jon@jsbsim.org) -------------
8
9
This program is free software; you can redistribute it and/or modify it under
10
the terms of the GNU Lesser General Public License as published by the Free Software
11
Foundation; either version 2 of the License, or (at your option) any later
12
version.
13
14
This program is distributed in the hope that it will be useful, but WITHOUT
15
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
17
details.
18
19
You should have received a copy of the GNU Lesser General Public License along with
20
this program; if not, write to the Free Software Foundation, Inc., 59 Temple
21
Place - Suite 330, Boston, MA 02111-1307, USA.
22
23
Further information about the GNU Lesser General Public License can also be found on
24
the world wide web at http://www.gnu.org.
25
26
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
27
SENTRY
28
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
29
30
#ifndef FGXMLPARSE_H
31
#define FGXMLPARSE_H
32
33
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
34
INCLUDES
35
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
36
37
#include "simgear/xml/easyxml.hxx"
38
#include "input_output/FGXMLElement.h"
39
40
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
41
DEFINITIONS
42
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
43
44
#define ID_XMLPARSE "$Id: FGXMLParse.h,v 1.9 2014/06/09 11:52:06 bcoconni Exp $"
45
#define VALID_CHARS """`!@#$%^&*()_+`1234567890-={}[];':,.<>/?abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
46
47
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
48
FORWARD DECLARATIONS
49
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
50
51
namespace
JSBSim
{
52
53
class
Element;
54
55
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
56
CLASS DOCUMENTATION
57
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
58
64
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
65
CLASS DECLARATION
66
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
67
68
class
FGXMLParse
:
public
XMLVisitor
69
{
70
public
:
71
FGXMLParse
(
void
);
72
73
Element
* GetDocument(
void
) {
return
document;}
74
75
void
startXML();
76
void
endXML();
77
void
startElement (
const
char
* name,
const
XMLAttributes &atts);
78
void
endElement (
const
char
* name);
79
void
data (
const
char
* s,
int
length);
80
void
pi (
const
char
* target,
const
char
* data);
81
void
warning (
const
char
* message,
int
line,
int
column);
82
void
reset(
void
);
83
84
private
:
85
bool
first_element_read;
86
mutable
std::string working_string;
87
Element_ptr document;
88
Element
*current_element;
89
};
90
91
}
// namespace JSBSim
92
93
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
94
95
#endif
JSBSim::Element
Definition:
FGXMLElement.h:150
JSBSim
Definition:
FGFDMExec.cpp:73
JSBSim::FGXMLParse
Encapsulates an XML parser based on the EasyXML parser from the SimGear library.
Definition:
FGXMLParse.h:68
src
input_output
FGXMLParse.h
Generated on Fri Mar 3 2017 23:50:27 for JSBSim Flight Dynamics Model by
1.8.13