本文整理汇总了C++中Archive::IsStoring方法的典型用法代码示例。如果您正苦于以下问题:C++ Archive::IsStoring方法的具体用法?C++ Archive::IsStoring怎么用?C++ Archive::IsStoring使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Archive
的用法示例。
在下文中一共展示了Archive::IsStoring方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
void Grafkit::SceneLoader::SceneLoaderHelper::PersistEntities(Archive &ar, IResourceManager * const & resman)
{
UINT entityCount = 0;
if (ar.IsStoring())
entityCount = m_entities.size();
PERSIST_FIELD(ar, entityCount);
for (UINT i = 0; i < entityCount; ++i) {
Entity3D* entity = nullptr;
if (ar.IsStoring())
entity = m_entities[i];
PERSIST_OBJECT(ar, entity);
if (!ar.IsStoring()) {
m_entities.push_back(entity);
}
}
}
示例2: EX
void Grafkit::SceneLoader::SceneLoaderHelper::Persist(Archive & ar, IResourceManager * const & resman)
{
try {
// --- persist scene
PERSIST_REFOBJECT(ar, m_scene);
if (!ar.IsStoring() && m_scene.Invalid())
throw new EX(SceneLoadException);
PersistMaterials(ar, resman);
PersistEntities(ar, resman);
PersistActors(ar, resman);
PersistAnimations(ar, resman);
PersistKeymap(ar, m_materials_to_meshes);
PersistKeymap(ar, m_entities_to_actors);
PersistKeymap(ar, m_actor_to_actor);
PersistKeymap(ar, m_animation_to_actor);
PersistKeymap(ar, m_animation_to_entity);
}
catch (int i) {
return;
}
}