Krita Source Code Documentation
Loading...
Searching...
No Matches
KisInMemoryFrameCacheSwapper.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 KISINMEMORYFRAMECACHESWAPPER_H
7#define KISINMEMORYFRAMECACHESWAPPER_H
8
9#include <QScopedPointer>
10
13
15
16
18{
19public:
22
23 // WARNING: after transferring \p info to saveFrame() the object becomes invalid
24 void saveFrame(int frameId, KisOpenGLUpdateInfoSP info, const QRect &imageBounds) override;
25 KisOpenGLUpdateInfoSP loadFrame(int frameId) override;
26
27 void moveFrame(int srcFrameId, int dstFrameId) override;
28
29 void forgetFrame(int frameId) override;
30 bool hasFrame(int frameId) const override;
31
32 int frameLevelOfDetail(int frameId) const override;
33
34 QRect frameDirtyRect(int frameId) const override;
35
36private:
37 struct Private;
38 const QScopedPointer<Private> m_d;
39};
40
41#endif // KISINMEMORYFRAMECACHESWAPPER_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