コード例 #1
0
ファイル: shader.cpp プロジェクト: Nate-Devv/freeminer
void ShaderSource::processQueue()
{
	/*
		Fetch shaders
	*/
	//NOTE this is only thread safe for ONE consumer thread!
	if(!m_get_shader_queue.empty()){
		GetRequest<std::string, u32, u8, u8>
				request = m_get_shader_queue.pop();

		/**errorstream<<"ShaderSource::processQueue(): "
				<<"got shader request with "
				<<"name=\""<<request.key<<"\""
				<<std::endl;**/

		m_get_shader_queue.pushResult(request,getShaderIdDirect(request.key));
	}
}
コード例 #2
0
ファイル: tile.cpp プロジェクト: jojoa1997/freeminer
void TextureSource::processQueue()
{
	/*
		Fetch textures
	*/
	if(!m_get_texture_queue.empty())
	{
		GetRequest<std::string, u32, u8, u8>
				request = m_get_texture_queue.pop();

		/*infostream<<"TextureSource::processQueue(): "
				<<"got texture request with "
				<<"name=\""<<request.key<<"\""
				<<std::endl;*/

		m_get_texture_queue.pushResult(request,getTextureIdDirect(request.key));
	}
}
コード例 #3
0
ファイル: shader.cpp プロジェクト: 4bstractor/minetest
void ShaderSource::processQueue()
{
	/*
		Fetch shaders
	*/
	if(!m_get_shader_queue.empty()){
		GetRequest<std::string, u32, u8, u8>
				request = m_get_shader_queue.pop();

		/*infostream<<"ShaderSource::processQueue(): "
				<<"got shader request with "
				<<"name=\""<<request.key<<"\""
				<<std::endl;*/

		GetResult<std::string, u32, u8, u8>
				result;
		result.key = request.key;
		result.callers = request.callers;
		result.item = getShaderIdDirect(request.key);

		request.dest->push_back(result);
	}
}