File indexing completed on 2024-05-12 16:01:44
0001 /* 0002 * SPDX-FileCopyrightText: 2017 Dmitry Kazakov <dimula73@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #ifndef KISASYNCANIMATIONCACHERENDERER_H 0008 #define KISASYNCANIMATIONCACHERENDERER_H 0009 0010 #include <KisAsyncAnimationRendererBase.h> 0011 0012 class KisAsyncAnimationCacheRenderer : public KisAsyncAnimationRendererBase 0013 { 0014 Q_OBJECT 0015 public: 0016 KisAsyncAnimationCacheRenderer(); 0017 ~KisAsyncAnimationCacheRenderer(); 0018 0019 void setFrameCache(KisAnimationFrameCacheSP cache); 0020 0021 protected: 0022 void frameCompletedCallback(int frame, const KisRegion &requestedRegion) override; 0023 void frameCancelledCallback(int frame, CancelReason cancelReason) override; 0024 void clearFrameRegenerationState(bool isCancelled) override; 0025 0026 0027 Q_SIGNALS: 0028 void sigCompleteRegenerationInternal(int frame); 0029 0030 private Q_SLOTS: 0031 void slotCompleteRegenerationInternal(int frame); 0032 0033 private: 0034 struct Private; 0035 const QScopedPointer<Private> m_d; 0036 }; 0037 0038 #endif // KISASYNCANIMATIONCACHERENDERER_H