nodes: rewrote and simplified length signaling system
This commit is contained in:
+6
-4
@@ -623,6 +623,8 @@ public:
|
||||
*/
|
||||
static T* ValueToPtr(const QVariant& ptr);
|
||||
|
||||
using InvalidateCacheOptions = QHash<QString, QVariant>;
|
||||
|
||||
/**
|
||||
* @brief Signal all dependent Nodes that anything cached between start_range and end_range is now invalid and
|
||||
* requires re-rendering
|
||||
@@ -632,11 +634,11 @@ public:
|
||||
* the DAG. Even if the time needs to be transformed somehow (e.g. converting media time to sequence time), you can
|
||||
* call this function with transformed time and relay the signal that way.
|
||||
*/
|
||||
virtual void InvalidateCache(const TimeRange& range, const QString& from, int element = -1);
|
||||
virtual void InvalidateCache(const TimeRange& range, const QString& from, int element = -1, InvalidateCacheOptions options = InvalidateCacheOptions());
|
||||
|
||||
void InvalidateCache(const TimeRange& range, const NodeInput& from)
|
||||
void InvalidateCache(const TimeRange& range, const NodeInput& from, const InvalidateCacheOptions &options = InvalidateCacheOptions())
|
||||
{
|
||||
InvalidateCache(range, from.input(), from.element());
|
||||
InvalidateCache(range, from.input(), from.element(), options);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -882,7 +884,7 @@ protected:
|
||||
SetInputProperty(id, QStringLiteral("combo_str"), strings);
|
||||
}
|
||||
|
||||
void SendInvalidateCache(const TimeRange &range);
|
||||
void SendInvalidateCache(const TimeRange &range, const InvalidateCacheOptions &options);
|
||||
|
||||
/**
|
||||
* @brief Don't send cache invalidation signals if `input` is connected or disconnected
|
||||
|
||||
Reference in New Issue
Block a user