1 #ifndef vtkExodusIICache_h
2 #define vtkExodusIICache_h
71 if ( pattern.
Time && this->Time != other.
Time )
83 if ( this->Time < other.
Time )
85 else if ( this->Time > other.
Time )
89 else if ( this->ObjectType > other.
ObjectType )
91 if ( this->ObjectId < other.
ObjectId )
93 else if ( this->ObjectId > other.
ObjectId )
95 if ( this->ArrayId < other.
ArrayId )
140 void SetCacheCapacity(
double sizeInMiB );
147 {
return this->Capacity - this->Size; }
152 int ReduceToSize(
double newSize );
190 void RecomputeSize();
215 #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
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.
VTKCOMMONCORE_EXPORT bool operator<(const vtkUnicodeString &lhs, const vtkUnicodeString &rhs)
std::map< vtkExodusIICacheKey, vtkExodusIICacheEntry * > vtkExodusIICacheSet
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
abstract superclass for arrays of numeric data
#define VTKIOEXODUS_EXPORT
vtkDataArray * GetValue()
vtkExodusIICacheKey(const vtkExodusIICacheKey &src)
std::map< vtkExodusIICacheKey, vtkExodusIICacheEntry * >::iterator vtkExodusIICacheRef