Krita Source Code Documentation
Loading...
Searching...
No Matches
KisGenerator Class Referenceabstract

#include <kis_generator.h>

+ Inheritance diagram for KisGenerator:

Public Member Functions

virtual bool allowsSplittingIntoPatches () const
 
virtual void generate (KisProcessingInformation dst, const QSize &size, const KisFilterConfigurationSP config) const
 
virtual void generate (KisProcessingInformation dst, const QSize &size, const KisFilterConfigurationSP config, KoUpdater *progressUpdater) const =0
 
virtual QRect generatedRect (QRect _imageArea, const KisFilterConfigurationSP=0) const
 
 KisGenerator (const KoID &id, const KoID &category, const QString &entry)
 
 ~KisGenerator () override
 
- Public Member Functions inherited from KisBaseProcessor
KisBookmarkedConfigurationManagerbookmarkManager ()
 
const KisBookmarkedConfigurationManagerbookmarkManager () const
 
ColorSpaceIndependence colorSpaceIndependence () const
 
virtual KisConfigWidgetcreateConfigurationWidget (QWidget *parent, const KisPaintDeviceSP dev, bool useForMasks) const
 
virtual KisFilterConfigurationSP defaultConfiguration (KisResourcesInterfaceSP resourcesInterface) const
 
virtual KisFilterConfigurationSP factoryConfiguration (KisResourcesInterfaceSP resourcesInterface) const
 
QString id () const
 
 KisBaseProcessor (const KoID &id, const KoID &category, const QString &entry)
 
KoID menuCategory () const
 
QString menuEntry () const
 
QString name () const
 
 Private ()
 
QKeySequence shortcut () const
 
bool showConfigurationWidget ()
 If true, the filter wants to show a configuration widget.
 
bool supportsAdjustmentLayers () const
 This filter can be used in adjustment layers.
 
bool supportsPainting () const
 
bool supportsThreading () const
 
virtual ~KisBaseProcessor ()
 
- Public Member Functions inherited from Private
 Private (KisCanvas2 *c)
 
- Public Member Functions inherited from KisShared
bool deref ()
 
bool ref ()
 
int refCount ()
 
QAtomicInt * sharedWeakReference ()
 

Protected Member Functions

QString configEntryGroup () const
 
- Protected Member Functions inherited from KisBaseProcessor
void init (const QString &configEntryGroup)
 
void setColorSpaceIndependence (ColorSpaceIndependence v)
 
void setShortcut (const QKeySequence &shortcut)
 
void setShowConfigurationWidget (bool v)
 
void setSupportsAdjustmentLayers (bool v)
 
void setSupportsPainting (bool v)
 
void setSupportsThreading (bool v)
 
- Protected Member Functions inherited from KisShared
 KisShared ()
 
 ~KisShared ()
 

Friends

class KisGeneratorConfigurationFactory
 

Additional Inherited Members

- Public Attributes inherited from KisBaseProcessor
KisBookmarkedConfigurationManagerbookmarkManager
 
KoID category
 
ColorSpaceIndependence colorSpaceIndependence
 
QString entry
 
KoID id
 
QKeySequence shortcut
 
bool showConfigurationWidget
 
bool supportsAdjustmentLayers
 
bool supportsPainting
 
bool supportsThreading
 
- Public Attributes inherited from Private
KisCanvas2canvas
 
int displayedFrame
 
int intendedFrame
 

Detailed Description

Basic interface of a Krita generator: a generator is a program that can fill a paint device with a color. A generator can have a preferred colorspace.

Generators can have initial parameter settings that determine the way a particular generator works, but also state that allows the generator to continue from one invocation of generate to another (handy for, e.g., painting)

Definition at line 32 of file kis_generator.h.

Constructor & Destructor Documentation

◆ KisGenerator()

KisGenerator::KisGenerator ( const KoID & id,
const KoID & category,
const QString & entry )

Definition at line 19 of file kis_generator.cpp.

21{
22 init(id() + "_generator_bookmarks");
23}
void init(const QString &configEntryGroup)
KisBaseProcessor(const KoID &id, const KoID &category, const QString &entry)

References KisBaseProcessor::init().

◆ ~KisGenerator()

KisGenerator::~KisGenerator ( )
override

Definition at line 25 of file kis_generator.cpp.

26{
27}

Member Function Documentation

◆ allowsSplittingIntoPatches()

virtual bool KisGenerator::allowsSplittingIntoPatches ( ) const
inlinevirtual

Reports whether this generator can run properly while tiling the image into patches (as opposed to over the whole image in one single pass).

Generators that are known to not work properly should override this function and return false.

Reimplemented in KisMultigridPatternGenerator, and PatternGenerator.

Definition at line 80 of file kis_generator.h.

80{ return true; }

◆ configEntryGroup()

QString KisGenerator::configEntryGroup ( ) const
protected
Returns
the name of config group in KConfig

◆ generate() [1/2]

void KisGenerator::generate ( KisProcessingInformation dst,
const QSize & size,
const KisFilterConfigurationSP config ) const
virtual

Provided for convenience when no progress reporting is needed.

Reimplemented in KisGradientGenerator, KisMultigridPatternGenerator, PatternGenerator, KisScreentoneGenerator, KisSeExprGenerator, KisSimplexNoiseGenerator, and KisColorGenerator.

Definition at line 29 of file kis_generator.cpp.

33{
34 generate(dst, size, config, 0);
35}
virtual void generate(KisProcessingInformation dst, const QSize &size, const KisFilterConfigurationSP config, KoUpdater *progressUpdater) const =0

References generate().

◆ generate() [2/2]

virtual void KisGenerator::generate ( KisProcessingInformation dst,
const QSize & size,
const KisFilterConfigurationSP config,
KoUpdater * progressUpdater ) const
pure virtual

Override this function with the implementation of your generator.

Parameters
dstthe destination paint device
sizethe size of the area that is to be filled
configthe parameters of the filter
progressUpdaterthe progress updater

Implemented in KisGradientGenerator, KisMultigridPatternGenerator, PatternGenerator, KisScreentoneGenerator, KisSeExprGenerator, KisSimplexNoiseGenerator, KisColorGenerator, KisGradientGenerator, KisMultigridPatternGenerator, PatternGenerator, KisScreentoneGenerator, KisSeExprGenerator, KisSimplexNoiseGenerator, and KisColorGenerator.

◆ generatedRect()

QRect KisGenerator::generatedRect ( QRect _imageArea,
const KisFilterConfigurationSP = 0 ) const
virtual
Parameters
_imageAreathe rectangle of the image
Returns
the rectangle that is affected by this generator, if the generator is supposed to affect all pixels, then the function should return _imageArea

Definition at line 37 of file kis_generator.cpp.

38{
39 return _imageArea;
40}

Friends And Related Symbol Documentation

◆ KisGeneratorConfigurationFactory

friend class KisGeneratorConfigurationFactory
friend

Definition at line 34 of file kis_generator.h.


The documentation for this class was generated from the following files: