summaryrefslogtreecommitdiff
path: root/src/drumkitparser.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/drumkitparser.cc')
-rw-r--r--src/drumkitparser.cc23
1 files changed, 21 insertions, 2 deletions
diff --git a/src/drumkitparser.cc b/src/drumkitparser.cc
index 1b7ecaf..2af022a 100644
--- a/src/drumkitparser.cc
+++ b/src/drumkitparser.cc
@@ -36,6 +36,10 @@
DrumKitParser::DrumKitParser(const std::string &kitfile, DrumKit &k)
: kit(k)
{
+ in_metadata = false;
+ in_channel = false;
+ in_instrument = false;
+
// instr = NULL;
path = getPath(kitfile);
@@ -54,15 +58,17 @@ DrumKitParser::~DrumKitParser()
}
void DrumKitParser::startTag(std::string name,
- std::map<std::string, std::string> attr)
+ std::map<std::string, std::string> attr,
+ std::string &data)
{
if(name == "drumkit") {
+ /*
if(attr.find("name") != attr.end())
kit._name = attr["name"];
if(attr.find("description") != attr.end())
kit._description = attr["description"];
-
+ */
if(attr.find("version") != attr.end()) {
try {
kit._version = VersionStr(attr["version"]);
@@ -76,6 +82,19 @@ void DrumKitParser::startTag(std::string name,
}
}
+ if(name == "metadata") {
+ in_metadata = true;
+ }
+
+ if(in_metadata) {
+ if(name == "name") {
+ if(data != "") {
+ kit._name = data;
+ printf("TEST!\n");
+ }
+ }
+ }
+
if(name == "channels") {}
if(name == "channel") {