j'adapte mon ressource manager grâce au bouquin dispo sur la
SFMLJ'utilise en plus le code disponible sur le
WIKI pour géré facilement l'ouverture de fichier venant d'archive compressé.
Avant d'aller plus loin , et comme c'est la première fois que j'utilise les "stream" , je me pose la question sur la visibilité de mon PhysFsStream stream, il sera détruit dès lors que je sort du scope, qu'en est il de la ressource chargé ? dans le cadre de texture , je ne risque pas de me retrouvé avec un carré blanc en procédant ainsi avec les stream ?
Merci.
template <typename T, typename ID>
void resource<T, ID>::load(ID identifier, const std::string& filename)
{
std::unique_ptr<T> resource(new T());
if (!resource->loadFromFile(filename)) // try to load file directly
{
// try to extract inside physFS
PhysFsStream stream;
if(!stream.open(filename)) // try to load from archive
{
throw std::runtime_error("resource::load - Failed to load " + filename);
}
else
{
resource->loadFromStream(stream)
}
}
}