aboutsummaryrefslogtreecommitdiff
path: root/KaplaDemo/samples/sampleViewer3/XMLParser.h
diff options
context:
space:
mode:
authorgit perforce import user <a@b>2016-10-25 12:29:14 -0600
committerSheikh Dawood Abdul Ajees <Sheikh Dawood Abdul Ajees>2016-10-25 18:56:37 -0500
commit3dfe2108cfab31ba3ee5527e217d0d8e99a51162 (patch)
treefa6485c169e50d7415a651bf838f5bcd0fd3bfbd /KaplaDemo/samples/sampleViewer3/XMLParser.h
downloadphysx-3.4-3dfe2108cfab31ba3ee5527e217d0d8e99a51162.tar.xz
physx-3.4-3dfe2108cfab31ba3ee5527e217d0d8e99a51162.zip
Initial commit:
PhysX 3.4.0 Update @ 21294896 APEX 1.4.0 Update @ 21275617 [CL 21300167]
Diffstat (limited to 'KaplaDemo/samples/sampleViewer3/XMLParser.h')
-rw-r--r--KaplaDemo/samples/sampleViewer3/XMLParser.h60
1 files changed, 60 insertions, 0 deletions
diff --git a/KaplaDemo/samples/sampleViewer3/XMLParser.h b/KaplaDemo/samples/sampleViewer3/XMLParser.h
new file mode 100644
index 00000000..e9c3d9bb
--- /dev/null
+++ b/KaplaDemo/samples/sampleViewer3/XMLParser.h
@@ -0,0 +1,60 @@
+#ifndef XML_PARSER_H
+#define XML_PARSER_H
+
+#include <stdio.h>
+#include <string>
+#include <vector>
+#include "FileScanner.h"
+
+#define XML_LINE_MAX 1024
+
+
+// -------------------------------------------------------------------------
+struct XMLVariable {
+ std::string name;
+ std::string value;
+};
+
+// -------------------------------------------------------------------------
+class XMLParser {
+public:
+ // singleton pattern
+ static XMLParser* getInstance();
+ static void destroyInstance();
+
+ bool open(std::string filename);
+ void close();
+ bool endOfFile();
+ bool readNextTag();
+
+ std::string tagName;
+ std::vector<XMLVariable> vars;
+ bool closed;
+ bool endTag;
+
+ FileScanner &getFileScanner() { return fs; }
+
+ // ezm
+ void ezmParseSemantic(int &count);
+ void ezmReadSemanticEntry(int nr);
+
+ std::vector<std::string> ezmAttrs;
+ std::vector<std::string> ezmTypes;
+ std::vector<float> ezmFloats;
+ std::vector<int> ezmInts;
+
+private:
+ XMLParser();
+ ~XMLParser();
+
+ void clearTag();
+ FileScanner fs;
+};
+
+#include <stdio.h>
+
+#define FILE_SCANNER_LINE_MAX 1024
+
+
+
+#endif \ No newline at end of file