JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
Loading...
Searching...
No Matches
hmi::AssetPaths Class Reference

Résout des noms d'assets logiques vers des chemins de fichiers, dans un dossier donné. More...

#include <AssetPaths.h>

Public Member Functions

 AssetPaths (std::filesystem::path directory)
 Construit un résolveur pour un dossier d'assets donné.
std::optional< std::filesystem::path > resolve (const std::string &fileName) const
 Résout un nom de fichier logique vers un chemin existant dans le dossier d'assets.
const std::filesystem::path & directory () const noexcept

Private Attributes

std::filesystem::path _directory

Detailed Description

Résout des noms d'assets logiques vers des chemins de fichiers, dans un dossier donné.

Logique pure (aucune dépendance fenêtre/GPU/Qt), testable en isolation (EX-NFR-010) : le dossier est injecté au constructeur (comme hmi::Localization), jamais résolu en dur ici — les appelants combinent typiquement hmi::executableDirectory() / "Assets" (patron Levels/ Localization). Un asset absent ou illisible est un cas attendu (EX-NFR-040) : resolve renvoie std::nullopt plutôt que de planter, pour permettre un repli (ex. atlas procédural).

Constructor & Destructor Documentation

◆ AssetPaths()

hmi::AssetPaths::AssetPaths ( std::filesystem::path directory)
explicit

Construit un résolveur pour un dossier d'assets donné.

Parameters
directoryDossier racine des assets (n'a pas besoin d'exister à la construction).

Member Function Documentation

◆ directory()

const std::filesystem::path & hmi::AssetPaths::directory ( ) const
inlinenodiscardnoexcept
Returns
Le dossier d'assets configuré.

◆ resolve()

std::optional< std::filesystem::path > hmi::AssetPaths::resolve ( const std::string & fileName) const
nodiscard

Résout un nom de fichier logique vers un chemin existant dans le dossier d'assets.

Parameters
fileNameNom du fichier, relatif au dossier d'assets (ex. « atlas.png »).
Returns
Le chemin complet si le fichier existe et est un fichier régulier ; std::nullopt sinon (dossier ou fichier absent, illisible, ou chemin désignant autre chose).

Member Data Documentation

◆ _directory

std::filesystem::path hmi::AssetPaths::_directory
private

The documentation for this class was generated from the following files:
  • /home/runner/work/JustAnotherDnDGame/JustAnotherDnDGame/Source/HMI/Graphics/AssetPaths.h
  • /home/runner/work/JustAnotherDnDGame/JustAnotherDnDGame/Source/HMI/Graphics/AssetPaths.cpp