8#include <PhosphorAnimation/phosphoranimation_export.h>
13#include <QtCore/QHash>
14#include <QtCore/QObject>
15#include <QtCore/QString>
16#include <QtCore/QStringList>
23class PhosphorProfileRegistry;
35 const QString& ownerTag = {}, QObject* parent =
nullptr);
42 const QStringList& directories,
LiveReload liveReload = LiveReload::Off,
67 std::unique_ptr<Sink> m_sink;
68 std::unique_ptr<PhosphorFsLoader::DirectoryLoader> m_loader;
String-id <-> curve factory registry.
Definition CurveRegistry.h:22
Registry mapping profile path strings to Profile values.
Definition PhosphorProfileRegistry.h:23
Scans JSON profile-definition files and registers them with PhosphorProfileRegistry.
Definition ProfileLoader.h:29
ProfileLoader(PhosphorProfileRegistry ®istry, CurveRegistry &curveRegistry, const QString &ownerTag={}, QObject *parent=nullptr)
If ownerTag is empty, a unique per-instance tag is generated.
~ProfileLoader() override
bool hasPath(const QString &path) const
O(1) membership check — prefer over entries() on hot paths.
int loadFromDirectories(const QStringList &directories, LiveReload liveReload=LiveReload::Off, PhosphorFsLoader::RegistrationOrder order=PhosphorFsLoader::RegistrationOrder::LowestPriorityFirst)
Scan multiple directories in caller-declared priority order.
int registeredCount() const
int loadLibraryBuiltins(LiveReload liveReload=LiveReload::Off)
QList< Entry > entries() const
int loadFromDirectory(const QString &directory, LiveReload liveReload=LiveReload::Off)
Definition AnimatedValue.h:31
RegistrationOrder
Caller's declared priority direction for registerDirectories / setDirectories input.
Definition WatchedDirectorySet.h:58
@ LowestPriorityFirst
[sys-lowest, ..., sys-highest, user] — the canonical strategy view.
LiveReload
Opt-in policy for directory watching.
Definition WatchedDirectorySet.h:34
Definition ProfileLoader.h:52
QString sourcePath
Definition ProfileLoader.h:54
QString systemSourcePath
Definition ProfileLoader.h:55
QString path
Definition ProfileLoader.h:53