7#include <PhosphorAnimation/phosphoranimation_export.h>
73 return !(*
this == other);
80 QHash<QString, Profile> m_overrides;
81 QStringList m_insertionOrder;
String-id <-> curve factory registry.
Definition CurveRegistry.h:22
Hierarchical profile storage with walk-up inheritance.
Definition ProfileTree.h:25
bool operator==(const ProfileTree &other) const
static ProfileTree fromJson(const QJsonObject &obj, const CurveRegistry ®istry)
Parse from JSON.
bool operator!=(const ProfileTree &other) const
Definition ProfileTree.h:71
ProfileTree & operator=(ProfileTree &&)=default
Profile directOverride(const QString &path) const
Direct override at path without walking parents.
ProfileTree & operator=(const ProfileTree &)=default
QStringList overriddenPaths() const
Every path with a direct override, in insertion order.
Profile resolve(const QString &path) const
Resolve effective Profile for path (walks parents, fills defaults).
bool hasOverride(const QString &path) const
ProfileTree(const ProfileTree &)=default
QJsonObject toJson() const
Serialize the entire tree.
bool clearOverride(const QString &path)
Remove the override at path. Returns true if one was removed.
void setOverride(const QString &path, const Profile &profile)
Install an explicit override. Empty path is rejected (no-op).
Profile baseline() const
The baseline "global" profile — always participates in resolution.
Definition ProfileTree.h:56
ProfileTree(ProfileTree &&)=default
void setBaseline(const Profile &profile)
Configuration for a single animation event.
Definition Profile.h:33
Definition AnimatedValue.h:31