Max 5 API Reference
00001 #ifndef _JIT_FUNCTOR_NOISE_H_ 00002 #define _JIT_FUNCTOR_NOISE_H_ 00003 00004 /* 00005 * Copyright 2001-2005 - Cycling '74 00006 * Derek Gerstmann - derek@cycling74.com 00007 * 00008 * Common utilities for the coherent noise functor objects 00009 * 00010 */ 00011 00012 /*************************************************************************/ 00013 00014 #include "jit.common.h" 00015 #include "jit.functor.h" 00016 00017 /*************************************************************************/ 00018 00019 #define JIT_NOISE_F64_MINFILTERWIDTH (1e-6) 00020 #define JIT_NOISE_F32_MINFILTERWIDTH (1e-6f) 00021 #define JIT_NOISE_FIXED_MINFILTERWIDTH (DoubleToFixed(1e-6)) 00022 00023 #define JIT_NOISE_DEFAULT_SEED -1138 00024 #define JIT_NOISE_DEFAULT_TABLESIZE 1024 00025 00026 #define JIT_NOISE_UP 1 00027 #define JIT_NOISE_DOWN 0 00028 00029 #define JIT_NOISE_F32_OFFSET (1e5f) 00030 #define JIT_NOISE_F64_OFFSET (1e7f) 00031 #define JIT_NOISE_FIXED_OFFSET (DoubleToFixed(1e7f)) 00032 00033 #define JIT_NOISE_F32_DISALIGN (1e-6f) 00034 #define JIT_NOISE_F64_DISALIGN (1e-7) 00035 #define JIT_NOISE_FIXED_DISALIGN (DoubleToFixed(1e-7)) 00036 00037 /*************************************************************************/ 00038 00039 t_jit_err jit_functor_noise_evaluator_init( 00040 t_jit_functor_wrapper *x, t_symbol *category, t_symbol *name ); 00041 00042 t_jit_err jit_functor_noise_permutations_init( 00043 long **perm, long count, long seed); 00044 00045 t_jit_err jit_functor_noise_lattice_init( 00046 t_jit_functor_combined_dynarray *lattice, long count, long seed); 00047 00048 t_jit_err jit_functor_noise_lattice_fixed_init( 00049 double *src, long **dest, long count); 00050 00051 t_jit_err jit_functor_noise_lattice_float32_init( 00052 double *src, float **dest, long count); 00053 00054 t_jit_err jit_functor_noise_lattice_float64_init( 00055 double *src, double **dest, long count); 00056 00057 long jit_functor_noise_hash_fixed_eval( 00058 long dimcount, long *vals, long *perm, long mask); 00059 00060 long jit_functor_noise_hash_float32_eval( 00061 long dimcount, float *vals, long *perm, long mask); 00062 00063 long jit_functor_noise_hash_float64_eval( 00064 long dimcount, double *vals, long *perm, long mask); 00065 00066 long jit_functor_noise_lattice_fixed_eval( 00067 long dimcount, long *vals, long *perm, 00068 long *lattice, long mask); 00069 00070 float jit_functor_noise_lattice_float32_eval( 00071 long dimcount, float *vals, long *perm, 00072 float *lattice, long mask); 00073 00074 double jit_functor_noise_lattice_float64_eval( 00075 long dimcount, double *vals, long *perm, 00076 double *lattice, long mask); 00077 00078 /*************************************************************************/ 00079 00080 #endif
Copyright © 2008, Cycling '74