Files
Webcam/include/engine/core/renderer_nml.cpp

47 lines
1.0 KiB
C++

/* -----------------------------------------------------------------------------
GSFramework
Copyright 2001-2013 Emmanuel Julien. All Rights Reserved.
----------------------------------------------------------------------------- */
#include "core/renderer.h"
using namespace GS::Render;
using GS::NML::Tag;
//------------------------------------------------------------------------------
bool Renderer::FromMetaTag(Tag &tag)
{
if (tag.name != GetName())
return false; // Incorrect tag.
registry.Clear();
NMLTagForeach(pt, tag)
{
if (pt->name == "Version")
;
else if (pt->name == "Registry")
{
NMLTagForeach(child, *pt)
registry.AddRoot(child->Clone());
}
}
return true;
}
Tag *Renderer::AsMetaTag()
{
Tag *root = new Tag(GetName());
root->AddChild("Version", GetVersion());
Tag *tag_registry = root->AddChild("Registry");
NMLFileForeach(child, registry)
tag_registry->AddChild(child->Clone());
return root;
}
//------------------------------------------------------------------------------