VVSDK  1.0
The VVAmbisonic Library
AVVTetraParamConv.h
Go to the documentation of this file.
1 //---------------------------------------
2 // utility routines
3 
4 #define _USE_MATH_DEFINES
5 #include <math.h>
6 
7 #define ln10 (2.302585092994)
8 
9 float inline db2level(float db)
10 {
11  return (float)exp(ln10 * ((double)db / 20.0));
12 }
13 
14 float inline level2db(float level)
15 {
16  return (float)(20.0f * log((double)level) / ln10);
17 }
18 
19 float inline degree360Convert (float value)
20 {
21  return (360.0f * value);
22 }
23 
24 float inline degreePM180Convert (float value)
25 {
26  return (360.0f * (value - 0.5f));
27 }
28 
29 float inline zeroTwoConvert (float value)
30 {
31  return (2.0f * value);
32 }
33 
34 int inline oneMAXCAPConvert (float value)
35 {
36  return (int)(((MAXCAP - 1) * value)) + 1;
37 }
38 
39 int inline oneMAXFILTERConvert (float value)
40 {
41  return (int)(((MAXFILTER - 1) * value));
42 }
43 
44 float inline filter2parm (int value)
45 {
46  return ((float)value) / (MAXFILTER - 1);
47 }
48 
49 int inline oneMAXVIEWConvert (float value)
50 {
51  return (int)(((MAXVIEW - 1) * value)) + 1;
52 }
53 
54 float inline view2parm (int value)
55 {
56  return ((float)value - 1) / (MAXVIEW - 1);
57 }
58 
59 float oneMAXFREQConvert (float value)
60 {
61  return (float)(MINFREQ * exp(ln10 * value / FREQRATIO));
62  //return (float)(floor((MAXFREQ - 1) * value)) + 1;
63 }
64 
65 float inline freq2parm(float value)
66 {
67  return (float)(log(value / MINFREQ) * FREQRATIO / ln10);
68 }
69 
70 float inline oneLOWFREQConvert (float value)
71 {
72  return (float)(MINFREQ * exp(ln10 * value / LOWRATIO));
73  //return (float)(floor((MAXFREQ - 1) * value)) + 1;
74 }
75 
76 float inline lowfreq2parm(float value)
77 {
78  return (float)(log(value / MINFREQ) * LOWRATIO / ln10);
79 }
80 
81 bool inline parm2bool(float x)
82 {
83  return (x > .5);
84 }
85 
86 float inline parm2halfpi (float x)
87 {
88  return (float)((M_PI * x) - (M_PI_2));
89 }
90 
91 float inline parm2pi (float x)
92 {
93  return (float)((2 * M_PI * x) - M_PI_2);
94 }
95 
96 float inline parm2PlusMinus12 (float x)
97 {
98  return (24.0f * x) - 12.0f;
99 }
100 
101 float inline plusMinus122parm (float x)
102 {
103  return (x + 12) / 24;
104 }
105 
106 float inline parm2PlusMinus15 (float x)
107 {
108  return (30 * x) - 15.0f;
109 }
110 
111 float inline plusMinus152parm (float x)
112 {
113  return (x + 15) / 30;
114 }
115 
116 float parm2width (float x)
117 {
118  return 5 * x;
119 }
120 
121 float width2parm (float x)
122 {
123  return x / 5;
124 }
125 
#define MAXVIEW
Definition: AVVTetraInternal.h:22
float zeroTwoConvert(float value)
Definition: AVVTetraParamConv.h:29
bool parm2bool(float x)
Definition: AVVTetraParamConv.h:81
#define MAXFILTER
Definition: AVVTetraInternal.h:21
float degreePM180Convert(float value)
Definition: AVVTetraParamConv.h:24
#define MINFREQ
Definition: AVVTetraInternal.h:25
float parm2PlusMinus15(float x)
Definition: AVVTetraParamConv.h:106
#define ln10
Definition: AVVTetraParamConv.h:7
float lowfreq2parm(float value)
Definition: AVVTetraParamConv.h:76
float plusMinus152parm(float x)
Definition: AVVTetraParamConv.h:111
float plusMinus122parm(float x)
Definition: AVVTetraParamConv.h:101
int oneMAXVIEWConvert(float value)
Definition: AVVTetraParamConv.h:49
float db2level(float db)
Definition: AVVTetraParamConv.h:9
float level2db(float level)
Definition: AVVTetraParamConv.h:14
float width2parm(float x)
Definition: AVVTetraParamConv.h:121
float filter2parm(int value)
Definition: AVVTetraParamConv.h:44
#define FREQRATIO
Definition: AVVTetraInternal.h:26
float parm2PlusMinus12(float x)
Definition: AVVTetraParamConv.h:96
float view2parm(int value)
Definition: AVVTetraParamConv.h:54
float oneLOWFREQConvert(float value)
Definition: AVVTetraParamConv.h:70
#define LOWRATIO
Definition: AVVTetraInternal.h:27
float freq2parm(float value)
Definition: AVVTetraParamConv.h:65
float parm2halfpi(float x)
Definition: AVVTetraParamConv.h:86
float parm2width(float x)
Definition: AVVTetraParamConv.h:116
float parm2pi(float x)
Definition: AVVTetraParamConv.h:91
float oneMAXFREQConvert(float value)
Definition: AVVTetraParamConv.h:59
float degree360Convert(float value)
Definition: AVVTetraParamConv.h:19
int oneMAXCAPConvert(float value)
Definition: AVVTetraParamConv.h:34
#define MAXCAP
Definition: AVVTetraInternal.h:18
int oneMAXFILTERConvert(float value)
Definition: AVVTetraParamConv.h:39