Krita Source Code Documentation
Loading...
Searching...
No Matches
KisFrameCacheSwapper.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2018 Dmitry Kazakov <dimula73@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6#ifndef KISFRAMECACHESWAPPER_H
7#define KISFRAMECACHESWAPPER_H
8
9#include <QScopedPointer>
10
12
14
15
29{
30public:
32 KisFrameCacheSwapper(const KisOpenGLUpdateInfoBuilder &builder, const QString &frameCachePath);
34
35 // WARNING: after transferring \p info to saveFrame() the object becomes invalid
36 void saveFrame(int frameId, KisOpenGLUpdateInfoSP info, const QRect &imageBounds) override;
37 KisOpenGLUpdateInfoSP loadFrame(int frameId) override;
38
39 void moveFrame(int srcFrameId, int dstFrameId) override;
40
41 void forgetFrame(int frameId) override;
42 bool hasFrame(int frameId) const override;
43
44 int frameLevelOfDetail(int frameId) const override;
45
46 QRect frameDirtyRect(int frameId) const override;
47
48private:
49 struct Private;
50 const QScopedPointer<Private> m_d;
51};
52
53#endif // KISFRAMECACHESWAPPER_H
virtual QRect frameDirtyRect(int frameId) const =0
virtual KisOpenGLUpdateInfoSP loadFrame(int frameId)=0
virtual void forgetFrame(int frameId)=0
virtual bool hasFrame(int frameId) const =0
virtual void saveFrame(int frameId, KisOpenGLUpdateInfoSP info, const QRect &imageBounds)=0
virtual void moveFrame(int srcFrameId, int dstFrameId)=0
virtual int frameLevelOfDetail(int frameId) const =0
const QScopedPointer< Private > m_d