USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::BoxcarCachingAlgorithm Class Reference

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 <BoxcarCachingAlgorithm.h>

Inheritance diagram for Isis::BoxcarCachingAlgorithm:
Inheritance graph
Collaboration diagram for Isis::BoxcarCachingAlgorithm:
Collaboration graph

Public Member Functions

 BoxcarCachingAlgorithm ()
 Construct a new BoxcarCachingAlgorithm.
 
virtual ~BoxcarCachingAlgorithm ()
 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.
 

Private Attributes

int m_minLine
 

Detailed Description

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

Author
????-??-?? Jai Rideout and Steven Lambright

Definition at line 47 of file BoxcarCachingAlgorithm.h.

Constructor & Destructor Documentation

Isis::BoxcarCachingAlgorithm::BoxcarCachingAlgorithm ( )

Construct a new BoxcarCachingAlgorithm.

The last numUniqueIOs will be kept in the cache, while the other chunks in the cache will all be tossed.

Parameters
numUniqueIOsThe number of unique IO operations to keep the chunks around for.

Definition at line 42 of file BoxcarCachingAlgorithm.cpp.

Isis::BoxcarCachingAlgorithm::~BoxcarCachingAlgorithm ( )
virtual

Frees the memory allocated by this caching algorithm.

Definition at line 50 of file BoxcarCachingAlgorithm.cpp.

Member Function Documentation

CubeCachingAlgorithm::CacheResult Isis::BoxcarCachingAlgorithm::recommendChunksToFree ( QList< RawCubeChunk * >  allocated,
QList< RawCubeChunk * >  justUsed,
const Buffer justRequested 
)
virtual

Please see the class description for how this algorithm works.

Parameters
allocatedAll of the allocated cube chunks
justUsedThe cube chunks used in the last I/O
justRequestedThe buffer passed into the last I/O
Returns
The chunks that should be removed from memory

Implements Isis::CubeCachingAlgorithm.

Definition at line 64 of file BoxcarCachingAlgorithm.cpp.

References Isis::RawCubeChunk::getStartLine(), and Isis::RawCubeChunk::lineCount().


The documentation for this class was generated from the following files: