Krita Source Code Documentation
Loading...
Searching...
No Matches
KisOpenGLUpdateInfoBuilder.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 KISOPENGLUPDATEINFOBUILDER_H
7#define KISOPENGLUPDATEINFOBUILDER_H
8
9#include "kritaui_export.h"
10#include <QScopedPointer>
11#include <QSharedPointer>
12
15
18
19template<class T>
20class KisSharedPtr;
21
22class KisImage;
24
25class KisPaintDevice;
27
30
31class KoColorSpace;
33
34
35class KRITAUI_EXPORT KisOpenGLUpdateInfoBuilder
36{
37public:
40
41 KisOpenGLUpdateInfoSP buildUpdateInfo(const QRect& rect, KisImageSP srcImage, bool convertColorSpace);
42 KisOpenGLUpdateInfoSP buildUpdateInfo(const QRect& rect, KisPaintDeviceSP projection, const QRect &bounds, int levelOfDetail, bool convertColorSpace);
43
44 QRect calculatePhysicalTileRect(int col, int row, const QRect &imageBounds, int levelOfDetail) const;
45 QRect calculateEffectiveTileRect(int col, int row, const QRect &imageBounds) const;
46 int xToCol(int x) const;
47 int yToRow(int y) const;
48
49 const KoColorSpace* destinationColorSpace() const;
50
51 void setConversionOptions(const ConversionOptions &options);
52 void setChannelFlags(const QBitArray &channelFrags, bool onlyOneChannelSelected, int selectedChannelIndex);
53
54 void setTextureBorder(int value);
55 void setEffectiveTextureSize(const QSize &size);
56
57 void setTextureInfoPool(KisTextureTileInfoPoolSP pool);
58 KisTextureTileInfoPoolSP textureInfoPool() const;
59
60 void setProofingConfig(KisProofingConfigurationSP config);
62
63private:
64 struct Private;
65 const QScopedPointer<Private> m_d;
66};
67
68#endif // KISOPENGLUPDATEINFOBUILDER_H
float value(const T *src, size_t ch)
KisSharedPtr< KisPaintDevice > KisPaintDeviceSP
KisSharedPtr< KisOpenGLUpdateInfo > KisOpenGLUpdateInfoSP
QSharedPointer< KisTextureTileInfoPool > KisTextureTileInfoPoolSP
KisSharedPtr< KisImage > KisImageSP
QSharedPointer< KisProofingConfiguration > KisProofingConfigurationSP
The KisProofingConfiguration struct Little struct that stores the proofing configuration for a given ...
#define bounds(x, a, b)
const QScopedPointer< Private > m_d
KisProofingConfigurationSP proofingConfig() const