Exemple #1
0
BOOL COptions::ReadSpeedLimits(TiXmlElement *pXML)
{
	const char* names[] = { "Download", "Upload" };

	for (int i = 0; i < 2; i++)
	{
		for (TiXmlElement* pSpeedLimits = pXML->FirstChildElement("SpeedLimits"); pSpeedLimits; pSpeedLimits = pSpeedLimits->NextSiblingElement("SpeedLimits"))
		{
			for (TiXmlElement* pLimit = pSpeedLimits->FirstChildElement(names[i]); pLimit; pLimit = pLimit->NextSiblingElement(names[i]))
			{
				for (TiXmlElement* pRule = pLimit->FirstChildElement("Rule"); pRule; pRule = pRule->NextSiblingElement("Rule"))
				{
					CSpeedLimit limit;
					if (!limit.Load(pRule))
						continue;

					if (m_sSpeedLimits[i].size() < 20000)
						m_sSpeedLimits[i].push_back(limit);
				}
			}
		}
	}

	return TRUE;
}