Example #1
0
char const * glloader_get_feature_name(int index)
{
	if ((index >= 0) && (index < glloader_num_features()))
	{
		return glloader::gl_features_extractor::instance().feature_name(index);
	}
	else
	{
		return NULL;
	}
}
Example #2
0
	void OGLESRenderEngine::GetCustomAttrib(std::string const & name, void* value)
	{
		if ("VENDOR" == name)
		{
			char const * str = reinterpret_cast<char const *>(glGetString(GL_VENDOR));
			if (str)
			{
				*static_cast<std::string*>(value) = str;
			}
			else
			{
				static_cast<std::string*>(value)->clear();
			}
		}
		if ("RENDERER" == name)
		{
			char const * str = reinterpret_cast<char const *>(glGetString(GL_RENDERER));
			if (str)
			{
				*static_cast<std::string*>(value) = str;
			}
			else
			{
				static_cast<std::string*>(value)->clear();
			}
		}
		if ("VERSION" == name)
		{
			char const * str = reinterpret_cast<char const *>(glGetString(GL_VERSION));
			if (str)
			{
				*static_cast<std::string*>(value) = str;
			}
			else
			{
				static_cast<std::string*>(value)->clear();
			}
		}
		if ("SHADING_LANGUAGE_VERSION" == name)
		{
			char const * str = reinterpret_cast<char const *>(glGetString(GL_SHADING_LANGUAGE_VERSION));
			if (str)
			{
				*static_cast<std::string*>(value) = str;
			}
			else
			{
				static_cast<std::string*>(value)->clear();
			}
		}
		if ("NUM_FEATURES" == name)
		{
			*static_cast<int*>(value) = glloader_num_features();
		}
		if (0 == name.find("FEATURE_NAME_"))
		{
			std::istringstream iss(name.substr(13));
			int n;
			iss >> n;
			*static_cast<std::string*>(value) = glloader_get_feature_name(n);
		}