Aller au contenu
weSkelDOCUMENTATION
Documentation/Référence API/FSEntry

FSEntry

Donnée hors plug destinée à un consommateur de function sets.

ClassSVDSDK

FSEntry transporte une donnée qui ne passe pas par un plug Maya. Sa construction n’exécute aucune opération de function set et ne modifie pas la scène.

Generic[ValueT]FSEntry
from weSkel.src.core.props.svd import FSEntry

À exécuter dans Maya avec weSkel disponible. Les types om.* désignent maya.api.OpenMaya.

Élément Valeur
Classe FSEntry
Module weSkel.src.core.props.svd
Parent direct Generic[ValueT]
Nature dataclass; frozen=True
Propriétés issues des specs Aucune.

Cette fiche documente les membres définis par cette classe. Les mécanismes Python standard et les membres natifs hérités sont exclus des compteurs.

FSEntry(name: str, value: Optional[ValueT] = None, encode: Optional[Callable[[Any], Any]] = None, decode: Optional[Callable[[Any], Any]] = None) → FSEntry

Paramètre Type Défaut
name str obligatoire
value Optional[ValueT] None
encode Optional[Callable[[Any], Any]] None
decode Optional[Callable[[Any], Any]] None

Seul name est obligatoire. Les trois autres champs valent None par défaut. FSEntry[float] peut préciser le type attendu dans un éditeur ; ce paramètre générique n’effectue pas de conversion.

Champs déclarés ; une dataclass frozen empêche la réaffectation, pas toutes les mutations imbriquées.

Champ Type retourné Accès Rôle
name str L Identifiant de l’opération ou de la propriété hors plug.
value Optional[ValueT] L Valeur destinée au consommateur de cette entrée.
encode Optional[Callable[[Any], Any]] L Callable d’encodage facultatif, stocké sans exécution automatique.
decode Optional[Callable[[Any], Any]] L Callable de décodage facultatif, stocké sans exécution automatique.

entry.nameLecture seule

Type Contrat
str Identifiant de l’opération ou de la propriété hors plug.

entry.valueLecture seule

Type Contrat
Optional[ValueT] Valeur destinée au consommateur de cette entrée.

entry.encodeLecture seule

Type Contrat
Optional[Callable[[Any], Any]] Callable d’encodage facultatif, stocké sans exécution automatique.

entry.decodeLecture seule

Type Contrat
Optional[Callable[[Any], Any]] Callable de décodage facultatif, stocké sans exécution automatique.

Méthodes propres.

Méthode Type retourné Rôle
as_dict Dict[str, Any] Produit un dictionnaire en remplaçant les deux callables par None.

entry.as_dict()Méthode

Retour Contrat
Dict[str, Any] Produit un dictionnaire en remplaçant les deux callables par None.

Utilise la conversion dataclass, qui copie récursivement les conteneurs usuels et peut copier d’autres objets. Les callables encode et decode ne sont pas appelés : leurs champs sont mis à None. Le contenu arbitraire de value n’est pas garanti sérialisable en JSON ; une donnée Maya peut aussi faire échouer la copie.

La dataclass est frozen, mais sa valeur peut rester mutable. ValueT est une information de typage, sans validation de type automatique à l’exécution.

Les noms reconnus et les valeurs acceptées dépendent du consommateur. Une entrée seule n’applique rien et as_dict() n’exécute pas les fonctions d’encodage ou de décodage.

from weSkel.src.core.props.svd import FSEntry
entry = FSEntry(name="example", value={"amount": 2.0},
encode=lambda value: {"encoded": value})
data = entry.as_dict()
assert data == {"name": "example", "value": {"amount": 2.0},
"encode": None, "decode": None}
data["value"]["amount"] = 9.0
assert entry.value["amount"] == 2.0
print("FSEntry: PASS")

Résultat attendu : FSEntry: PASS. Aucune modification de scène.

Voir aussi : SVDView · SVDPlug · SVDSnapshot.