本文整理汇总了C++中nlmisc::IStream::xmlPop方法的典型用法代码示例。如果您正苦于以下问题:C++ IStream::xmlPop方法的具体用法?C++ IStream::xmlPop怎么用?C++ IStream::xmlPop使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类nlmisc::IStream
的用法示例。
在下文中一共展示了IStream::xmlPop方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: serial
void CPrimitiveBlock::serial (NLMISC::IStream &s)
{
s.xmlPush ("PRIMITIVE_BLOCK");
// Serial checks
s.serialCheck ((uint32)'KBRP');
// Serial the version
(void)s.serialVersion (0);
s.xmlPush ("PRIMITIVES");
s.serialCont (Primitives);
s.xmlPop ();
s.xmlPop ();
}
示例2: serial
// ---------------------------------------------------------------------------
void CZoneRegion::serial (NLMISC::IStream &f)
{
f.xmlPush ("LAND");
sint32 version = f.serialVersion (1);
f.serialCheck ((uint32)'DNAL');
f.xmlSerial (_MinX, "MIN_X");
f.xmlSerial (_MinY, "MIN_Y");
f.xmlSerial (_MaxX, "MAX_X");
f.xmlSerial (_MaxY, "MAX_Y");
if (version == 1)
{
f.serialCont (_Zones);
}
if (version == 0)
{
std::vector<SZoneUnit> vZonesTmp;
f.serialCont (vZonesTmp);
_Zones.resize (vZonesTmp.size());
for (uint32 i = 0; i < vZonesTmp.size(); ++i)
_Zones[i] = vZonesTmp[i];
}
f.xmlPop ();
}
示例3: serial
//***********************************************************************************************
void CParticleWorkspace::serial(NLMISC::IStream &f) throw(NLMISC::EStream)
{
f.xmlPush("PARTICLE_WORKSPACE");
f.serialVersion(0);
f.xmlSerial(_Name, "NAME");
f.xmlPush("PS_LIST");
uint32 numNodes = (uint32)_Nodes.size();
// TODO : avoid to store the number of nodes
f.xmlSerial(numNodes, "NUM_NODES");
if (f.isReading())
{
for(uint k = 0; k < numNodes; ++k)
{
_Nodes.push_back(new CNode());
_Nodes.back()->init(this);
f.serial(*_Nodes.back());
}
}
else
{
for(uint k = 0; k < numNodes; ++k)
{
f.serial(*_Nodes[k]);
}
}
f.xmlPop();
f.xmlPop();
}
示例4: serial
void CZoneEdge::serial (NLMISC::IStream& s)
{
// Serial the version
/*sint ver =*/ s.serialVersion (0);
s.xmlPush ("VERTICES");
s.serialCont (_TheEdge);
s.xmlPop ();
s.xmlPush ("VERTICES_ID");
s.serialCont (_Id);
s.xmlPop ();
s.xmlSerial (_Rotation, "ROTATION");
s.xmlSerial (_OffsetX, _OffsetY, "OFFSET");
}
示例5: serial
void CFormBodyEltAtom::serial( NLMISC::IStream& s)
{
s.xmlPushBegin( "Atom" );
s.xmlSetAttrib( "Name" );
s.serial( sxname );
s.xmlSetAttrib( "Value" );
s.serial( sxvalue );
s.xmlPushEnd();
s.xmlPop();
}
示例6:
//***********************************************************************************************
void CParticleWorkspace::CNode::serial(NLMISC::IStream &f)
{
nlassert(_WS);
f.xmlPush("PROJECT_FILE");
sint version = f.serialVersion(2);
f.xmlSerial(_RelativePath, "RELATIVE_PATH");
if (version >= 1)
{
f.xmlSerial(_TriggerAnim, "TRIGGER_ANIMATION");
}
if (version >= 2)
{
f.xmlSerial(_ParentSkelName, "PARENT_SKEL_NAME");
f.xmlSerial(_ParentBoneName, "PARENT_BONE_NAME");
}
f.xmlPop();
}
示例7:
/*
* Serial method
*/
void CDatabaseState::serial(NLMISC::IStream& s)
{
s.xmlPush("database_state");
s.serialCheck((uint32)'DBST');
uint version = s.serialVersion(0);
s.xmlPush("name");
s.serial(Name);
s.xmlPop();
s.xmlPush("id");
s.serial(Id);
s.xmlPop();
s.xmlPush("lastupdateid");
s.serial(LastUpdateId);
s.xmlPop();
s.xmlPush("currentindex");
s.serial(CurrentIndex);
s.xmlPop();
s.xmlPush("endtimestamp");
if (s.isReading())
{
std::string ts;
s.serial(ts);
EndTimestamp.fromString(ts.c_str());
}
else
{
std::string ts = EndTimestamp.toString();
s.serial(ts);
}
s.xmlPop();
s.xmlPop();
}