本文整理汇总了C++中XmlDocument::GetElem方法的典型用法代码示例。如果您正苦于以下问题:C++ XmlDocument::GetElem方法的具体用法?C++ XmlDocument::GetElem怎么用?C++ XmlDocument::GetElem使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类XmlDocument
的用法示例。
在下文中一共展示了XmlDocument::GetElem方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: testEcritureArbreRenduXML
////////////////////////////////////////////////////////////////////////
///
/// @fn void ConfigSceneTest::testEcritureArbreRenduXML()
///
/// Cas de test: Écriture dans un fichier XML.
///
/// @return Aucune.
///
////////////////////////////////////////////////////////////////////////
void ConfigSceneTest::testEcritureArbreRenduXML()
{
arbre->empty();
NoeudAbstrait* n1 = arbre->creerNoeud( RAZER_KEY_MALLET );
NoeudAbstrait* n2 = arbre->creerNoeud( RAZER_KEY_MALLET );
NoeudAbstrait* n3 = arbre->creerNoeud( RAZER_KEY_PORTAL );
NoeudAbstrait* n4 = arbre->creerNoeud( RAZER_KEY_PORTAL );
NoeudAbstrait* n5 = arbre->creerNoeud( RAZER_KEY_PUCK );
NoeudAbstrait* n6 = arbre->creerNoeud( RAZER_KEY_PUCK );
NoeudAbstrait* n7 = arbre->creerNoeud( RAZER_KEY_BOOST );
NoeudComposite* nC1 = new NoeudComposite( RAZER_KEY_GROUP );
NoeudComposite* nC2 = new NoeudComposite( RAZER_KEY_GROUP );
NoeudComposite* nC3 = new NoeudComposite( RAZER_KEY_GROUP );
NoeudComposite* nC4 = new NoeudComposite( RAZER_KEY_GROUP );
arbre->add(n1);
arbre->add(n2);
arbre->add(nC1);
{
nC1->add(n3);
nC1->add(n4);
}
arbre->add(nC2);
{
nC2->add(nC4);
{
nC4->add(n5);
}
nC2->add(n6);
nC2->add(nC3);
{
nC3->add(n7);
}
}
nC4->setRecordable(false);
// Écriture initiale du document
XmlDocument document ;
XMLUtils::CreateDocument(document);
VisiteurEcrireXML v;
arbre->acceptVisitor(v);
XmlElement* elem = v.obtenirRacine();
XMLUtils::LinkEndChild(document,elem);
XMLUtils::SaveDocument(document,"tests_xml\\TestEnregistrement.xml" );
// Lecture manuelle du document et vérification des noeuds lus (et de la non-existence de noeuds qui ne sont pas supposer exister
const XmlNode* elementConfiguration = XMLUtils::FirstChild( document.GetElem(), ConfigScene::ETIQUETTE_ARBRE );
const XmlElement *child, *grantChild, *grantGrantChild;//, *grantGrantGrantChild;
CPPUNIT_ASSERT (elementConfiguration != NULL);
int nodeKey;
{
// n1
child = elementConfiguration->FirstChildElement();
CPPUNIT_ASSERT (child != NULL);
XMLUtils::readAttribute( child, NoeudAbstrait::ETIQUETTE_KEY, nodeKey );
CPPUNIT_ASSERT(nodeKey == RAZER_KEY_MALLET);
// n2
child = child->NextSiblingElement();
CPPUNIT_ASSERT (child != NULL);
XMLUtils::readAttribute( child, NoeudAbstrait::ETIQUETTE_KEY, nodeKey );
CPPUNIT_ASSERT( nodeKey == RAZER_KEY_MALLET );
// nC1
child = child->NextSiblingElement( );
CPPUNIT_ASSERT (child != NULL);
XMLUtils::readAttribute( child, NoeudAbstrait::ETIQUETTE_KEY, nodeKey );
CPPUNIT_ASSERT(nodeKey == RAZER_KEY_GROUP);
{
// n3
grantChild = child->FirstChildElement( );
CPPUNIT_ASSERT (grantChild != NULL);
XMLUtils::readAttribute( grantChild, NoeudAbstrait::ETIQUETTE_KEY, nodeKey );
CPPUNIT_ASSERT(nodeKey == RAZER_KEY_PORTAL);
// n4
grantChild = grantChild->NextSiblingElement();
CPPUNIT_ASSERT (grantChild != NULL);
XMLUtils::readAttribute( grantChild, NoeudAbstrait::ETIQUETTE_KEY, nodeKey );
CPPUNIT_ASSERT( nodeKey == RAZER_KEY_PORTAL );
// n'existe pas
grantChild = grantChild->NextSiblingElement( );
CPPUNIT_ASSERT (grantChild == NULL);
}
// nC2
child = child->NextSiblingElement( );
//.........这里部分代码省略.........