|
Katana Plug-in APIs 0.1
|
00001 #ifndef FnExpressionMathSuite_H 00002 #define FnExpressionMathSuite_H 00003 00004 #include <stdint.h> 00005 00006 extern "C" { 00007 00008 #define FnExpressionMathHostSuite_version 1 00009 00010 #define kFnKatExpressionMathRetimeFreeze 0 00011 #define kFnKatExpressionMathRetimeRepeat 1 00012 #define kFnKatExpressionMathRetimeMirror 2 00013 00014 struct FnExpressionMathHostSuite_v1 00015 { 00016 int32_t (*clampint)(int32_t value, int32_t a, int32_t b); 00017 float (*clampfloat)(float value, float a, float b); 00018 double (*clampdouble)(double value, double a, double b); 00019 00020 float (*lerpfloat)(float mix, float a, float b); 00021 double (*lerpdouble)(double mix, double a, double b); 00022 00023 float (*smoothstepfloat)(float t); 00024 double (*smoothstepdouble)(double t); 00025 00026 float (*fitfloat)(float value, float oldmin, float oldmax, 00027 float newmin, float newmax); 00028 double (*fitdouble)(double value, double oldmin, double oldmax, 00029 double newmin, double newmax); 00030 00031 float (*cfitfloat)(float value, float oldmin, float oldmax, 00032 float newmin, float newmax); 00033 double (*cfitdouble)(double value, double oldmin, double oldmax, 00034 double newmin, double newmax); 00035 00036 float (*softcfitfloat)(float value, float oldmin, float oldmax, 00037 float newmin, float newmax); 00038 double (*softcfitdouble)(double value, double oldmin, double oldmax, 00039 double newmin, double newmax); 00040 00041 double (*retime)(double frame, double start, double end, 00042 int32_t inMode, int32_t outMode); 00043 00044 float (*randvalfloat)(float min, float max, int32_t seed); 00045 double (*randvaldouble)(double min, double max, int32_t seed); 00046 00047 float (*noise1D)(float x); 00048 float (*noise2D)(float x, float y); 00049 float (*noise3D)(float x, float y, float z); 00050 float (*noise4D)(float x, float y, float z, float w); 00051 00052 float (*snoise1D)(float x); 00053 float (*snoise2D)(float x, float y); 00054 float (*snoise3D)(float x, float y, float z); 00055 float (*snoise4D)(float x, float y, float z, float w); 00056 00057 int32_t (*stablehash)(const char *cacheID, int32_t cacheIDSize); 00058 }; 00059 00060 } // extern "C" 00061 00062 #endif
1.7.3