Synchronized raster raster band blocks manager.
More...
#include <SynchronizedBandBlocksManager.h>
Synchronized raster raster band blocks manager.
Definition at line 47 of file SynchronizedBandBlocksManager.h.
◆ SynchronizedBandBlocksManager() [1/2]
| te::rst::SynchronizedBandBlocksManager::SynchronizedBandBlocksManager |
( |
| ) |
|
◆ ~SynchronizedBandBlocksManager()
| te::rst::SynchronizedBandBlocksManager::~SynchronizedBandBlocksManager |
( |
| ) |
|
◆ SynchronizedBandBlocksManager() [2/2]
◆ free()
| void te::rst::SynchronizedBandBlocksManager::free |
( |
| ) |
|
- Note
- Free all allocated internal resources and go back to the initial state.
◆ getBlockPointer()
| void * te::rst::SynchronizedBandBlocksManager::getBlockPointer |
( |
unsigned int | band, |
|
|
unsigned int | x, |
|
|
unsigned int | y ) |
Returns a pointer to the required data block.
- Parameters
-
| band | The band index. |
| x | The block-id in x (or x-offset). |
| y | The block-id in y (or y-offset). |
- Returns
- Pointer to the required data block.
◆ getMaxNumberOfCacheBlocks()
| unsigned int te::rst::SynchronizedBandBlocksManager::getMaxNumberOfCacheBlocks |
( |
| ) |
const |
|
inline |
◆ getRaster()
| te::rst::Raster * te::rst::SynchronizedBandBlocksManager::getRaster |
( |
| ) |
const |
Returns the associated raster.
◆ getSynchronizer()
◆ initialize() [1/2]
| bool te::rst::SynchronizedBandBlocksManager::initialize |
( |
const unsigned int | maxNumberOfCacheBlocks, |
|
|
RasterSynchronizer & | sync ) |
Initialize this instance to an initial state.
- Parameters
-
| sync | The synchronized used by this instance. |
| maxNumberOfCacheBlocks | The maximum number of cache blocks. |
- Returns
- true if OK, false on errors.
- Note
- For the case where using the write raster access policy: The use of multiple cached blocks can cause deadlocks if multiple threads are locking blocks needed by other threads, use it with caution!
◆ initialize() [2/2]
| bool te::rst::SynchronizedBandBlocksManager::initialize |
( |
RasterSynchronizer & | sync, |
|
|
const unsigned char | maxMemPercentUsed ) |
Initialize this instance to an initial state.
- Parameters
-
| sync | The synchronized used by this instance. |
| maxMemPercentUsed | The maximum free memory percentual to use valid range: [1:100]. |
- Returns
- true if OK, false on errors.
- Note
- For the case where using the write raster access policy: The use of multiple cached blocks can cause deadlocks if multiple threads are locking blocks needed by other threads, use it with caution!
◆ initState()
| void te::rst::SynchronizedBandBlocksManager::initState |
( |
| ) |
|
|
private |
Initialize this instance to an initial state.
◆ isInitialized()
| bool te::rst::SynchronizedBandBlocksManager::isInitialized |
( |
| ) |
const |
|
inline |
◆ m_blocksFifo
| std::vector< BlockIndex > te::rst::SynchronizedBandBlocksManager::m_blocksFifo |
|
protected |
◆ m_blocksFifoNextSwapBlockIndex
| unsigned int te::rst::SynchronizedBandBlocksManager::m_blocksFifoNextSwapBlockIndex |
|
protected |
◆ m_blocksHandler
| std::vector< unsigned char* > te::rst::SynchronizedBandBlocksManager::m_blocksHandler |
|
protected |
◆ m_blocksPointers
| std::vector< std::vector< std::vector< unsigned char* > > > te::rst::SynchronizedBandBlocksManager::m_blocksPointers |
|
protected |
◆ m_getBlockPointer_BlkPtr
| unsigned char* te::rst::SynchronizedBandBlocksManager::m_getBlockPointer_BlkPtr |
|
protected |
◆ m_globalBlockSizeBytes
| unsigned int te::rst::SynchronizedBandBlocksManager::m_globalBlockSizeBytes |
|
protected |
◆ m_globalBlocksNumberX
| unsigned int te::rst::SynchronizedBandBlocksManager::m_globalBlocksNumberX |
|
protected |
◆ m_globalBlocksNumberY
| unsigned int te::rst::SynchronizedBandBlocksManager::m_globalBlocksNumberY |
|
protected |
◆ m_maxNumberOfCacheBlocks
| unsigned int te::rst::SynchronizedBandBlocksManager::m_maxNumberOfCacheBlocks |
|
protected |
◆ m_syncPtr
The documentation for this class was generated from the following file: