当前位置: 首页>>代码示例>>C++>>正文


C++ Archive::WriteInt方法代码示例

本文整理汇总了C++中Archive::WriteInt方法的典型用法代码示例。如果您正苦于以下问题:C++ Archive::WriteInt方法的具体用法?C++ Archive::WriteInt怎么用?C++ Archive::WriteInt使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Archive的用法示例。


在下文中一共展示了Archive::WriteInt方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: Write

void Batch::Write(Archive& ar)
{
	static int BATCH_VERSION=1;

	ar.WriteInt("version",BATCH_VERSION);
	ar.WriteInt("primitive",primitive);    	

	ar.Push("ambient" );ambient.Write (ar);ar.Pop("ambient");
	ar.Push("diffuse" );diffuse.Write (ar);ar.Pop("diffuse");
	ar.Push("specular");specular.Write(ar);ar.Pop("specular");
	ar.Push("emission");emission.Write(ar);ar.Pop("emission");
	ar.WriteFloat("shininess",shininess);

	ar.Push("matrix"   );matrix.Write(ar);ar.Pop("matrix");

	ar.Push("vertices" );ar.WriteSmartPointer(vertices);ar.Pop("vertices");
	ar.Push("normals"  );ar.WriteSmartPointer(normals );ar.Pop("normals");
	ar.Push("colors"   );ar.WriteSmartPointer(colors  );ar.Pop("colors");
	ar.WriteString("texture0",this->texture0?texture0->filename:"");
	ar.Push("texture0coords");ar.WriteSmartPointer(texture0coords);ar.Pop("texture0coords");
	ar.WriteString("texture1",this->texture1?texture1->filename:"");
	ar.Push("texture1coords");ar.WriteSmartPointer(texture1coords);ar.Pop("texture1coords");

	//important: I do not write the bounding box getBox();
}
开发者ID:blackvladimir,项目名称:pyplasm,代码行数:25,代码来源:batch.cpp

示例2: Save

void Batch::Save(std::string filename,std::vector< SmartPointer<Batch> > batches)
{
	Clock t1;
	printf("Saving file %s\n",filename.c_str());
	std::set<std::string> light_textures;
	Archive ar;
	ar.Open(filename,true);
	ar.Push("batches");
	int num=(int)batches.size();
	ar.WriteInt("num",num);
	for (int i=0;i<num;i++) 
	{
		ar.Push("batch");
		ar.WriteSmartPointer(batches[i]);
		ar.Pop("batch");

		//save the light maps
		if (batches[i]->texture1 && light_textures.find(batches[i]->texture1->filename)==light_textures.end())
		{
			light_textures.insert(batches[i]->texture1->filename);
			batches[i]->texture1->save();
		}
	}
	ar.Pop("batches");
	ar.Close();
	//printf("done in %d msec\n",t1.msec());
}
开发者ID:blackvladimir,项目名称:pyplasm,代码行数:27,代码来源:batch.cpp


注:本文中的Archive::WriteInt方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。