Krita Source Code Documentation
Loading...
Searching...
No Matches
ImageData Class Reference
+ Inheritance diagram for ImageData:

Public Member Functions

 ImageData ()
 
 ImageData (int _imageWidth, int _imageHeight, int _pixelSize)
 
 ImageData (KisPaintDeviceSP imageDev, const QRect &imageSize)
 
void Init (int _imageWidth, int _imageHeight, int _pixelSize)
 
void Init (KisPaintDeviceSP imageDev, const QRect &imageSize)
 
 ~ImageData () override
 
- Public Member Functions inherited from ImageView
quint8 * data (void) const
 
void DebugDump (const QString &fnamePrefix)
 
 ImageView ()
 
 ImageView (quint8 *_data, int _imageWidth, int _imageHeight, int _pixelSize)
 
void Init (quint8 *_data, int _imageWidth, int _imageHeight, int _pixelSize)
 
int num_bytes (void) const
 
int num_elements (void) const
 
quint8 * operator() (int x, int y) const
 
ImageViewoperator= (const ImageView &other)
 
ImageViewoperator= (ImageView &&other) noexcept
 
int pixel_size (void) const
 
void saveToDevice (KisPaintDeviceSP outDev, QRect rect)
 
virtual ~ImageView ()
 

Additional Inherited Members

- Protected Attributes inherited from ImageView
quint8 * m_data {nullptr}
 
int m_imageHeight {0}
 
int m_imageWidth {0}
 
int m_pixelSize {0}
 

Detailed Description

Definition at line 158 of file kis_inpaint.cpp.

Constructor & Destructor Documentation

◆ ImageData() [1/3]

ImageData::ImageData ( )
inline

Definition at line 162 of file kis_inpaint.cpp.

162: ImageView() {}

◆ ImageData() [2/3]

ImageData::ImageData ( int _imageWidth,
int _imageHeight,
int _pixelSize )
inline

Definition at line 170 of file kis_inpaint.cpp.

170 : ImageView()
171 {
172 Init(_imageWidth, _imageHeight, _pixelSize);
173 }
void Init(int _imageWidth, int _imageHeight, int _pixelSize)

References Init().

◆ ImageData() [3/3]

ImageData::ImageData ( KisPaintDeviceSP imageDev,
const QRect & imageSize )
inline

Definition at line 185 of file kis_inpaint.cpp.

185 : ImageView()
186 {
187 Init(imageDev, imageSize);
188 }

References Init().

◆ ~ImageData()

ImageData::~ImageData ( )
inlineoverride

Definition at line 190 of file kis_inpaint.cpp.

191 {
192 delete[] m_data; //ImageData owns m_data, so it has to delete it
193 }
quint8 * m_data

References ImageView::m_data.

Member Function Documentation

◆ Init() [1/2]

void ImageData::Init ( int _imageWidth,
int _imageHeight,
int _pixelSize )
inline

Definition at line 164 of file kis_inpaint.cpp.

165 {
166 m_data = new quint8[ _imageWidth * _imageHeight * _pixelSize ];
167 ImageView::Init(m_data, _imageWidth, _imageHeight, _pixelSize);
168 }
void Init(quint8 *_data, int _imageWidth, int _imageHeight, int _pixelSize)

References ImageView::Init(), and ImageView::m_data.

◆ Init() [2/2]

void ImageData::Init ( KisPaintDeviceSP imageDev,
const QRect & imageSize )
inline

Definition at line 175 of file kis_inpaint.cpp.

176 {
177 const KoColorSpace* cs = imageDev->colorSpace();
178 m_pixelSize = cs->pixelSize();
179
180 m_data = new quint8[ imageSize.width()*imageSize.height()*cs->pixelSize() ];
181 imageDev->readBytes(m_data, imageSize.x(), imageSize.y(), imageSize.width(), imageSize.height());
182 ImageView::Init(m_data, imageSize.width(), imageSize.height(), m_pixelSize);
183 }
const KoColorSpace * colorSpace() const
void readBytes(quint8 *data, qint32 x, qint32 y, qint32 w, qint32 h) const
virtual quint32 pixelSize() const =0

References KisPaintDevice::colorSpace(), ImageView::Init(), ImageView::m_data, ImageView::m_pixelSize, KoColorSpace::pixelSize(), and KisPaintDevice::readBytes().


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