This algorithm is designed for applications that jump around between a couple of spots in the cube with a difficult to predict pattern but always the same places in the cube. More...
#include <UniqueIOCachingAlgorithm.h>


Public Member Functions | |
| UniqueIOCachingAlgorithm (int numUniqueIOs) | |
| Construct a new UniqueIOCachingAlgorithm. | |
| virtual | ~UniqueIOCachingAlgorithm () |
| Frees the memory allocated by this caching algorithm. | |
| virtual CacheResult | recommendChunksToFree (QList< RawCubeChunk * > allocated, QList< RawCubeChunk * > justUsed, const Buffer &justRequested) |
| Please see the class description for how this algorithm works. | |
This algorithm is designed for applications that jump around between a couple of spots in the cube with a difficult to predict pattern but always the same places in the cube.
This was designed for ProcessMosaic which jumps between band 1 and band n in the possible patterns (where A is a line on band 1 and B is a line on band N): A,A or A,B,A or A,B,B,A
| Isis::UniqueIOCachingAlgorithm::UniqueIOCachingAlgorithm | ( | int | numUniqueIOs | ) |
Construct a new UniqueIOCachingAlgorithm.
The last numUniqueIOs will be kept in the cache, while the other chunks in the cache will all be tossed.
| numUniqueIOs | The number of unique IO operations to keep the chunks around for. |
References _FILEINFO_, and Isis::IException::Programmer.
|
virtual |
Frees the memory allocated by this caching algorithm.
|
virtual |
Please see the class description for how this algorithm works.
| allocated | All of the allocated cube chunks |
| justUsed | The cube chunks used in the last I/O |
| justRequested | The buffer passed into the last I/O |
Implements Isis::CubeCachingAlgorithm.