本文整理汇总了C++中XMLNamespaces::getNumNamespaces方法的典型用法代码示例。如果您正苦于以下问题:C++ XMLNamespaces::getNumNamespaces方法的具体用法?C++ XMLNamespaces::getNumNamespaces怎么用?C++ XMLNamespaces::getNumNamespaces使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XMLNamespaces
的用法示例。
在下文中一共展示了XMLNamespaces::getNumNamespaces方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
/** @cond doxygenLibsbmlInternal */
void
CompFlatteningConverter::analyseDocument()
{
XMLNamespaces * ns = mDocument->getSBMLNamespaces()->getNamespaces();
bool required = true;
bool known = true;
bool flattenable = true;
for (int i = 0; i < ns->getNumNamespaces(); i++)
{
std::string package = ns->getPrefix(i);
std::string uri = ns->getURI(i);
// exclude the code namespace
if (uri == SBMLNamespaces::getSBMLNamespaceURI(mDocument->getLevel(),
mDocument->getVersion()))
{
continue;
}
// required flag
if (mDocument->getPackageRequired(uri) == true)
{
required= true;
}
else
{
required = false;
}
// known status
if (mDocument->isPkgURIEnabled(uri) == true)
{
known = true;
// flattenable status
if (static_cast<SBMLDocumentPlugin*>
(mDocument->getPlugin(uri))->isCompFlatteningImplemented() == true)
{
flattenable = true;
}
else
{
flattenable = false;
}
}
else
{
// if we dont know it we ceratinly cannot flatten it !
known = false;
flattenable = false;
}
// add the values into the map
ValueSet values;
values.push_back(required);
values.push_back(known);
values.push_back(flattenable);
mPackageValues.insert(pair<const std::string, ValueSet>(package, values));
}
}