|
Krita Source Code Documentation
|
#include <kis_tiled_data_manager.h>
Inheritance diagram for KisTiledDataManager:Public Member Functions | |
| void | bitBlt (KisTiledDataManager *srcDM, const QRect &rect) |
| void | bitBltOldData (KisTiledDataManager *srcDM, const QRect &rect) |
| void | bitBltRough (KisTiledDataManager *srcDM, const QRect &rect) |
| void | bitBltRoughOldData (KisTiledDataManager *srcDM, const QRect &rect) |
| void | clear () |
| void | clear (qint32 x, qint32 y, qint32 w, qint32 h, const quint8 *clearPixel) |
| void | clear (qint32 x, qint32 y, qint32 w, qint32 h, quint8 clearValue) |
| void | clear (QRect clearRect, const quint8 *clearPixel) |
| void | clear (QRect clearRect, quint8 clearValue) |
| void | commit () |
| void | debugPrintInfo () |
| const quint8 * | defaultPixel () const |
| QRect | extent () const |
| void | extent (qint32 &x, qint32 &y, qint32 &w, qint32 &h) const |
| KisMementoSP | getMemento () |
| KisTileSP | getOldTile (qint32 col, qint32 row) |
| KisTileSP | getOldTile (qint32 col, qint32 row, bool &existingTile) |
| KisTileSP | getReadOnlyTileLazy (qint32 col, qint32 row, bool &existingTile) |
| KisTileSP | getTile (qint32 col, qint32 row, bool writable) |
| void | getTilesPair (qint32 col, qint32 row, bool writable, KisTileSP *tile, KisTileSP *oldTile) |
| bool | hasCurrentMemento () const |
| KisTiledDataManager (const KisTiledDataManager &dm) | |
| KisTiledDataManager (quint32 pixelSize, const quint8 *defPixel) | |
| qint32 | numContiguousColumns (qint32 x, qint32 minY, qint32 maxY) const |
| qint32 | numContiguousRows (qint32 y, qint32 minX, qint32 maxX) const |
| KisTiledDataManager & | operator= (const KisTiledDataManager &dm) |
| void | purgeHistory (KisMementoSP oldestMemento) |
| void | readBytes (quint8 *bytes, qint32 x, qint32 y, qint32 w, qint32 h, qint32 dataRowStride=-1) const |
| QVector< quint8 * > | readPlanarBytes (QVector< qint32 > channelsizes, qint32 x, qint32 y, qint32 w, qint32 h) const |
| KisRegion | region () const |
| void | rollback (KisMementoSP memento) |
| void | rollforward (KisMementoSP memento) |
| qint32 | rowStride (qint32 x, qint32 y) const |
| void | setDefaultPixel (const quint8 *defPixel) |
| void | setExtent (qint32 x, qint32 y, qint32 w, qint32 h) |
| void | setExtent (QRect newRect) |
| void | setPixel (qint32 x, qint32 y, const quint8 *data) |
| void | writeBytes (const quint8 *bytes, qint32 x, qint32 y, qint32 w, qint32 h, qint32 dataRowStride=-1) |
| void | writePlanarBytes (QVector< quint8 * > planes, QVector< qint32 > channelsizes, qint32 x, qint32 y, qint32 w, qint32 h) |
| virtual | ~KisTiledDataManager () |
Public Member Functions inherited from KisShared | |
| bool | deref () |
| bool | ref () |
| int | refCount () |
| QAtomicInt * | sharedWeakReference () |
Static Public Member Functions | |
| static void | releaseInternalPools () |
Protected Member Functions | |
| quint32 | pixelSize () const |
| void | purge (const QRect &area) |
| bool | read (QIODevice *stream) |
| bool | write (KisPaintDeviceWriter &store) |
Protected Member Functions inherited from KisShared | |
| KisShared () | |
| ~KisShared () | |
Private Member Functions | |
| template<bool useOldSrcData> | |
| void | bitBltImpl (KisTiledDataManager *srcDM, const QRect &rect) |
| template<bool useOldSrcData> | |
| void | bitBltRoughImpl (KisTiledDataManager *srcDM, const QRect &rect) |
| qint32 | divideRoundDown (qint32 x, const qint32 y) const |
| quint8 * | duplicatePixel (qint32 num, const quint8 *pixel) |
| bool | processTilesHeader (QIODevice *stream, quint32 &numTiles) |
| void | readBytesBody (quint8 *data, qint32 x, qint32 y, qint32 width, qint32 height, qint32 dataRowStride=-1) const |
| QVector< quint8 * > | readPlanarBytesBody (QVector< qint32 > channelsizes, qint32 x, qint32 y, qint32 w, qint32 h) const |
| void | recalculateExtent () |
| void | setDefaultPixelImpl (const quint8 *defPixel) |
| void | writeBytesBody (const quint8 *data, qint32 x, qint32 y, qint32 width, qint32 height, qint32 dataRowStride=-1) |
| template<bool allChannelsPresent> | |
| void | writePlanarBytesBody (QVector< quint8 * > planes, QVector< qint32 > channelsizes, qint32 x, qint32 y, qint32 w, qint32 h) |
| bool | writeTilesHeader (KisPaintDeviceWriter &store, quint32 numTiles) |
| qint32 | xToCol (qint32 x) const |
| qint32 | yToRow (qint32 y) const |
Private Attributes | |
| quint8 * | m_defaultPixel |
| KisTiledExtentManager | m_extentManager |
| KisTileHashTable * | m_hashTable |
| QReadWriteLock | m_lock |
| KisMementoManager * | m_mementoManager |
| qint32 | m_pixelSize |
Static Private Attributes | |
| static const qint32 | CURRENT_VERSION = 2 |
| static const qint32 | LEGACY_VERSION = 1 |
Friends | |
| class | KisAbstractTileCompressor |
| class | KisBaseIterator |
| class | KisRandomAccessor2 |
| class | KisStressJob |
| class | KisTileDataWrapper |
| class | KisTiledIterator |
| class | KisTiledRandomAccessor |
KisTiledDataManager implements the interface that KisDataManager defines
The interface definition is enforced by KisDataManager calling all the methods which must also be defined in KisTiledDataManager. It is not allowed to change the interface as other datamanagers may also rely on the same interface.
A datamanager knows nothing about the type of pixel data except how many quint8's a single pixel takes.
Definition at line 55 of file kis_tiled_data_manager.h.
| KisTiledDataManager::KisTiledDataManager | ( | quint32 | pixelSize, |
| const quint8 * | defPixel ) |
Definition at line 33 of file kis_tiled_data_manager.cc.
References defaultPixel(), m_defaultPixel, m_hashTable, m_mementoManager, m_pixelSize, pixelSize(), and setDefaultPixel().
|
virtual |
Here is an explanation why we use hash table and The Memento Manager dynamically allocated We need to destroy them in that very order. The reason is that when hash table destroying all her child tiles they all cry about it to The Memento Manager using a pointer. So The Memento Manager should be alive during that destruction. We could use shared pointers instead, but they create too much overhead.
Definition at line 69 of file kis_tiled_data_manager.cc.
References m_defaultPixel, m_hashTable, and m_mementoManager.
| KisTiledDataManager::KisTiledDataManager | ( | const KisTiledDataManager & | dm | ) |
We won't call setDefaultTileData here, as defaultTileDatas has already been made shared in m_hashTable(dm->m_hashTable)
Definition at line 45 of file kis_tiled_data_manager.cc.
References KisTileData::deref(), m_defaultPixel, m_hashTable, m_mementoManager, m_pixelSize, recalculateExtent(), KisTileHashTableTraits< T >::refAndFetchDefaultTileData(), and KisMementoManager::setDefaultTileData().
| void KisTiledDataManager::bitBlt | ( | KisTiledDataManager * | srcDM, |
| const QRect & | rect ) |
Clones rect from another datamanager. The cloned area will be shared between both datamanagers as much as possible using copy-on-write. Parts of the rect that cannot be shared (cross tiles) are deep-copied,
Definition at line 560 of file kis_tiled_data_manager.cc.
|
private |
Definition at line 433 of file kis_tiled_data_manager.cc.
References KisTileHashTableTraits< T >::addTile(), KisTile::data(), KisTileDataWrapper::data(), defaultPixel(), KisTileHashTableTraits< T >::deleteTile(), getOldTile(), getReadOnlyTileLazy(), KisTileData::HEIGHT, KisTile::lockForRead(), m_defaultPixel, m_extentManager, m_hashTable, m_mementoManager, KisTiledExtentManager::notifyTileAdded(), KisTiledExtentManager::notifyTileRemoved(), KisTileDataWrapper::offset(), pixelSize(), rowStride(), KisTile::tileData(), KisTile::unlockForRead(), KisTileData::WIDTH, KisTileDataWrapper::WRITE, xToCol(), and yToRow().
| void KisTiledDataManager::bitBltOldData | ( | KisTiledDataManager * | srcDM, |
| const QRect & | rect ) |
The same as bitBlt(), but reads old data
Definition at line 565 of file kis_tiled_data_manager.cc.
| void KisTiledDataManager::bitBltRough | ( | KisTiledDataManager * | srcDM, |
| const QRect & | rect ) |
Clones rect from another datamanager in a rough and fast way. All the tiles touched by rect will be shared, between both managers, that means it will copy a bigger area than was requested. This method is supposed to be used for bitBlt'ing into temporary paint devices.
Definition at line 570 of file kis_tiled_data_manager.cc.
|
private |
We are cloning whole tiles here so let's not be so boring to check any borders :)
Definition at line 510 of file kis_tiled_data_manager.cc.
References KisTileHashTableTraits< T >::addTile(), defaultPixel(), KisTileHashTableTraits< T >::deleteTile(), getOldTile(), getReadOnlyTileLazy(), KisTile::lockForRead(), m_defaultPixel, m_extentManager, m_hashTable, m_mementoManager, KisTiledExtentManager::notifyTileAdded(), KisTiledExtentManager::notifyTileRemoved(), pixelSize(), KisTile::tileData(), KisTile::unlockForRead(), xToCol(), and yToRow().
| void KisTiledDataManager::bitBltRoughOldData | ( | KisTiledDataManager * | srcDM, |
| const QRect & | rect ) |
The same as bitBltRough(), but reads old data
Definition at line 575 of file kis_tiled_data_manager.cc.
| void KisTiledDataManager::clear | ( | ) |
Definition at line 425 of file kis_tiled_data_manager.cc.
References KisTileHashTableTraits< T >::clear(), KisTiledExtentManager::clear(), m_extentManager, and m_hashTable.
| void KisTiledDataManager::clear | ( | qint32 | x, |
| qint32 | y, | ||
| qint32 | w, | ||
| qint32 | h, | ||
| const quint8 * | clearPixel ) |
Definition at line 416 of file kis_tiled_data_manager.cc.
References clear().
| void KisTiledDataManager::clear | ( | qint32 | x, |
| qint32 | y, | ||
| qint32 | w, | ||
| qint32 | h, | ||
| quint8 | clearValue ) |
Definition at line 420 of file kis_tiled_data_manager.cc.
References clear().
| void KisTiledDataManager::clear | ( | QRect | clearRect, |
| const quint8 * | clearPixel ) |
Definition at line 309 of file kis_tiled_data_manager.cc.
References KisTileData::acquire(), KisTileHashTableTraits< T >::addTile(), KisTileDataStore::createDefaultTileData(), KisTileDataWrapper::data(), KisTileHashTableTraits< T >::deleteTile(), duplicatePixel(), KisTiledExtentManager::extent(), KisTileData::HEIGHT, KisTileDataStore::instance(), m_defaultPixel, m_extentManager, m_hashTable, m_mementoManager, KisTiledExtentManager::notifyTileAdded(), KisTiledExtentManager::notifyTileRemoved(), pixelSize(), KisTileData::release(), rowStride(), KisTileData::WIDTH, KisTileDataWrapper::WRITE, xToCol(), and yToRow().
| void KisTiledDataManager::clear | ( | QRect | clearRect, |
| quint8 | clearValue ) |
Definition at line 408 of file kis_tiled_data_manager.cc.
References clear(), and pixelSize().
|
inline |
Finishes having already started transaction
Definition at line 144 of file kis_tiled_data_manager.h.
References KisMemento::saveNewDefaultPixel().
|
inline |
Definition at line 399 of file kis_tiled_data_manager.h.
References KisMementoManager::debugPrintInfo().
|
inline |
Definition at line 81 of file kis_tiled_data_manager.h.
|
inlineprivate |
Equivalent to the following: -(( -x + (y-1) ) / y)
Definition at line 363 of file kis_tiled_data_manager.h.
|
private |
Definition at line 296 of file kis_tiled_data_manager.cc.
References pixelSize().
| QRect KisTiledDataManager::extent | ( | ) | const |
Definition at line 658 of file kis_tiled_data_manager.cc.
References KisTiledExtentManager::extent(), and m_extentManager.
| void KisTiledDataManager::extent | ( | qint32 & | x, |
| qint32 & | y, | ||
| qint32 & | w, | ||
| qint32 & | h ) const |
Definition at line 652 of file kis_tiled_data_manager.cc.
References extent().
|
inline |
Definition at line 134 of file kis_tiled_data_manager.h.
References KisMemento::saveOldDefaultPixel().
|
inline |
Definition at line 129 of file kis_tiled_data_manager.h.
|
inline |
Definition at line 124 of file kis_tiled_data_manager.h.
|
inline |
Definition at line 120 of file kis_tiled_data_manager.h.
|
inline |
Definition at line 105 of file kis_tiled_data_manager.h.
References newTile().
|
inline |
Every iterator fetches both types of tiles all the time: old and new. For projection devices these tiles are always the same, but doing two distinct calls makes double pressure on the read-write lock in the hash table.
Merging two calls into one allows us to avoid additional tile fetch from the hash table and therefore reduce waiting time.
Definition at line 94 of file kis_tiled_data_manager.h.
|
inline |
Definition at line 177 of file kis_tiled_data_manager.h.
| qint32 KisTiledDataManager::numContiguousColumns | ( | qint32 | x, |
| qint32 | minY, | ||
| qint32 | maxY ) const |
Get the number of contiguous columns starting at x, valid for all values of y between minY and maxY.
Definition at line 739 of file kis_tiled_data_manager.cc.
References KisTileData::WIDTH.
| qint32 KisTiledDataManager::numContiguousRows | ( | qint32 | y, |
| qint32 | minX, | ||
| qint32 | maxX ) const |
Get the number of contiguous rows starting at y, valid for all values of x between minX and maxX.
Definition at line 755 of file kis_tiled_data_manager.cc.
References KisTileData::HEIGHT.
| KisTiledDataManager & KisTiledDataManager::operator= | ( | const KisTiledDataManager & | dm | ) |
|
inlineprotected |
Definition at line 204 of file kis_tiled_data_manager.h.
|
private |
We assume that there is only one version of this header possible. In case we invent something new, it'll be quite easy to modify the behavior
Definition at line 209 of file kis_tiled_data_manager.cc.
References KisTileData::HEIGHT, pixelSize(), takeOneLine, value(), warnTiles, and KisTileData::WIDTH.
|
protected |
Definition at line 263 of file kis_tiled_data_manager.cc.
References KisTileData::blockSwapping(), KisTile::col(), KisTile::data(), KisTileData::data(), KisTileHashTableTraits< T >::deleteTile(), KisTileData::deref(), KisTile::extent(), KisTileData::HEIGHT, KisTile::lockForRead(), m_extentManager, m_hashTable, KisTileHashTableIteratorTraits< T, LockerType >::next(), KisTiledExtentManager::notifyTileRemoved(), pixelSize(), KisTileHashTableTraits< T >::refAndFetchDefaultTileData(), KisTile::row(), KisTileHashTableIteratorTraits< T, LockerType >::tile(), KisTileData::unblockSwapping(), KisTile::unlockForRead(), and KisTileData::WIDTH.
|
inline |
Removes all the history that precedes the revision pointed by oldestMemento. That is after calling to purgeHistory(someMemento) you won't be able to do rollback(someMemento) anymore.
Definition at line 188 of file kis_tiled_data_manager.h.
|
protected |
Definition at line 133 of file kis_tiled_data_manager.cc.
References clear(), KisMementoManager::commit(), KisTileCompressorFactory::create(), KisMementoManager::getMemento(), LEGACY_VERSION, m_lock, m_mementoManager, and processTilesHeader().
| void KisTiledDataManager::readBytes | ( | quint8 * | bytes, |
| qint32 | x, | ||
| qint32 | y, | ||
| qint32 | w, | ||
| qint32 | h, | ||
| qint32 | dataRowStride = -1 ) const |
Copy the bytes in the specified rect to a vector. The caller is responsible for managing the vector.
| bytes | the bytes |
| x | x of top left corner |
| y | y of top left corner |
| w | width |
| h | height |
| dataRowStride | is the step (in bytes) which should be added to bytes pointer to get to the next row |
Definition at line 694 of file kis_tiled_data_manager.cc.
References m_lock, and readBytesBody().
|
private |
Definition at line 78 of file kis_tiled_data_manager_p.h.
References KisTileDataWrapper::data(), numContiguousColumns(), numContiguousRows(), pixelSize(), KisTileDataWrapper::READ, and rowStride().
| QVector< quint8 * > KisTiledDataManager::readPlanarBytes | ( | QVector< qint32 > | channelsizes, |
| qint32 | x, | ||
| qint32 | y, | ||
| qint32 | w, | ||
| qint32 | h ) const |
Copy the bytes in the paint device into a vector of arrays of bytes, where the number of arrays is the number of channels in the paint device. If the specified area is larger than the paint device's extent, the default pixel will be read.
Definition at line 705 of file kis_tiled_data_manager.cc.
References m_lock, and readPlanarBytesBody().
|
private |
Definition at line 229 of file kis_tiled_data_manager_p.h.
References KisTileDataWrapper::data(), forEachChannel, numContiguousColumns(), numContiguousRows(), pixelSize(), KisTileDataWrapper::READ, and rowStride().
|
private |
Definition at line 635 of file kis_tiled_data_manager.cc.
References KisTile::col(), m_extentManager, m_hashTable, KisTileHashTableIteratorTraits< T, LockerType >::next(), KisTiledExtentManager::replaceTileStats(), KisTile::row(), and KisTileHashTableIteratorTraits< T, LockerType >::tile().
| KisRegion KisTiledDataManager::region | ( | ) | const |
Definition at line 663 of file kis_tiled_data_manager.cc.
References KisTile::extent(), m_hashTable, KisTileHashTableIteratorTraits< T, LockerType >::next(), and KisTileHashTableIteratorTraits< T, LockerType >::tile().
|
static |
Definition at line 779 of file kis_tiled_data_manager.cc.
References KisTileData::releaseInternalPools().
|
inline |
Definition at line 155 of file kis_tiled_data_manager.h.
References KisMemento::oldDefaultPixel().
|
inline |
Definition at line 166 of file kis_tiled_data_manager.h.
References KisMemento::newDefaultPixel().
| qint32 KisTiledDataManager::rowStride | ( | qint32 | x, |
| qint32 | y ) const |
Get the row stride at pixel (x, y). This is the number of bytes to add to a pointer to pixel (x, y) to access (x, y + 1).
Definition at line 771 of file kis_tiled_data_manager.cc.
References pixelSize(), and KisTileData::WIDTH.
| void KisTiledDataManager::setDefaultPixel | ( | const quint8 * | defPixel | ) |
Definition at line 85 of file kis_tiled_data_manager.cc.
References defaultPixel(), m_lock, and setDefaultPixelImpl().
|
private |
Definition at line 91 of file kis_tiled_data_manager.cc.
References KisTileDataStore::createDefaultTileData(), defaultPixel(), KisTileDataStore::instance(), m_defaultPixel, m_hashTable, m_mementoManager, pixelSize(), KisMementoManager::setDefaultTileData(), and KisTileHashTableTraits< T >::setDefaultTileData().
| void KisTiledDataManager::setExtent | ( | qint32 | x, |
| qint32 | y, | ||
| qint32 | w, | ||
| qint32 | h ) |
Definition at line 580 of file kis_tiled_data_manager.cc.
References setExtent().
| void KisTiledDataManager::setExtent | ( | QRect | newRect | ) |
Definition at line 585 of file kis_tiled_data_manager.cc.
References KisTile::col(), KisTile::data(), KisTileHashTableIteratorTraits< T, LockerType >::deleteCurrent(), KisTile::extent(), extent(), KisTileData::HEIGHT, KisTileHashTableIteratorTraits< T, LockerType >::isDone(), KisTile::lockForWrite(), m_defaultPixel, m_extentManager, m_hashTable, KisTileHashTableIteratorTraits< T, LockerType >::next(), KisTiledExtentManager::notifyTileRemoved(), pixelSize(), KisTile::row(), KisTileHashTableIteratorTraits< T, LockerType >::tile(), KisTile::unlockForWrite(), and KisTileData::WIDTH.
| void KisTiledDataManager::setPixel | ( | qint32 | x, |
| qint32 | y, | ||
| const quint8 * | data ) |
write the specified data to x, y. There is no checking on pixelSize!
Definition at line 678 of file kis_tiled_data_manager.cc.
References KisTileDataWrapper::data(), pixelSize(), and KisTileDataWrapper::WRITE.
|
protected |
Reads and writes the tiles
Definition at line 100 of file kis_tiled_data_manager.cc.
References KisTileCompressorFactory::create(), CURRENT_VERSION, LEGACY_VERSION, m_hashTable, m_lock, KisTileHashTableIteratorTraits< T, LockerType >::next(), KisTileHashTableTraits< T >::numTiles(), KisTileHashTableIteratorTraits< T, LockerType >::tile(), warnFile, KisPaintDeviceWriter::write(), and writeTilesHeader().
| void KisTiledDataManager::writeBytes | ( | const quint8 * | bytes, |
| qint32 | x, | ||
| qint32 | y, | ||
| qint32 | w, | ||
| qint32 | h, | ||
| qint32 | dataRowStride = -1 ) |
Copy the bytes in the vector to the specified rect. If there are bytes left in the vector after filling the rect, they will be ignored. If there are not enough bytes, the rest of the rect will be filled with the default value given (by default, 0);
| bytes | the bytes |
| x | x of top left corner |
| y | y of top left corner |
| w | width |
| h | height |
| dataRowStride | is the step (in bytes) which should be added to bytes pointer to get to the next row |
Definition at line 684 of file kis_tiled_data_manager.cc.
References m_lock, and writeBytesBody().
|
private |
Definition at line 11 of file kis_tiled_data_manager_p.h.
References KisTileDataWrapper::data(), numContiguousColumns(), numContiguousRows(), pixelSize(), rowStride(), and KisTileDataWrapper::WRITE.
| void KisTiledDataManager::writePlanarBytes | ( | QVector< quint8 * > | planes, |
| QVector< qint32 > | channelsizes, | ||
| qint32 | x, | ||
| qint32 | y, | ||
| qint32 | w, | ||
| qint32 | h ) |
Write the data in the separate arrays to the channels. If there are less vectors than channels, the remaining channels will not be copied. If any of the arrays points to 0, the channel in that location will not be touched. If the specified area is larger than the paint device, the paint device will be extended. There are no guards: if the area covers more pixels than there are bytes in the arrays, krita will happily fill your paint device with areas of memory you never wanted to be read. Krita may also crash.
Definition at line 715 of file kis_tiled_data_manager.cc.
References m_lock.
|
private |
Definition at line 151 of file kis_tiled_data_manager_p.h.
References KisTileDataWrapper::data(), forEachChannel, numContiguousColumns(), numContiguousRows(), pixelSize(), rowStride(), and KisTileDataWrapper::WRITE.
|
private |
Definition at line 181 of file kis_tiled_data_manager.cc.
References CURRENT_VERSION, KisTileData::HEIGHT, pixelSize(), KisTileData::WIDTH, and KisPaintDeviceWriter::write().
|
inlineprivate |
Definition at line 348 of file kis_tiled_data_manager.h.
References KisTileData::WIDTH.
|
inlineprivate |
Definition at line 352 of file kis_tiled_data_manager.h.
References KisTileData::HEIGHT.
|
friend |
Definition at line 346 of file kis_tiled_data_manager.h.
|
friend |
Definition at line 74 of file kis_tiled_data_manager.h.
|
friend |
Definition at line 76 of file kis_tiled_data_manager.h.
|
friend |
Definition at line 77 of file kis_tiled_data_manager.h.
|
friend |
Definition at line 347 of file kis_tiled_data_manager.h.
|
friend |
Definition at line 73 of file kis_tiled_data_manager.h.
|
friend |
Definition at line 75 of file kis_tiled_data_manager.h.
|
staticprivate |
Definition at line 59 of file kis_tiled_data_manager.h.
|
staticprivate |
Definition at line 58 of file kis_tiled_data_manager.h.
|
private |
Definition at line 337 of file kis_tiled_data_manager.h.
|
private |
Definition at line 339 of file kis_tiled_data_manager.h.
|
private |
Definition at line 335 of file kis_tiled_data_manager.h.
|
mutableprivate |
Definition at line 341 of file kis_tiled_data_manager.h.
|
private |
Definition at line 336 of file kis_tiled_data_manager.h.
|
private |
Definition at line 338 of file kis_tiled_data_manager.h.