-// easyxml.cxx - implementation of EasyXML interfaces.
-
+/**
+ * \file easyxml.cxx - implementation of EasyXML interfaces.
+ * Written by David Megginson, 2000-2001
+ * This file is in the Public Domain, and comes with NO WARRANTY of any kind.
+ */
+
+#ifdef HAVE_CONFIG_H
+# include <simgear_config.h>
+#endif
+
#include <simgear/compiler.h>
#include <string.h> // strcmp()
#include "easyxml.hxx"
-#include "xmlparse.h"
-
-#include STL_FSTREAM
-#include STL_IOSTREAM
+
+#ifdef SYSTEM_EXPAT
+# include <expat.h>
+#else
+# include "sg_expat.h"
+#endif
+
+#include <fstream>
+#include <iostream>
-SG_USING_STD(ifstream);
+using std::ifstream;
\f
}
-\f
////////////////////////////////////////////////////////////////////////
// Attribute list wrapper for Expat.
////////////////////////////////////////////////////////////////////////
-class ExpatAtts : public XMLAttributes
-{
-public:
- ExpatAtts (const char ** atts) : _atts(atts) {}
-
- virtual int size () const;
- virtual const char * getName (int i) const;
- virtual const char * getValue (int i) const;
-
-private:
- const char ** _atts;
-};
-
int
ExpatAtts::size () const
{
return _atts[i*2+1];
}
+const char *
+ExpatAtts::getValue (const char * name) const
+{
+ return XMLAttributes::getValue(name);
+}
\f
////////////////////////////////////////////////////////////////////////
}
XML_ParserFree(parser);
+ visitor.endXML();
}
void
}
XML_ParserFree(parser);
+ visitor.endXML();
}
// end of easyxml.cxx