Krita Source Code Documentation
Loading...
Searching...
No Matches
KisConvolutionWorker< _IteratorFactory_ > Class Template Referenceabstract

#include <kis_convolution_worker.h>

+ Inheritance diagram for KisConvolutionWorker< _IteratorFactory_ >:

Public Member Functions

virtual void execute (const KisConvolutionKernelSP kernel, const KisPaintDeviceSP src, QPoint srcPos, QPoint dstPos, QSize areaSize, const QRect &dataRect)=0
 
 KisConvolutionWorker (KisPainter *painter, KoUpdater *progress)
 
virtual ~KisConvolutionWorker ()
 

Protected Member Functions

QList< KoChannelInfo * > convolvableChannelList (const KisPaintDeviceSP src)
 

Protected Attributes

KisPainterm_painter
 
KoUpdaterm_progress
 

Detailed Description

template<class _IteratorFactory_>
class KisConvolutionWorker< _IteratorFactory_ >

Definition at line 57 of file kis_convolution_worker.h.

Constructor & Destructor Documentation

◆ KisConvolutionWorker()

template<class _IteratorFactory_ >
KisConvolutionWorker< _IteratorFactory_ >::KisConvolutionWorker ( KisPainter * painter,
KoUpdater * progress )
inline

◆ ~KisConvolutionWorker()

template<class _IteratorFactory_ >
virtual KisConvolutionWorker< _IteratorFactory_ >::~KisConvolutionWorker ( )
inlinevirtual

Definition at line 66 of file kis_convolution_worker.h.

67 {
68 }

Member Function Documentation

◆ convolvableChannelList()

template<class _IteratorFactory_ >
QList< KoChannelInfo * > KisConvolutionWorker< _IteratorFactory_ >::convolvableChannelList ( const KisPaintDeviceSP src)
inlineprotected

Definition at line 73 of file kis_convolution_worker.h.

74 {
75 QBitArray painterChannelFlags = m_painter->channelFlags();
76 if (painterChannelFlags.isEmpty()) {
77 painterChannelFlags = QBitArray(src->colorSpace()->channelCount(), true);
78 }
79 Q_ASSERT(static_cast<quint32>(painterChannelFlags.size()) == src->colorSpace()->channelCount());
80 const QList<KoChannelInfo *> channelInfo = src->colorSpace()->channels();
81 QList<KoChannelInfo *> convChannelList;
82
83 for (qint32 c = 0; c < channelInfo.count(); ++c) {
84 if (painterChannelFlags.testBit(c)) {
85 convChannelList.append(channelInfo[c]);
86 }
87 }
88
89 return convChannelList;
90 }
QBitArray channelFlags()

References KisPainter::channelFlags(), and KisConvolutionWorker< _IteratorFactory_ >::m_painter.

◆ execute()

template<class _IteratorFactory_ >
virtual void KisConvolutionWorker< _IteratorFactory_ >::execute ( const KisConvolutionKernelSP kernel,
const KisPaintDeviceSP src,
QPoint srcPos,
QPoint dstPos,
QSize areaSize,
const QRect & dataRect )
pure virtual

Member Data Documentation

◆ m_painter

template<class _IteratorFactory_ >
KisPainter* KisConvolutionWorker< _IteratorFactory_ >::m_painter
protected

Definition at line 93 of file kis_convolution_worker.h.

◆ m_progress

template<class _IteratorFactory_ >
KoUpdater* KisConvolutionWorker< _IteratorFactory_ >::m_progress
protected

Definition at line 94 of file kis_convolution_worker.h.


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