Cache

@addtogroup libnoise @{ @addtogroup modules @{ @defgroup miscmodules Miscellaneous Mods @addtogroup miscmodules @{ Noise module that caches the last output value generated by a source module.

If an application passes an input value to the GetValue() method that differs from the previously passed-in input value, this noise module instructs the source module to calculate the output value. This value, as well as the ( @a x, @a y, @a z ) coordinates of the input value, are stored (cached) in this noise module.

If the application passes an input value to the GetValue() method that is equal to the previously passed-in input value, this noise module returns the cached output value without having the source module recalculate the output value.

If an application passes a new source module to the SetSourceMod() method, the cache is invalidated.

Caching a noise module is useful if it is used as a source module for multiple noise modules. If a source module is not cached, the source module will redundantly calculate the same output value once for each noise module in which it is included.

This noise module requires one source module.

Constructors

this
this()

Constructor.

Members

Functions

GetSourceModCount
int GetSourceModCount()
Undocumented in source. Be warned that the author may not have intended to support it.
GetValue
double GetValue(double x, double y, double z)
Undocumented in source. Be warned that the author may not have intended to support it.
SetSourceMod
void SetSourceMod(int index, const(Mod)* sourceMod)
Undocumented in source. Be warned that the author may not have intended to support it.

Variables

m_cachedValue
double m_cachedValue;

The cached output value at the cached input value.

m_isCached
double m_isCached;

Determines if a cached output value is stored in this noise module.

m_xCache
double m_xCache;

@a x coordinate of the cached input value.

m_yCache
double m_yCache;

@a y coordinate of the cached input value.

m_zCache
double m_zCache;

@a z coordinate of the cached input value.

Inherited Members

From Mod

~this
~this()

Destructor.

GetSourceMod
const(Mod) GetSourceMod(int index)

Returns a reference to a source module connected to this noise module.

GetSourceModCount
int GetSourceModCount()

Returns the number of source modules required by this noise module.

GetValue
double GetValue(double x, double y, double z)

Generates an output value given the coordinates of the specified input value.

SetSourceMod
void SetSourceMod(int index, const(Mod)* sourceMod)

Connects a source module to this noise module.

m_pSourceMod
const(Mod)*[] m_pSourceMod;

An array containing the pointers to each source module required by this noise module.

Meta