63 [[nodiscard]]
bool ok() const noexcept {
152 int frameSheetIndex);
Clip d'animation en tant que donnée, et jeu de clips nommés (LOT-46).
Composant d'état d'animation par séquence d'images (données pures).
Contrat de dimensions par famille d'assets graphiques et validation pure (EX-REN-007).
Brique de lecture JSON partagée par tous les catalogues (EX-CNT-012).
Composant d'apparence 2D d'une entité (données pures).
Ensemble nommé de clips, adressable par nom — l'unité que décrit un fichier nom-asset....
Definition AnimationClip.h:61
Lecture, validation et traduction en région de texture du format nom-asset.anim.json.
Definition AnimationCatalog.h:76
static constexpr float DEFAULT_FRAME_DURATION_SECONDS
Durée d'image par défaut (secondes), utilisée quand un clip omet « frameDuration ».
Definition AnimationCatalog.h:83
static constexpr int FORMAT_VERSION
Version du format écrite dans le fichier, et plus élevée qui soit lue (voir hmi::SkinCatalog::FORMAT_...
Definition AnimationCatalog.h:80
static std::string descriptorFileName(std::string_view assetFileName)
Nom du fichier de description associé à un asset : même nom, extension remplacée.
Definition AnimationCatalog.cpp:196
static AnimationDescriptionResult loadFromString(std::string_view json)
Lit une description depuis une chaîne JSON.
Definition AnimationCatalog.cpp:132
static AnimationDescriptionResult loadFromFile(const std::filesystem::path &path)
Lit une description depuis un fichier.
Definition AnimationCatalog.cpp:192
static AnimationDescriptionResult fromDocument(const core::JsonDocument &document)
Construit le résultat depuis l'enveloppe déjà lue par core::readJsonObject.
Definition AnimationCatalog.cpp:136
static core::AtlasRegion frameRegion(const AnimationDescription &description, int frameSheetIndex)
Région (en pixels) d'une image de la spritesheet, par son indice.
Definition AnimationCatalog.cpp:236
static core::AtlasRegion currentFrameRegion(const AnimationDescription &description, const core::Animation &animation)
Région de l'image courante d'une animation en cours, d'après son état (core::Animation) et la descrip...
Definition AnimationCatalog.cpp:244
static AssetValidation validateAgainstTexture(const AnimationDescription &description, const std::string &fileName, int textureWidth, int textureHeight)
Valide la cohérence entre la description et les dimensions décodées du PNG.
Definition AnimationCatalog.cpp:200
Definition AudioEngine.cpp:15
@ UnsupportedVersion
Numéro de version supérieur à SoundCatalog::FORMAT_VERSION.
Definition SoundCatalog.h:30
@ FileNotFound
Fichier absent. Cas légitime (catalogue vide), pas une anomalie.
Definition SoundCatalog.h:28
@ None
Pas d'erreur.
Definition SoundCatalog.h:27
@ MalformedStructure
Structure inattendue (« sons » absent, entrée invalide…).
Definition SoundCatalog.h:31
@ ParseError
JSON malformé, ou racine qui n'est pas un objet.
Definition SoundCatalog.h:29
AnimationCatalogError
Catégorie d'échec de lecture d'une description d'animation (même esprit que hmi::SkinCatalogError/cor...
Definition AnimationCatalog.h:29
@ IncoherentFrameSize
Taille d'image déclarée incohérente avec les dimensions du PNG.
Definition AnimationCatalog.h:35
@ None
Pas d'erreur.
Definition AnimationCatalog.h:30
État d'animation courant d'une entité : quel jeu de clips, quel clip, quelle image,...
Definition Animation.h:32
Région source dans l'atlas de textures, en pixels (origine haut-gauche).
Definition Sprite.h:22
Résultat de la lecture de l'enveloppe commune d'un document JSON.
Definition JsonDocument.h:53
Résultat d'une lecture de description : soit une AnimationDescription, soit une erreur décrite.
Definition AnimationCatalog.h:57
std::optional< AnimationDescription > description
Definition AnimationCatalog.h:58
std::string error
Definition AnimationCatalog.h:59
bool ok() const noexcept
Definition AnimationCatalog.h:63
AnimationCatalogError errorCode
Definition AnimationCatalog.h:60
Description d'animation d'un asset : disposition de sa spritesheet et ses clips.
Definition AnimationCatalog.h:44
int frameWidth
Largeur d'une image, en pixels.
Definition AnimationCatalog.h:46
core::ClipSet clips
Clips décrits par le fichier, adressables par nom (core::ClipSet, LOT-46 TACHE-01).
Definition AnimationCatalog.h:50
int frameHeight
Hauteur d'une image, en pixels.
Definition AnimationCatalog.h:48
Verdict de validation d'un asset, avec son message exploitable.
Definition AssetContract.h:65