Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_multiple_projection.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2015 Dmitry Kazakov <dimula73@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7#ifndef __KIS_MULTIPLE_PROJECTION_H
8#define __KIS_MULTIPLE_PROJECTION_H
9
10#include <QScopedPointer>
11#include "kis_types.h"
12#include "kritaimage_export.h"
13
15
16class KRITAIMAGE_EXPORT KisMultipleProjection
17{
18public:
22
23 static QString defaultProjectionId();
24
25 KisPaintDeviceSP getProjection(const QString &id, const QString &compositeOpId, quint8 opacity, const QBitArray &channelFlags, KisPaintDeviceSP prototype);
26 void freeProjection(const QString &id);
27 void freeAllProjections();
28
29 void clear(const QRect &rc);
30
31 void apply(KisPaintDeviceSP dstDevice, const QRect &rect, KisLayerStyleFilterEnvironment *env);
32
33 KisPaintDeviceList getLodCapableDevices() const;
34
35 bool isEmpty() const;
36
37private:
38 struct Private;
39 const QScopedPointer<Private> m_d;
40};
41
42#endif /* __KIS_MULTIPLE_PROJECTION_H */
const QScopedPointer< Private > m_d