Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_filter.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2004, 2006-2007 Cyrille Berger <cberger@cberger.net>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6#ifndef _KIS_FILTER_H_
7#define _KIS_FILTER_H_
8
9#include <list>
10
11#include <QString>
12
13#include <klocalizedstring.h>
14
15#include "KoID.h"
16#include "KoColorSpace.h"
17
18#include "kis_types.h"
19#include "kis_base_processor.h"
20
21#include "kritaimage_export.h"
22
26class KRITAIMAGE_EXPORT KisFilter : public KisBaseProcessor
27{
28public:
29
33 KisFilter(const KoID& id, const KoID & category, const QString & entry);
34 ~KisFilter() override;
35
48 virtual void processImpl(KisPaintDeviceSP device,
49 const QRect& applyRect,
50 const KisFilterConfigurationSP config,
51 KoUpdater* progressUpdater = 0 ) const = 0;
52
65 void process(const KisPaintDeviceSP src,
67 KisSelectionSP selection,
68 const QRect& applyRect,
69 const KisFilterConfigurationSP config,
70 KoUpdater* progressUpdater = 0 ) const;
71
72
76 void process(KisPaintDeviceSP device,
77 const QRect& applyRect,
78 const KisFilterConfigurationSP config,
79 KoUpdater* progressUpdater = 0 ) const;
80
85 virtual QRect neededRect(const QRect & rect, const KisFilterConfigurationSP config, int lod) const;
86
93 virtual QRect changedRect(const QRect & rect, const KisFilterConfigurationSP config, int lod) const;
94
99 virtual bool supportsLevelOfDetail(const KisFilterConfigurationSP config, int lod) const;
100
101 virtual bool needsTransparentPixels(const KisFilterConfigurationSP config, const KoColorSpace *cs) const;
102
103 virtual bool configurationAllowedForMask(KisFilterConfigurationSP config) const;
104 virtual void fixLoadedFilterConfigurationForMasks(KisFilterConfigurationSP config) const;
105
106protected:
107
108 QString configEntryGroup() const;
109 void setSupportsLevelOfDetail(bool value);
110
111
112private:
114};
115
116
117#endif
float value(const T *src, size_t ch)
virtual void processImpl(KisPaintDeviceSP device, const QRect &applyRect, const KisFilterConfigurationSP config, KoUpdater *progressUpdater=0) const =0
QString configEntryGroup() const
bool m_supportsLevelOfDetail
Definition kis_filter.h:113
Definition KoID.h:30