|
Isis 3 Programmer Reference
|
8 #include "UniqueIOCachingAlgorithm.h"
16 #include "IException.h"
18 #include "RawCubeChunk.h"
33 if (numUniqueIOs <= 0) {
34 IString msg =
"At least one unique IO must be used when using the unique "
35 "IO cube caching algorithm";
67 const Buffer &justRequested) {
72 if (justUsed.size()) {
75 bool foundAHome =
false;
77 for (
int uniqueIONum = 0;
82 if (uniqueIO.empty()) {
86 else if (uniqueIO == justUsed) {
99 QListIterator <RawCubeChunk *> allocatedIterator(allocated);
101 while (allocatedIterator.hasNext()) {
108 found = chunksForIo.indexOf(chunk) != -1;
112 chunksToToss.append(chunk);
A section of raw data on the disk.
This is free and unencumbered software released into the public domain.
virtual ~UniqueIOCachingAlgorithm()
Frees the memory allocated by this caching algorithm.
This stores the results of the caching algorithm.
Buffer for reading and writing cube data.
QQueue< QList< RawCubeChunk * > > * m_uniqueIOs
This is the set of past unique IOs.
UniqueIOCachingAlgorithm(int numUniqueIOs)
Construct a new UniqueIOCachingAlgorithm.
@ Programmer
This error is for when a programmer made an API call that was illegal.
This is free and unencumbered software released into the public domain.
virtual CacheResult recommendChunksToFree(QList< RawCubeChunk * > allocated, QList< RawCubeChunk * > justUsed, const Buffer &justRequested)
Please see the class description for how this algorithm works.
Adds specific functionality to C++ strings.
This is free and unencumbered software released into the public domain.