// -------------------------------------------------------------- // -------------------------------------------------------------- #ifndef _NOISE_H_ #define _NOISE_H_ #include "synth_defs.h" #define NOISE_LFSR_POLY 0xD0000001 #define NOISE_LFSR_MAX 0xFFFFFFFF // -------------------------------------------------------------- // Types // -------------------------------------------------------------- typedef struct _snoise_gen_t { long state; } noise_gen_t; // -------------------------------------------------------------- #if defined(__cplusplus) extern "C" { #endif // -------------------------------------------------------------- // Exported functions // -------------------------------------------------------------- void Noise_Init(noise_gen_t *pObj, UINT32 seed); void Noise_Free(noise_gen_t *pObj); synth_float_t Noise_Uniform(noise_gen_t *pObj, synth_float_t vmax, synth_float_t mu); synth_float_t Noise_Gaussian(noise_gen_t *pObj, synth_float_t std, synth_float_t mu); #if defined(__cplusplus) } #endif // -------------------------------------------------------------- #endif // _NOISE_H_