1 #ifndef __vtkExodusIICache_h
2 #define __vtkExodusIICache_h
29 #include <vtkstd/list>
62 if ( pattern.
Time && this->Time != other.
Time )
74 if ( this->Time < other.
Time )
76 else if ( this->Time > other.
Time )
80 else if ( this->ObjectType > other.
ObjectType )
82 if ( this->ObjectId < other.
ObjectId )
84 else if ( this->ObjectId > other.
ObjectId )
86 if ( this->ArrayId < other.
ArrayId )
131 void SetCacheCapacity(
double sizeInMiB );
138 {
return this->Capacity - this->Size; }
143 int ReduceToSize(
double newSize );
181 void RecomputeSize();
206 #endif // __vtkExodusIICache_h
vtkstd::map< vtkExodusIICacheKey, vtkExodusIICacheEntry * >::iterator vtkExodusIICacheRef
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...
double GetSpaceLeft()
See how much cache space is left.
vtkExodusIICacheLRURef LRUEntry
vtkstd::map< vtkExodusIICacheKey, vtkExodusIICacheEntry * > vtkExodusIICacheSet
double Capacity
The capacity of the cache (i.e., the maximum size of all arrays it contains) in MiB.
vtkstd::list< vtkExodusIICacheRef >::iterator vtkExodusIICacheLRURef
virtual void PrintSelf(ostream &os, vtkIndent indent)
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
VTK_COMMON_EXPORT bool operator<(const vtkUnicodeString &lhs, const vtkUnicodeString &rhs)
abstract superclass for arrays of numeric data
vtkDataArray * GetValue()
vtkExodusIICacheKey(const vtkExodusIICacheKey &src)
vtkstd::list< vtkExodusIICacheRef > vtkExodusIICacheLRU