コード例 #1
0
ファイル: Puppet.cpp プロジェクト: soundofjw/Monocle-Engine
	void Puppet::SaveParts(TiXmlElement *element, Entity *fromEntity)
	{
		XMLFileNode xmlFileNode(element);
		if (fromEntity->GetParent() != NULL)
			fromEntity->Save(&xmlFileNode);

		const std::list<Entity*> *children = fromEntity->GetChildren();
		for (std::list<Entity*>::const_iterator i = children->begin(); i != children->end(); ++i)
		{
			Part *part = dynamic_cast<Part*>(*i);
			if (part)
			{
				TiXmlElement xmlPart("Part");
				SaveParts(&xmlPart, part);
				xmlFileNode.element->InsertEndChild(xmlPart);
			}
		}
	}
コード例 #2
0
ファイル: Puppet.cpp プロジェクト: amackworth/Monocle-Engine
	void Puppet::SavePart(TiXmlElement *parentElement, Part *part)
	{
		printf("saving part [%s]\n", part->GetName().c_str());

		TiXmlElement xmlPart("Part");
		XMLFileNode xmlFileNode(&xmlPart);

		if (part)
		{
			part->Save(&xmlFileNode);
		}

		for (std::list<Part*>::iterator i = part->parts.begin(); i != part->parts.end(); ++i)
		{
			Part *iterPart = (*i);
			if (iterPart)
			{
				printf ("   calling save on subpart [%s]\n", iterPart->GetName().c_str());

				SavePart(&xmlPart, iterPart);
			}
		}
		parentElement->InsertEndChild(xmlPart);
	}