remove shifts, operations, and make caches node-agnostic

This commit is contained in:
itsmattkc
2022-05-16 19:53:38 -07:00
parent 70a4f7e749
commit e0bb31b199
26 changed files with 124 additions and 708 deletions
+16 -20
View File
@@ -39,6 +39,8 @@
#include "node/inputimmediate.h"
#include "node/param.h"
#include "render/audioparams.h"
#include "render/audioplaybackcache.h"
#include "render/framehashcache.h"
#include "render/job/generatejob.h"
#include "render/job/samplejob.h"
#include "render/job/shaderjob.h"
@@ -219,6 +221,16 @@ public:
return HasInputWithID(id);
}
FrameHashCache* video_frame_cache() const
{
return video_cache_;
}
AudioPlaybackCache* audio_playback_cache() const
{
return audio_cache_;
}
struct Position
{
Position(const QPointF &p = QPointF(0, 0), bool e = false)
@@ -798,19 +810,6 @@ public:
InvalidateCache(range, from.input(), from.element(), options);
}
/**
* @brief Limits cache invalidation temporarily
*
* If you intend to do a number of operations in quick succession, you can optimize it by running
* this function with EndOperation().
*/
virtual void BeginOperation();
/**
* @brief Stops limiting cache invalidation and flushes changes
*/
virtual void EndOperation();
/**
* @brief Adjusts time that should be sent to nodes connected to certain inputs.
*
@@ -1030,11 +1029,6 @@ protected:
*/
void IgnoreInvalidationsFrom(const QString &input_id);
int GetOperationStack() const
{
return operation_stack_;
}
enum GizmoScaleHandles {
kGizmoScaleTopLeft,
kGizmoScaleTopCenter,
@@ -1392,8 +1386,6 @@ private:
Folder* folder_;
int operation_stack_;
bool cache_result_;
QMap<InputElementPair, ValueHint> value_hints_;
@@ -1406,6 +1398,10 @@ private:
QString effect_input_;
FrameHashCache *video_cache_;
AudioPlaybackCache *audio_cache_;
private slots:
/**
* @brief Slot when a keyframe's time changes to keep the keyframes correctly sorted by time