Back
Cyrille Berger
cyb at lepi.org
Mon Jul 26 14:37:43 CEST 2004
> * Iterators should take a paint device, not a tile manager in their
> constructor. I want tile manager to be more private to the paint device,
> with iterator being a friend or something to the paint device, so it can
> get at it. I'd just as soon never have anyone building an image
> manipulation algorithm extract the tile manager.
That's exactly why I would preffer to give iterators a tile manager, iterators
are created inside a paint device. If you change data() from public to
private, no one outside KisPaintDevice can acces it, except class that are
constructed inside KisPaintDevice :
KisPaintDevice {
private:
KisTileMgrSP data() { return m_data; };
public:
KisIterator iterator() { return KisIterator( m_data ); };
private:
KisTileMgrSP m_data;
};
> * I'd like to have a richer set of iterators: over rects, over tiles (for
> speed), and so on. Lines/pixel are okay.
anyway, I don't see any differences between iterators over rects and over
tiles.
I think we should have two "basic" iterators :
- rects (walking on the image tile after tile)
- line/pixel (walking on the image line after line)
And if we want other iterators, I think we can build them on top of one of the
"basic" iterators. It would reduce the maintenance cost when we change
something to the TileMgr or the PaintDevice.
> * Oh, and I'd like a hint on what's going wrong in kis_histogram.cc. But
> that probably has to do with the return type.
there was two times ++pixelIt.
--
--- Cyrille Berger ---
More information about the kimageshop
mailing list