/* ZNoise.hpp Author : Chris Ertel Purpose : Interface class to call noise generation functions. Changelog 2/13/11 - Creation (crertel) */ #ifndef _ZNOISE_H #define _ZNOISE_H #include class ZNoise { public: virtual ~ZNoise() {} /* virtual public ZNoise::reseed Function to set seed for the noise generator. @param _seed - int to seed the noise with. @return (void) */ virtual void reseed (const int _seed) = 0; /* virtual public ZNoise::noise1 Function for getting 1D noise. @param _x - float x coord @return (float) - value of noise at x */ virtual float noise1(const float _x) = 0; /* virtual public ZNoise::noise2 Function for getting 2D noise. @param _x - float x coord @param _y - float y coord @return (float) - value of noise at (x,y) */ virtual float noise2(const float _x, const float _y) = 0; /* virtual public ZNoise::noise3 Function for getting 3D noise. @param _x - float x coord @param _y - float y coord @param _z - float z coord @return (float) - value of noise at (x,y,z) */ virtual float noise3(const float _x, const float _y, const float _z) = 0; /* virtual public ZNoise::noise4 Function for getting 4D noise. @param _x - float x coord @param _y - float y coord @param _z - float z coord @param _w - float w coord @return (float) - value of noise at (x,y,z,w) */ virtual float noise4(const float _x, const float _y, const float _z, const float _w) = 0; }; #endif