/////////////////////////////////////////////////////////////
/// Cherche un fichier dans les r�pertoires de recherche
///
/// \param Filename : Chemin du media
///
/// \return Chemin complet du media, exception si non trouv�
///
////////////////////////////////////////////////////////////
CFile CMediaManager::FindMedia(const CFile& Filename) const
{
	// Parcours de la liste des chemins de recherche
	for (std::set<std::string>::const_iterator i = m_Paths.begin();
			i != m_Paths.end(); ++i)
			{
		CFile RetFile = *i + Filename.Fullname();
		if (RetFile.Exists())
			return RetFile;
	}

	//// DEBUG
	Logger::Log() << "===== PATH : \n";
	for (std::set<std::string>::const_iterator i = m_Paths.begin();
			i != m_Paths.end(); ++i)
			{
		Logger::Log() << "  * " << *i + Filename.Fullname() << "\n";
	}

	// Si le fichier est introuvable, on lance une exception
	throw CLoadingFailed(Filename.Fullname(),
			"Fichier introuvable dans les repertoires de recherche");
}