1 #ifndef vtkExodusIICache_h
2 #define vtkExodusIICache_h
26 #include "vtkIOExodusModule.h"
63 if (pattern.
Time && this->Time != other.
Time)
75 if (this->Time < other.
Time)
77 else if (this->Time > other.
Time)
85 else if (this->ObjectId > other.
ObjectId)
87 if (this->ArrayId < other.
ArrayId)
132 void SetCacheCapacity(
double sizeInMiB);
143 int ReduceToSize(
double newSize);
178 void RecomputeSize();
202 #endif // vtkExodusIICache_h
std::list< vtkExodusIICacheRef >::iterator vtkExodusIICacheLRURef
bool match(const vtkExodusIICacheKey &other, const vtkExodusIICacheKey &pattern) const
vtkExodusIICacheSet Cache
A least-recently-used (LRU) cache to hold arrays.
abstract base class for most VTK objects
double Size
The current size of the cache (i.e., the size of the all the arrays it currently contains) in MiB...
std::list< vtkExodusIICacheRef > vtkExodusIICacheLRU
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
double GetSpaceLeft()
See how much cache space is left.
vtkExodusIICacheLRURef LRUEntry
double Capacity
The capacity of the cache (i.e., the maximum size of all arrays it contains) in MiB.
vtkExodusIICacheKey(int time, int objType, int objId, int arrId)
vtkExodusIICacheLRU LRU
The actual LRU list (indices into the cache ordered least to most recently used). ...
a simple class to control print indentation
abstract superclass for arrays of numeric data
std::map< vtkExodusIICacheKey, vtkExodusIICacheEntry * >::iterator vtkExodusIICacheRef
vtkDataArray * GetValue()
vtkExodusIICacheKey(const vtkExodusIICacheKey &src)
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
bool operator<(const vtkExodusIICacheKey &other) const
std::map< vtkExodusIICacheKey, vtkExodusIICacheEntry * > vtkExodusIICacheSet