VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkExodusIICache Class Reference

#include <vtkExodusIICache.h>

Inheritance diagram for vtkExodusIICache:
Inheritance graph
[legend]
Collaboration diagram for vtkExodusIICache:
Collaboration graph
[legend]

List of all members.

Public Types

typedef vtkObject Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkExodusIICacheNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
void Clear ()
 Empty the cache.
void SetCacheCapacity (double sizeInMiB)
 Set the maximum allowable cache size. This will remove cache entries if the capacity is reduced below the current size.
double GetSpaceLeft ()
 See how much cache space is left.
int ReduceToSize (double newSize)
 Remove cache entries until the size of the cache is at or below the given size.
void Insert (vtkExodusIICacheKey &key, vtkDataArray *value)
 Insert an entry into the cache (this can remove other cache entries to make space).
vtkDataArray *& Find (vtkExodusIICacheKey)
 Determine whether a cache entry exists.
int Invalidate (vtkExodusIICacheKey key)
 Invalidate a cache entry (drop it from the cache) if the key exists.
int Invalidate (vtkExodusIICacheKey key, vtkExodusIICacheKey pattern)
 Invalidate all cache entries matching a specified pattern, dropping all matches from the cache.

Static Public Member Functions

static vtkExodusIICacheNew ()
static int IsTypeOf (const char *type)
static vtkExodusIICacheSafeDownCast (vtkObjectBase *o)

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkExodusIICache ()
 Default constructor.
 ~vtkExodusIICache ()
 Destructor.
void RecomputeSize ()
 Avoid (some) FP problems.

Protected Attributes

double Capacity
 The capacity of the cache (i.e., the maximum size of all arrays it contains) in MiB.
double Size
 The current size of the cache (i.e., the size of the all the arrays it currently contains) in MiB.
vtkExodusIICacheSet Cache
 A least-recently-used (LRU) cache to hold arrays.
vtkExodusIICacheLRU LRU
 The actual LRU list (indices into the cache ordered least to most recently used).

Detailed Description

Definition at line 121 of file vtkExodusIICache.h.


Member Typedef Documentation

Reimplemented from vtkObject.

Definition at line 125 of file vtkExodusIICache.h.


Constructor & Destructor Documentation

Default constructor.

Destructor.


Member Function Documentation

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkObject.

static int vtkExodusIICache::IsTypeOf ( const char *  name) [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

virtual int vtkExodusIICache::IsA ( const char *  name) [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

Reimplemented from vtkObject.

virtual vtkObjectBase* vtkExodusIICache::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkObject.

Reimplemented from vtkObject.

void vtkExodusIICache::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkObject.

Empty the cache.

Set the maximum allowable cache size. This will remove cache entries if the capacity is reduced below the current size.

See how much cache space is left.

This is the difference between the capacity and the size of the cache. The result is in MiB.

Definition at line 138 of file vtkExodusIICache.h.

Remove cache entries until the size of the cache is at or below the given size.

Returns a nonzero value if deletions were required.

Insert an entry into the cache (this can remove other cache entries to make space).

Determine whether a cache entry exists.

If it does, return it -- otherwise return NULL. If a cache entry exists, it is marked as most recently used.

Invalidate a cache entry (drop it from the cache) if the key exists.

This does nothing if the cache entry does not exist. Returns 1 if the cache entry existed prior to this call and 0 otherwise.

Invalidate all cache entries matching a specified pattern, dropping all matches from the cache.

Any nonzero entry in the pattern forces a comparison between the corresponding value of key. Any cache entries satisfying all the comparisons will be dropped. If pattern is entirely zero, this will empty the entire cache. This is useful for invalidating all entries of a given object type.

Returns the number of cache entries dropped. It is not an error to specify an empty range -- 0 will be returned if one is given.

void vtkExodusIICache::RecomputeSize ( ) [protected]

Avoid (some) FP problems.


Member Data Documentation

The capacity of the cache (i.e., the maximum size of all arrays it contains) in MiB.

Definition at line 185 of file vtkExodusIICache.h.

The current size of the cache (i.e., the size of the all the arrays it currently contains) in MiB.

Definition at line 188 of file vtkExodusIICache.h.

A least-recently-used (LRU) cache to hold arrays.

During RequestData the cache may contain more than its maximum size since the user may request more data than the cache can hold. However, the cache is expunged whenever a new array is loaded. Never count on the cache holding what you request for very long.

Definition at line 197 of file vtkExodusIICache.h.

The actual LRU list (indices into the cache ordered least to most recently used).

Definition at line 200 of file vtkExodusIICache.h.


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