Krita Source Code Documentation
Loading...
Searching...
No Matches
KisAbstractFrameCacheSwapper.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 KISABSTRACTFRAMECACHESWAPPER_H
7#define KISABSTRACTFRAMECACHESWAPPER_H
8
9#include "kritaui_export.h"
10
11class QRect;
12
13template<class T>
14class KisSharedPtr;
15
18
19
20class KRITAUI_EXPORT KisAbstractFrameCacheSwapper
21{
22public:
24
25 // WARNING: after transferring \p info to saveFrame() the object becomes invalid
26 virtual void saveFrame(int frameId, KisOpenGLUpdateInfoSP info, const QRect &imageBounds) = 0;
27 virtual KisOpenGLUpdateInfoSP loadFrame(int frameId) = 0;
28
29 virtual void moveFrame(int srcFrameId, int dstFrameId) = 0;
30 virtual void forgetFrame(int frameId) = 0;
31
32 virtual bool hasFrame(int frameId) const = 0;
33
34 virtual int frameLevelOfDetail(int frameId) const = 0;
35 virtual QRect frameDirtyRect(int frameId) const = 0;
36};
37
38#endif // KISABSTRACTFRAMECACHESWAPPER_H
KisSharedPtr< KisOpenGLUpdateInfo > KisOpenGLUpdateInfoSP
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