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: