本文整理汇总了C++中XMLNode::GetChildrenCount方法的典型用法代码示例。如果您正苦于以下问题:C++ XMLNode::GetChildrenCount方法的具体用法?C++ XMLNode::GetChildrenCount怎么用?C++ XMLNode::GetChildrenCount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XMLNode
的用法示例。
在下文中一共展示了XMLNode::GetChildrenCount方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ResolveSubEntities
void ConfigAdapter::ResolveSubEntities(MutableMapInterface **maps, XMLNode *datamap)
{
int entitymapnbr = datamap->GetChildrenCount("entitymap");
for (int i = 0; i < entitymapnbr; i++)
{
XMLNode *entitymap = datamap->GetChild("entitymap", i);
int subentitynbr = entitymap->GetChildrenCount("subentity");
for (int j = 0; j < subentitynbr; j++)
{
CreateSubEntity(maps, i, entitymap->GetChild("subentity", j));
}
}
}
示例2: LoadFromFile
FontRenderer* FontRenderer::LoadFromFile(const char *path, SpriteBatch *spriteBatch)
{
assert(spriteBatch != NULL);
FontLetter texLetters[256];
XMLNode *xmlDoc = XMLLoader::LoadFromFile(path);
if (xmlDoc == NULL)
return NULL;
std::string bmpFilename = xmlDoc->GetAttribAsString("bitmap");
if (bmpFilename.empty())
return NULL;
Path _path(path);
Texture *tex = LoadFontBitmap(_path.GetPath() + bmpFilename);
if (tex == NULL)
return NULL;
if (xmlDoc->GetName() != "alphabet")
{
delete xmlDoc;
return NULL;
}
for (uint32_t i = 0; i < xmlDoc->GetChildrenCount(); i++)
{
std::string letter = xmlDoc[i].GetAttribAsString("letter");
std::string bounds = xmlDoc[i].GetAttribAsString("bounds");
sm::Rect<int> boundsValues;
if (!ParseBounds(bounds, boundsValues))
return NULL;
texLetters[letter[0]].Size = sm::Point<int>(boundsValues.Width, boundsValues.Height);
texLetters[letter[0]].Coords = TexPart(tex, boundsValues);
}
FontRenderer *fontRenderer = new FontRenderer();
fontRenderer->m_spriteBatch = spriteBatch;
if (fontRenderer != NULL)
{
memcpy(fontRenderer ->texLetters, texLetters, sizeof(FontLetter) * 256);
}
return fontRenderer;
}