// Copyright (c) 2023 Dominic Masters // // This software is released under the MIT License. // https://opensource.org/licenses/MIT #include "VNSceneParser.hpp" using namespace Dawn; std::vector VNSceneParser::getRequiredAttributes() { return { }; } std::map VNSceneParser::getOptionalAttributes() { return { }; } int32_t VNSceneParser::onParse( Xml *node, std::map values, struct VNScene *out, std::string *error ) { // int32_t ret; auto itChildren = node->children.begin(); while(itChildren != node->children.end()) { Xml *child = *itChildren; // Parse event(s) if(child->node == "item") { struct VNSceneItem item; ret = (VNSceneItemParser()).parse(child, &item, error); if(ret != 0) return ret; out->items.push_back(item); } else if(child->node == "events") { ret = (VNSceneEventsParser()).parse(child, &out->events, error); if(ret != 0) return ret; } else { // Unknown node *error = "Unknown node '" + child->node + "' in "; return -1; } itChildren++; } return 0; }