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


C++ DataReader::GetPointer方法代码示例

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


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

示例1:

int VertexLoaderX64::RunVertices(DataReader src, DataReader dst, int count)
{
	m_numLoadedVertices += count;
	return ((int (*)(u8*, u8*, int, const void*))region)(
		src.GetPointer(),
		dst.GetPointer(),
		count,
		memory_base_ptr);
}
开发者ID:feitingen,项目名称:dolphin,代码行数:9,代码来源:VertexLoaderX64.cpp

示例2: RunVertices

int VertexLoader::RunVertices(DataReader src, DataReader dst, int count)
{
	g_vertex_manager_write_ptr = dst.GetPointer();
	g_video_buffer_read_ptr = src.GetPointer();

	m_numLoadedVertices += count;
	m_skippedVertices = 0;

	for (m_counter = count - 1; m_counter >= 0; m_counter--)
	{
		m_tcIndex = 0;
		m_colIndex = 0;
		m_texmtxwrite = m_texmtxread = 0;
		for (int i = 0; i < m_numPipelineStages; i++)
			m_PipelineStages[i](this);
		PRIM_LOG("\n");
	}

	return count - m_skippedVertices;
}
开发者ID:ChuckRozhon,项目名称:dolphin,代码行数:20,代码来源:VertexLoader.cpp

示例3: RunVertices

int VertexLoader::RunVertices(DataReader src, DataReader dst, int count, int primitive)
{
	g_vertex_manager_write_ptr = dst.GetPointer();
	g_video_buffer_read_ptr = src.GetPointer();

	m_numLoadedVertices += count;
	m_skippedVertices = 0;

	// Prepare bounding box
	if (!g_ActiveConfig.backend_info.bSupportsBBox)
		BoundingBox::Prepare(m_vat, primitive, m_VtxDesc, m_native_vtx_decl);

	for (int s = 0; s < count; s++)
	{
		m_tcIndex = 0;
		m_colIndex = 0;
		m_texmtxwrite = m_texmtxread = 0;
		for (int i = 0; i < m_numPipelineStages; i++)
			m_PipelineStages[i](this);
		PRIM_LOG("\n");
	}

	return count - m_skippedVertices;
}
开发者ID:BhaaLseN,项目名称:dolphin,代码行数:24,代码来源:VertexLoader.cpp

示例4: RunVertices

	int RunVertices(DataReader src, DataReader dst, int count) override
	{
		buffer_a.resize(count * a->m_native_vtx_decl.stride + 4);
		buffer_b.resize(count * b->m_native_vtx_decl.stride + 4);

		int count_a = a->RunVertices(src, DataReader(buffer_a.data(), buffer_a.data()+buffer_a.size()), count);
		int count_b = b->RunVertices(src, DataReader(buffer_b.data(), buffer_b.data()+buffer_b.size()), count);

		if (count_a != count_b)
			ERROR_LOG(VIDEO, "The two vertex loaders have loaded a different amount of vertices (a: %d, b: %d).", count_a, count_b);

		if (memcmp(buffer_a.data(), buffer_b.data(), std::min(count_a, count_b) * m_native_vtx_decl.stride))
			ERROR_LOG(VIDEO, "The two vertex loaders have loaded different data "
			                 "(guru meditation 0x%016" PRIx64 ", 0x%08x, 0x%08x, 0x%08x).",
			                 m_VtxDesc.Hex, m_vat.g0.Hex, m_vat.g1.Hex, m_vat.g2.Hex);

		memcpy(dst.GetPointer(), buffer_a.data(), count_a * m_native_vtx_decl.stride);
		m_numLoadedVertices += count;
		return count_a;
	}
开发者ID:alexfarb,项目名称:dolphin,代码行数:20,代码来源:VertexLoaderBase.cpp

示例5:

int VertexLoaderX64::RunVertices(DataReader src, DataReader dst, int count, int primitive)
{
	m_numLoadedVertices += count;
	return ((int (*)(u8* src, u8* dst, int count))region)(src.GetPointer(), dst.GetPointer(), count);
}
开发者ID:ModereteCoder,项目名称:dolphin,代码行数:5,代码来源:VertexLoaderX64.cpp


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