Phosphor
Qt6 / Wayland library suite for window-management tools
 
Loading...
Searching...
No Matches
AnimationAppRuleResolver.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2026 fuddlesworth
2// SPDX-License-Identifier: LGPL-2.1-or-later
3
4#pragma once
5
10#include <PhosphorAnimation/phosphoranimation_export.h>
11
12#include <QString>
13
14namespace PhosphorAnimation {
15class CurveRegistry;
16}
17
19
46 const ShaderProfileTree& tree,
47 const QString& windowClass,
48 const QString& eventPath);
49
75PHOSPHORANIMATION_EXPORT int resolveAnimationDuration(const AnimationAppRuleList& rules, const QString& windowClass,
76 const QString& eventPath, int defaultDurationMs);
77
106PHOSPHORANIMATION_EXPORT PhosphorAnimation::Profile
108 const QString& windowClass, const QString& eventPath,
109 const PhosphorAnimation::CurveRegistry& curveRegistry);
110
111} // namespace PhosphorAnimationShaders
Ordered list of AnimationAppRule entries with first-match resolver.
Definition AnimationAppRule.h:140
Hierarchical ShaderProfile storage with walk-up inheritance.
Definition ShaderProfileTree.h:40
Per-event shader effect selection and configuration.
Definition ShaderProfile.h:39
String-id <-> curve factory registry.
Definition CurveRegistry.h:22
Configuration for a single animation event.
Definition Profile.h:33
Definition AnimationAppRule.h:17
PHOSPHORANIMATION_EXPORT int resolveAnimationDuration(const AnimationAppRuleList &rules, const QString &windowClass, const QString &eventPath, int defaultDurationMs)
Duration cascade: window-class timing rule → per-event default.
PHOSPHORANIMATION_EXPORT ShaderProfile resolveAnimationShaderProfile(const AnimationAppRuleList &rules, const ShaderProfileTree &tree, const QString &windowClass, const QString &eventPath)
Cascade resolver: window-class rule → per-event tree.
PHOSPHORANIMATION_EXPORT PhosphorAnimation::Profile resolveAnimationMotionProfile(const AnimationAppRuleList &rules, const PhosphorAnimation::Profile &base, const QString &windowClass, const QString &eventPath, const PhosphorAnimation::CurveRegistry &curveRegistry)
Motion-profile cascade: window-class timing rule → base profile.
Definition AnimatedValue.h:31