本文整理汇总了C++中nlmisc::IStream::serialCheck方法的典型用法代码示例。如果您正苦于以下问题:C++ IStream::serialCheck方法的具体用法?C++ IStream::serialCheck怎么用?C++ IStream::serialCheck使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类nlmisc::IStream
的用法示例。
在下文中一共展示了IStream::serialCheck方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: serial
// ***************************************************************************
void CAnimationSet::serial (NLMISC::IStream& f)
{
// serial not possible if header optimisation enabled
nlassert(!_AnimHeaderOptimisation);
// Serial an header
f.serialCheck ((uint32)'_LEN');
f.serialCheck ((uint32)'MINA');
f.serialCheck ((uint32)'TES_');
// Serial a version
uint ver= f.serialVersion (1);
// Serial the class
f.serialContPtr (_Animation);
f.serialContPtr (_SkeletonWeight);
f.serialCont (_AnimationName);
f.serialCont (_SkeletonWeightName);
f.serialCont(_ChannelIdByName);
f.serialCont(_AnimationIdByName);
f.serialCont(_SkeletonWeightIdByName);
if(ver>=1)
f.serialCont(_ChannelName);
else
buildChannelNameFromMap();
}
示例2: if
// ***************************************************************************
void CVegetableShape::serial(NLMISC::IStream &f)
{
/*
Version 1:
- BestSidedPreComputeLighting
*/
sint ver= f.serialVersion(1);
f.serialCheck((uint32)'_LEN');
f.serialCheck((uint32)'GEV_');
f.serialCheck((uint32)'BATE');
f.serialCheck((uint32)'__EL');
f.serial(Lighted);
f.serial(DoubleSided);
f.serial(PreComputeLighting);
f.serial(AlphaBlend);
f.serialEnum(BendCenterMode);
f.serial(VB);
f.serialCont(TriangleIndices);
if(ver>=1)
f.serial(BestSidedPreComputeLighting);
else if(f.isReading())
BestSidedPreComputeLighting= false;
// if reading
if(f.isReading())
{
// prepare for instanciation
InstanceVertices.resize(VB.getNumVertices());
}
}
示例3: 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 ();
}
示例4: serial
// ***************************************************************************
void CShapeStream::serial(NLMISC::IStream &f) throw(NLMISC::EStream)
{
// First, serial an header or checking if it is correct
f.serialCheck (NELID("PAHS"));
// Then, serial the shape
f.serialPolyPtr (_Shape);
// Ok, it's done
}
示例5:
/*
* Serial Mapper
*/
void CPDStringMapper::serial(NLMISC::IStream& f)
{
f.serialCheck((uint32)'PDSM');
uint version = f.serialVersion(0);
f.serialCont(_StringMap);
if (f.isReading())
{
buildIdMap();
}
}
示例6: 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 ();
}
示例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();
}
示例8: serial
void CAnimation::serial (NLMISC::IStream& f)
{
// cannot save if anim header compressed
nlassert(_IdByChannelId.empty());
// Serial a header
f.serialCheck (NELID("_LEN"));
f.serialCheck (NELID("MINA"));
// Serial a version
sint version=f.serialVersion (2);
// Serial the name
f.serial (_Name);
// Serial the name/id map
f.serialCont(_IdByName);
// Serial the vector
f.serialContPolyPtr (_TrackVector);
// Serial the min end time
if (version>=1)
{
f.serial (_MinEndTime);
}
// Serial the SSS shapes
if (version>=2)
{
f.serialCont (_SSSShapes);
}
// TestYoyo
//nlinfo("ANIMYOYO: Anim NumTracks: %d", _TrackVector.size());
}