1 // generated from file './/bottlerocket.dsp' by dsp2cc:
2 // Code generated with Faust 0.9.73 (http://faust.grame.fr)
3
4
5 namespace bottlerocket {
6
7 template <int tab_size>
8 struct table1d_imp { // 1-dimensional nonlintabping table
9 float low;
10 float high;
11 float istep;
12 int size;
13 float data[tab_size];
14 };
15
16 static table1d_imp<400> nonlintab __rt_data = {
17 0.0,0.999999999999,407.88,400, {
18 0.0,0.00524365827424,0.0104873165485,0.0157309748227,0.020974633097,
19 0.0262182913712,0.0314619496454,0.0367056079197,0.0419492661939,0.0471929244682,
20 0.0524365827424,0.0576802410166,0.0629238992909,0.0681675575651,0.0734112158394,
21 0.0786548741136,0.0838985323878,0.0891421906621,0.0943858489363,0.0996295072105,
22 0.104873165485,0.110116823759,0.115360482033,0.120604140308,0.125847798582,
23 0.131091456856,0.13633511513,0.141578773404,0.146822431679,0.152066089953,
24 0.157309748227,0.162553406501,0.167797064776,0.17304072305,0.178284381324,
25 0.183528039598,0.188771697873,0.19380726992,0.198511362791,0.203054654885,
26 0.207482232501,0.211817441263,0.216075054907,0.220265421778,0.224396260701,
27 0.228473582829,0.232502219471,0.236486148516,0.240428708288,0.244332744072,
28 0.248200712192,0.252034756159,0.255836763764,0.25960841081,0.263351195206,
29 0.267066463975,0.27075543494,0.274419214349,0.278058811369,0.281675150097,
30 0.285269079625,0.288841382525,0.292392782059,0.295923948351,0.299435503689,
31 0.302928027117,0.306402058429,0.309858101651,0.313296628105,0.316718079097,
32 0.320122868302,0.323511383873,0.326883990323,0.330241030198,0.333582825577,
33 0.33690967942,0.340221876773,0.343519685861,0.346803359073,0.350073133849,
34 0.353329233487,0.35657186788,0.359801234182,0.363017517411,0.366220891015,
35 0.369411517369,0.372589548253,0.375755125274,0.378908380266,0.382049435657,
36 0.385178404807,0.38829539233,0.391400494389,0.394493798976,0.397575386184,
37 0.400645328451,0.403703690811,0.406750531129,0.409785900328,0.412809842615,
38 0.415822395708,0.41882359106,0.42181345408,0.424792004367,0.427759255941,
39 0.430715217482,0.43365989258,0.436593279987,0.439515373889,0.442426164176,
40 0.445325636737,0.448213773757,0.451090554033,0.453955953302,0.456809944578,
41 0.45965249851,0.462483583744,0.465303167305,0.468111214983,0.470907691733,
42 0.47369256208,0.476465790539,0.479227342024,0.481977182276,0.484715278281,
43 0.487441598685,0.49015611421,0.492858798057,0.495549626295,0.498228578245,
44 0.500895636833,0.503550788937,0.506194025702,0.508825342831,0.511444740849,
45 0.51405222534,0.516647807146,0.519231502537,0.521803333347,0.524363327073,
46 0.526911516941,0.529447941935,0.531972646794,0.53448568197,0.536987103565,
47 0.539476973221,0.541955357997,0.544422330209,0.546877967248,0.549322351379,
48 0.551755569516,0.554177712983,0.556588877262,0.558989161726,0.561378669366,
49 0.56375750651,0.566125782543,0.568483609614,0.57083110236,0.573168377617,
50 0.575495554147,0.577812752363,0.580120094066,0.58241770219,0.584705700553,
51 0.586984213624,0.589253366297,0.59151328368,0.593764090889,0.596005912863,
52 0.59823887419,0.600463098936,0.602678710496,0.604885831457,0.607084583465,
53 0.60927508711,0.611457461819,0.613631825762,0.615798295765,0.617956987235,
54 0.620108014091,0.62225148871,0.624387521874,0.626516222728,0.628637698745,
55 0.630752055695,0.632859397628,0.634959826849,0.637053443912,0.639140347612,
56 0.641220634981,0.643294401288,0.645361740046,0.647422743022,0.649477500243,
57 0.651526100011,0.653568628924,0.655605171888,0.657635812137,0.659660631261,
58 0.661679709221,0.663693124378,0.665700953516,0.667703271869,0.669700153146,
59 0.67169166956,0.673677891856,0.675658889336,0.67763472989,0.679605480021,
60 0.68157120488,0.683531968286,0.685487832758,0.687438859547,0.689385108655,
61 0.691326638871,0.693263507792,0.695195771856,0.697123486361,0.699046705499,
62 0.700965482375,0.70287986904,0.704789916506,0.70669567478,0.70859719288,
63 0.710494518867,0.712387699858,0.714276782057,0.716161810772,0.71804283044,
64 0.719919884644,0.721793016138,0.723662266863,0.725527677969,0.727389289834,
65 0.72924714208,0.731101273597,0.732951722553,0.734798526418,0.736641721978,
66 0.738481345349,0.740317431998,0.742150016756,0.74397913383,0.745804816825,
67 0.747627098752,0.749446012044,0.751261588572,0.753073859653,0.754882856068,
68 0.756688608073,0.758491145409,0.760290497316,0.762086692547,0.763879759373,
69 0.765669725598,0.767456618571,0.769240465193,0.771021291929,0.772799124818,
70 0.77457398948,0.776345911129,0.778114914581,0.779881024261,0.781644264212,
71 0.783404658105,0.785162229248,0.78691700059,0.788668994731,0.790418233931,
72 0.792164740113,0.793908534876,0.795649639496,0.797388074939,0.79912386186,
73 0.800857020617,0.802587571272,0.804315533599,0.80604092709,0.807763770961,
74 0.809484084157,0.811201885357,0.812917192981,0.814630025194,0.81634039991,
75 0.818048334802,0.819753847298,0.821456954596,0.823157673659,0.824856021226,
76 0.826552013815,0.828245667725,0.829936999043,0.831626023646,0.833312757205,
77 0.834997215192,0.836679412879,0.838359365346,0.840037087479,0.841712593983,
78 0.843385899374,0.845057017992,0.846725963997,0.848392751379,0.850057393953,
79 0.851719905371,0.853380299117,0.855038588516,0.856694786734,0.858348906779,
80 0.860000961508,0.861650963627,0.863298925693,0.864944860119,0.866588779174,
81 0.868230694988,0.869870619549,0.871508564715,0.873144542205,0.874778563611,
82 0.876410640393,0.878040783885,0.879669005296,0.881295315712,0.882919726098,
83 0.884542247301,0.886162890049,0.887781664956,0.889398582524,0.891013653141,
84 0.892626887086,0.894238294531,0.895847885541,0.897455670074,0.899061657989,
85 0.900665859041,0.902268282885,0.903868939077,0.905467837078,0.907064986253,
86 0.908660395871,0.91025407511,0.911846033056,0.913436278707,0.915024820968,
87 0.916611668662,0.918196830521,0.919780315196,0.921362131252,0.922942287174,
88 0.924520791362,0.92609765214,0.927672877751,0.929246476359,0.930818456055,
89 0.93238882485,0.933957590685,0.935524761422,0.937090344856,0.938654348706,
90 0.940216780623,0.941777648188,0.943336958913,0.944894720242,0.946450939552,
91 0.948005624155,0.949558781296,0.95111041816,0.952660541863,0.954209159464,
92 0.955756277955,0.957301904271,0.958846045286,0.960388707813,0.961929898608,
93 0.96346962437,0.965007891739,0.966544707299,0.968080077578,0.969614009052,
94 0.971146508139,0.972677581205,0.974207234563,0.975735474474,0.977262307148,
95 0.978787738741,0.980311775362,0.981834423068,0.98335568787,0.984875575726,
96 0.98639409255,0.987911244205,0.989427036511,0.990941475239,0.992454566114,
97 0.993966314819,0.995476726989,0.996985808215,0.998493564048,0.999999999991
98 }
99 };
100
101 table1d_imp<2001> tubetab __rt_data = {
102 -5,5,200,2001, {
103 249.98706929,249.986851225,249.986629489,249.986404021,249.986174757,
104 249.985941635,249.985704589,249.985463554,249.985218463,249.984969247,
105 249.984715838,249.984458166,249.984196158,249.983929743,249.983658846,
106 249.983383392,249.983103306,249.982818508,249.982528921,249.982234464,
107 249.981935056,249.981630613,249.981321052,249.981006287,249.98068623,
108 249.980360793,249.980029887,249.979693419,249.979351296,249.979003424,
109 249.978649708,249.978290048,249.977924346,249.9775525,249.977174409,
110 249.976789967,249.976399069,249.976001606,249.97559747,249.975186548,
111 249.974768727,249.974343893,249.973911927,249.973472711,249.973026125,
112 249.972572044,249.972110345,249.9716409,249.971163579,249.970678252,
113 249.970184785,249.969683043,249.969172887,249.968654177,249.968126772,
114 249.967590526,249.967045292,249.96649092,249.965927258,249.965354153,
115 249.964771446,249.964178978,249.963576587,249.962964107,249.962341372,
116 249.961708211,249.96106445,249.960409914,249.959744424,249.959067797,
117 249.95837985,249.957680393,249.956969237,249.956246188,249.955511048,
118 249.954763616,249.95400369,249.953231063,249.952445523,249.951646857,
119 249.950834849,249.950009276,249.949169916,249.94831654,249.947448916,
120 249.946566809,249.945669979,249.944758184,249.943831177,249.942888706,
121 249.941930516,249.940956349,249.93996594,249.938959023,249.937935324,
122 249.936894568,249.935836475,249.934760758,249.933667127,249.932555289,
123 249.931424944,249.930275788,249.929107511,249.9279198,249.926712337,
124 249.925484796,249.92423685,249.922968162,249.921678394,249.9203672,
125 249.91903423,249.917679127,249.916301529,249.914901069,249.913477372,
126 249.912030061,249.910558748,249.909063042,249.907542547,249.905996856,
127 249.904425561,249.902828244,249.901204482,249.899553844,249.897875894,
128 249.896170188,249.894436274,249.892673696,249.890881989,249.889060679,
129 249.887209288,249.885327328,249.883414305,249.881469716,249.879493052,
130 249.877483793,249.875441414,249.87336538,249.87125515,249.869110171,
131 249.866929885,249.864713724,249.86246111,249.860171458,249.857844173,
132 249.855478652,249.853074281,249.850630438,249.848146491,249.845621799,
133 249.843055711,249.840447565,249.837796689,249.835102404,249.832364016,
134 249.829580824,249.826752115,249.823877166,249.820955243,249.8179856,
135 249.81496748,249.811900117,249.80878273,249.80561453,249.802394713,
136 249.799122465,249.795796959,249.792417358,249.788982809,249.785492449,
137 249.781945403,249.778340779,249.774677678,249.770955183,249.767172365,
138 249.763328284,249.759421981,249.75545249,249.751418824,249.747319988,
139 249.743154968,249.738922738,249.734622257,249.730252468,249.725812301,
140 249.72130067,249.716716471,249.712058589,249.70732589,249.702517225,
141 249.697631429,249.692667321,249.687623703,249.682499361,249.677293063,
142 249.672003562,249.666629592,249.661169871,249.655623098,249.649987954,
143 249.644263106,249.638447197,249.632538857,249.626536694,249.620439299,
144 249.614245244,249.607953082,249.601561346,249.59506855,249.588473189,
145 249.581773739,249.574968653,249.568056367,249.561035295,249.553903831,
146 249.546660348,249.5393032,249.531830718,249.524241211,249.516532969,
147 249.508704259,249.500753327,249.492678397,249.48447767,249.476149326,
148 249.467691521,249.459102391,249.450380046,249.441522576,249.432528047,
149 249.423394501,249.414119957,249.404702411,249.395139834,249.385430176,
150 249.37557136,249.365561287,249.355397831,249.345078845,249.334602156,
151 249.323965565,249.313166851,249.302203767,249.291074039,249.27977537,
152 249.268305439,249.256661896,249.244842368,249.232844458,249.220665739,
153 249.208303762,249.195756051,249.183020104,249.170093394,249.156973366,
154 249.143657441,249.130143014,249.116427453,249.102508098,249.088382267,
155 249.074047249,249.059500307,249.044738677,249.029759572,249.014560175,
156 248.999137645,248.983489114,248.967611688,248.951502446,248.935158442,
157 248.918576704,248.901754233,248.884688005,248.867374969,248.84981205,
158 248.831996145,248.813924127,248.795592843,248.776999115,248.75813974,
159 248.739011488,248.719611106,248.699935316,248.679980814,248.659744274,
160 248.639222342,248.618411645,248.597308781,248.575910327,248.554212837,
161 248.532212841,248.509906845,248.487291335,248.464362771,248.441117595,
162 248.417552224,248.393663055,248.369446462,248.344898801,248.320016406,
163 248.29479559,248.269232647,248.243323852,248.217065459,248.190453706,
164 248.163484811,248.136154974,248.108460379,248.080397191,248.05196156,
165 248.02314962,247.993957487,247.964381265,247.934417041,247.904060889,
166 247.87330887,247.84215703,247.810601403,247.778638011,247.746262866,
167 247.713471967,247.680261303,247.646626855,247.612564592,247.578070476,
168 247.543140461,247.507770494,247.471956513,247.435694453,247.398980241,
169 247.3618098,247.32417905,247.286083906,247.247520279,247.208484082,
170 247.168971222,247.128977607,247.088499146,247.047531747,247.00607132,
171 246.964113777,246.921655031,246.878691002,246.835217611,246.791230785,
172 246.746726457,246.701700566,246.656149058,246.610067887,246.563453015,
173 246.516300414,246.468606066,246.420365964,246.371576111,246.322232524,
174 246.272331232,246.221868279,246.170839722,246.119241634,246.067070104,
175 246.014321237,245.960991157,245.907076004,245.852571939,245.79747514,
176 245.74178181,245.685488167,245.628590455,245.571084939,245.512967907,
177 245.454235672,245.394884569,245.334910961,245.274311236,245.213081807,
178 245.151219115,245.08871963,245.02557985,244.9617963,244.897365536,
179 244.832284146,244.766548747,244.700155987,244.633102547,244.565385141,
180 244.497000515,244.427945449,244.358216758,244.287811291,244.216725932,
181 244.144957602,244.072503257,243.999359889,243.92552453,243.850994248,
182 243.775766147,243.699837372,243.623205106,243.545866572,243.467819032,
183 243.389059786,243.309586179,243.229395592,243.148485449,243.066853216,
184 242.984496398,242.901412546,242.817599248,242.733054138,242.647774892,
185 242.561759227,242.475004906,242.387509732,242.299271553,242.210288262,
186 242.120557793,242.030078124,241.938847279,241.846863324,241.754124371,
187 241.660628575,241.566374134,241.471359294,241.375582341,241.279041608,
188 241.181735472,241.083662355,240.984820721,240.885209081,240.784825989,
189 240.683670043,240.581739885,240.479034203,240.375551726,240.271291229,
190 240.166251531,240.060431493,239.95383002,239.846446061,239.738278607,
191 239.629326695,239.5195894,239.409065844,239.29775519,239.185656641,
192 239.072769446,238.959092892,238.84462631,238.729369072,238.61332059,
193 238.496480317,238.378847747,238.260422414,238.141203892,238.021191795,
194 237.900385775,237.778785524,237.656390773,237.533201291,237.409216884,
195 237.284437398,237.158862715,237.032492753,236.905327469,236.777366855,
196 236.648610938,236.519059783,236.388713489,236.257572188,236.125636051,
197 235.992905278,235.859380107,235.725060807,235.58994768,235.454041062,
198 235.31734132,235.179848852,235.041564089,234.902487493,234.762619556,
199 234.6219608,234.480511776,234.338273067,234.195245283,234.051429062,
200 233.906825072,233.761434008,233.615256591,233.468293572,233.320545726,
201 233.172013855,233.022698786,232.872601372,232.721722492,232.570063047,
202 232.417623965,232.264406196,232.110410713,231.955638512,231.800090614,
203 231.643768059,231.48667191,231.328803251,231.170163188,231.010752847,
204 230.850573373,230.689625933,230.527911712,230.365431915,230.202187764,
205 230.0381805,229.873411384,229.707881693,229.541592719,229.374545774,
206 229.206742186,229.038183299,228.868870471,228.698805078,228.527988509,
207 228.356422169,228.184107477,228.011045867,227.837238785,227.662687692,
208 227.487394061,227.311359378,227.134585141,226.957072863,226.778824064,
209 226.59984028,226.420123056,226.239673947,226.058494521,225.876586355,
210 225.693951036,225.510590161,225.326505336,225.141698178,224.956170309,
211 224.769923365,224.582958985,224.39527882,224.206884527,224.017777772,
212 223.827960226,223.637433569,223.446199487,223.254259674,223.061615828,
213 222.868269655,222.674222866,222.479477179,222.284034315,222.087896002,
214 221.891063973,221.693539966,221.495325721,221.296422987,221.096833513,
215 220.896559053,220.695601367,220.493962216,220.291643365,220.088646583,
216 219.884973642,219.680626315,219.475606381,219.269915618,219.063555809,
217 218.856528737,218.64883619,218.440479954,218.231461819,218.021783577,
218 217.811447019,217.600453941,217.388806137,217.176505402,216.963553533,
219 216.749952328,216.535703584,216.3208091,216.105270675,215.889090106,
220 215.672269193,215.454809735,215.23671353,215.017982376,214.798618071,
221 214.578622412,214.357997196,214.136744219,213.914865275,213.692362159,
222 213.469236664,213.245490582,213.021125704,212.796143819,212.570546714,
223 212.344336178,212.117513994,211.890081946,211.662041815,211.433395383,
224 211.204144425,210.97429072,210.74383604,210.512782158,210.281130844,
225 210.048883865,209.816042987,209.582609974,209.348586585,209.113974579,
226 208.878775712,208.642991738,208.406624407,208.169675468,207.932146665,
227 207.694039743,207.455356441,207.216098496,206.976267643,206.735865613,
228 206.494894135,206.253354936,206.011249738,205.76858026,205.52534822,
229 205.281555332,205.037203306,204.792293851,204.54682867,204.300809466,
230 204.054237936,203.807115776,203.559444679,203.311226332,203.062462422,
231 202.813154631,202.563304638,202.312914121,202.06198475,201.810518197,
232 201.558516128,201.305980206,201.05291209,200.799313438,200.545185904,
233 200.290531137,200.035350786,199.779646493,199.5234199,199.266672645,
234 199.009406363,198.751622683,198.493323236,198.234509646,197.975183536,
235 197.715346523,197.455000226,197.194146256,196.932786223,196.670921736,
236 196.408554398,196.145685811,195.882317572,195.618451279,195.354088524,
237 195.089230896,194.823879985,194.558037374,194.291704646,194.024883381,
238 193.757575156,193.489781546,193.221504124,192.952744459,192.68350412,
239 192.413784672,192.143587679,191.872914702,191.601767301,191.330147033,
240 191.058055454,190.785494118,190.512464577,190.238968382,189.965007082,
241 189.690582224,189.415695355,189.14034802,188.864541763,188.588278126,
242 188.311558653,188.034384883,187.756758358,187.478680617,187.200153199,
243 186.921177645,186.641755492,186.36188828,186.081577548,185.800824834,
244 185.519631679,185.237999622,184.955930205,184.673424969,184.390485457,
245 184.107113213,183.823309782,183.539076713,183.254415552,182.969327853,
246 182.683815168,182.397879052,182.111521065,181.824742767,181.537545724,
247 181.249931504,180.961901678,180.673457823,180.384601519,180.095334351,
248 179.805657909,179.515573788,179.225083588,178.934188917,178.642891387,
249 178.351192617,178.059094236,177.766597877,177.473705181,177.1804178,
250 176.886737393,176.592665628,176.298204182,176.003354745,175.708119016,
251 175.412498704,175.116495531,174.820111234,174.523347558,174.226206264,
252 173.92868913,173.630797944,173.332534512,173.033900658,172.734898219,
253 172.435529055,172.13579504,171.835698069,171.53524006,171.234422948,
254 170.933248694,170.631719279,170.32983671,170.027603019,169.725020263,
255 169.422090529,169.118815931,168.815198611,168.511240746,168.206944541,
256 167.902312237,167.597346111,167.292048474,166.986421676,166.680468107,
257 166.374190197,166.06759042,165.760671293,165.453435381,165.145885296,
258 164.8380237,164.529853307,164.221376886,163.912597261,163.603517315,
259 163.294139991,162.984468296,162.674505303,162.36425415,162.05371805,
260 161.742900285,161.431804217,161.120433284,160.808791007,160.496880994,
261 160.184706939,159.872272629,159.559581944,159.246638866,158.933447477,
262 158.620011964,158.306336627,157.992425878,157.678284247,157.363916386,
263 157.049327076,156.734521226,156.419503883,156.104280235,155.788855613,
264 155.473235502,155.15742554,154.841431529,154.525259436,154.2089154,
265 153.89240574,153.575736958,153.258915746,152.941948993,152.624843791,
266 152.307607442,151.990247462,151.672771591,151.3551878,151.037504296,
267 150.719729528,150.4018722,150.083941272,149.765945972,149.4478958,
268 149.129800541,148.811670267,148.493515348,148.17534646,147.857174591,
269 147.539011052,147.220867482,146.90275586,146.584688509,146.266678104,
270 145.948737684,145.630880657,145.313120806,144.995472301,144.677949704,
271 144.360567975,144.043342481,143.726289002,143.409423738,143.092763314,
272 142.776324787,142.46012565,142.144183838,141.828517734,141.513146167,
273 141.198088421,140.883364237,140.56899381,140.254997798,139.941397314,
274 139.628213931,139.31546968,139.003187046,138.691388964,138.380098818,
275 138.069340432,137.759138065,137.449516402,137.140500548,136.832116012,
276 136.524388701,136.217344903,135.911011273,135.605414819,135.300582882,
277 134.99654312,134.693323486,134.390952204,134.089457749,133.788868823,
278 133.489214324,133.190523322,132.89282503,132.596148773,132.300523955,
279 132.005980028,131.712546456,131.420252683,131.129128093,130.839201977,
280 130.550503492,130.263061625,129.97690515,129.692062595,129.408562198,
281 129.126431866,128.845699141,128.566391153,128.288534586,128.012155639,
282 127.737279983,127.463932729,127.19213839,126.921920841,126.653303293,
283 126.386308253,126.120957494,125.857272028,125.595272075,125.334977038,
284 125.076405477,124.819575089,124.564502686,124.311204176,124.059694549,
285 123.809987864,123.562097233,123.316034816,123.071811813,122.829438459,
286 122.588924021,122.3502768,122.113504129,121.878612383,121.645606978,
287 121.414492385,121.185272137,120.957948844,120.732524201,120.508999009,
288 120.287373188,120.067645798,119.849815055,119.633878355,119.419832294,
289 119.207672691,118.997394612,118.788992394,118.582459671,118.377789395,
290 118.174973871,117.974004772,117.774873176,117.577569586,117.382083958,
291 117.188405731,116.996523847,116.806426787,116.618102586,116.431538869,
292 116.246722869,116.063641457,115.882281163,115.702628206,115.524668508,
293 115.348387726,115.173771271,115.000804328,114.82947188,114.659758727,
294 114.491649506,114.325128711,114.160180708,113.996789759,113.834940032,
295 113.674615621,113.515800563,113.358478849,113.20263444,113.048251282,
296 112.895313317,112.743804495,112.593708787,112.445010196,112.297692766,
297 112.151740591,112.007137828,111.863868702,111.721917517,111.581268659,
298 111.441906608,111.303815943,111.166981347,111.031387613,110.897019652,
299 110.763862493,110.63190129,110.501121329,110.371508026,110.243046933,
300 110.115723745,109.989524294,109.864434561,109.740440669,109.617528892,
301 109.495685656,109.374897534,109.255151254,109.1364337,109.018731905,
302 108.902033061,108.786324515,108.671593767,108.557828476,108.445016453,
303 108.333145667,108.222204241,108.112180452,108.003062732,107.894839664,
304 107.787499986,107.681032587,107.575426505,107.470670928,107.366755194,
305 107.263668787,107.161401337,107.059942619,106.959282552,106.859411195,
306 106.760318751,106.661995559,106.564432098,106.467618982,106.37154696,
307 106.276206914,106.181589858,106.087686935,105.994489418,105.901988705,
308 105.81017632,105.719043911,105.628583246,105.538786217,105.44964483,
309 105.361151211,105.273297602,105.186076356,105.09947994,105.013500931,
310 104.928132016,104.843365988,104.759195746,104.675614294,104.592614738,
311 104.510190286,104.428334244,104.347040018,104.266301109,104.186111115,
312 104.106463726,104.027352725,103.948771984,103.870715468,103.793177227,
313 103.716151398,103.639632204,103.563613952,103.48809103,103.41305791,
314 103.33850914,103.26443935,103.190843246,103.117715611,103.045051301,
315 102.972845249,102.901092457,102.829788,102.758927024,102.688504742,
316 102.618516438,102.54895746,102.479823222,102.411109205,102.342810952,
317 102.274924068,102.207444221,102.140367139,102.07368861,102.007404481,
318 101.941510654,101.876003092,101.810877811,101.746130883,101.681758433,
319 101.617756641,101.554121738,101.490850007,101.427937781,101.365381444,
320 101.303177428,101.241322214,101.179812331,101.118644352,101.057814898,
321 100.997320637,100.937158279,100.877324577,100.817816329,100.758630377,
322 100.6997636,100.641212922,100.582975306,100.525047756,100.467427312,
323 100.410111057,100.353096108,100.296379621,100.23995879,100.183830844,
324 100.127993045,100.072442696,100.017177128,99.9621937113,99.9074898464,
325 99.8530629679,99.7989105427,99.7450300696,99.6914190787,99.6380751312,
326 99.5849958187,99.5321787628,99.4796216147,99.4273220547,99.3752777916,
327 99.3234865625,99.2719461323,99.2206542933,99.1696088648,99.1188076924,
328 99.0682486481,99.0179296296,98.9678485599,98.918003387,98.8683920837,
329 98.8190126467,98.769863097,98.7209414788,98.6722458598,98.6237743302,
330 98.5755250031,98.5274960135,98.4796855184,98.4320916962,98.3847127468,
331 98.3375468908,98.2905923695,98.2438474444,98.1973103972,98.1509795293,
332 98.1048531614,98.0589296337,98.013207305,97.9676845528,97.922359773,
333 97.8772313798,97.8322978049,97.7875574979,97.7430089255,97.6986505718,
334 97.6544809376,97.6104985402,97.5667019136,97.5230896077,97.4796601886,
335 97.4364122381,97.3933443532,97.3504551465,97.3077432458,97.2652072933,
336 97.2228459464,97.1806578767,97.1386417702,97.0967963268,97.0551202605,
337 97.0136122989,96.9722711833,96.931095668,96.8900845209,96.8492365225,
338 96.8085504664,96.7680251586,96.7276594179,96.687452075,96.6474019731,
339 96.6075079673,96.5677689244,96.528183723,96.4887512533,96.4494704166,
340 96.4103401258,96.3713593045,96.3325268876,96.2938418206,96.2553030595,
341 96.2169095712,96.1786603327,96.1405543314,96.1025905648,96.0647680402,
342 96.0270857751,95.9895427965,95.9521381411,95.9148708551,95.8777399941,
343 95.840744623,95.8038838156,95.767156655,95.7305622332,95.6940996508,
344 95.6577680174,95.621566451,95.5854940781,95.5495500336,95.5137334607,
345 95.4780435108,95.4424793434,95.4070401257,95.3717250333,95.3365332491,
346 95.3014639639,95.2665163763,95.231689692,95.1969831244,95.1623958942,
347 95.1279272293,95.0935763647,95.0593425426,95.0252250121,94.9912230293,
348 94.957335857,94.9235627648,94.889903029,94.8563559325,94.8229207646,
349 94.7895968211,94.7563834042,94.7232798225,94.6902853904,94.6573994289,
350 94.6246212649,94.5919502312,94.5593856666,94.5269269159,94.4945733296,
351 94.4623242638,94.4301790804,94.398137147,94.3661978366,94.3343605276,
352 94.3026246041,94.2709894553,94.2394544758,94.2080190654,94.1766826291,
353 94.145444577,94.1143043243,94.0832612913,94.052314903,94.0214645895,
354 93.9907097857,93.9600499313,93.9294844707,93.899012853,93.8686345319,
355 93.8383489659,93.8081556177,93.7780539548,93.7480434489,93.7181235762,
356 93.6882938173,93.658553657,93.6289025843,93.5993400927,93.5698656795,
357 93.5404788464,93.5111790989,93.4819659468,93.4528389037,93.4237974873,
358 93.3948412191,93.3659696245,93.3371822327,93.3084785767,93.2798581933,
359 93.2513206229,93.2228654096,93.1944921013,93.1662002492,93.1379894083,
360 93.109859137,93.0818089971,93.0538385542,93.0259473769,92.9981350374,
361 92.9704011112,92.9427451771,92.9151668171,92.8876656167,92.8602411644,
362 92.8328930518,92.8056208739,92.7784242286,92.7513027171,92.7242559433,
363 92.6972835146,92.670385041,92.6435601356,92.6168084145,92.5901294966,
364 92.5635230038,92.5369885607,92.5105257949,92.4841343366,92.4578138189,
365 92.4315638777,92.4053841514,92.3792742812,92.353233911,92.3272626873,
366 92.3013602592,92.2755262785,92.2497603994,92.2240622787,92.1984315757,
367 92.1728679522,92.1473710724,92.1219406032,92.0965762136,92.0712775751,
368 92.0460443617,92.0208762495,91.9957729173,91.9707340457,91.9457593182,
369 91.9208484199,91.8960010388,91.8712168645,91.8464955894,91.8218369075,
370 91.7972405155,91.7727061118,91.7482333973,91.7238220746,91.6994718488,
371 91.6751824268,91.6509535176,91.6267848322,91.6026760837,91.5786269871,
372 91.5546372594,91.5307066197,91.5068347888,91.4830214895,91.4592664466,
373 91.4355693866,91.4119300382,91.3883481315,91.3648233988,91.3413555741,
374 91.3179443931,91.2945895935,91.2712909146,91.2480480975,91.224860885,
375 91.2017290219,91.1786522542,91.1556303301,91.1326629992,91.1097500128,
376 91.086891124,91.0640860873,91.041334659,91.0186365969,90.9959916605,
377 90.9733996109,90.9508602106,90.9283732238,90.9059384162,90.883555555,
378 90.8612244091,90.8389447485,90.8167163451,90.7945389721,90.7724124041,
379 90.7503364174,90.7283107894,90.7063352991,90.6844097271,90.6625338551,
380 90.6407074663,90.6189303453,90.5972022781,90.5755230521,90.5538924558,
381 90.5323102793,90.510776314,90.4892903525,90.4678521887,90.4464616179,
382 90.4251184365,90.4038224425,90.3825734349,90.3613712139,90.3402155812,
383 90.3191063395,90.2980432928,90.2770262463,90.2560550065,90.2351293809,
384 90.2142491783,90.1934142087,90.1726242833,90.1518792142,90.131178815,
385 90.1105229001,90.0899112853,90.0693437874,90.0488202242,90.0283404148,
386 90.0079041793,89.9875113389,89.9671617157,89.9468551333,89.9265914158,
387 89.9063703888,89.8861918787,89.866055713,89.8459617203,89.82590973,
388 89.8058995729,89.7859310803,89.7660040849,89.7461184202,89.7262739206,
389 89.7064704218,89.68670776,89.6669857728,89.6473042984,89.6276631762,
390 89.6080622464,89.5885013501,89.5689803294,89.5494990274,89.5300572878,
391 89.5106549554,89.491291876,89.4719678961,89.4526828632,89.4334366256,
392 89.4142290324,89.3950599338,89.3759291805,89.3568366244,89.3377821181,
393 89.3187655149,89.2997866691,89.2808454357,89.2619416708,89.2430752308,
394 89.2242459734,89.2054537569,89.1866984403,89.1679798835,89.1492979471,
395 89.1306524926,89.1120433823,89.0934704789,89.0749336464,89.056432749,
396 89.0379676522,89.0195382218,89.0011443245,88.9827858277,88.9644625997,
397 88.9461745092,88.927921426,88.9097032202,88.8915197629,88.8733709258,
398 88.8552565813,88.8371766024,88.8191308631,88.8011192377,88.7831416014,
399 88.7651978299,88.7472877998,88.7294113881,88.7115684728,88.6937589321,
400 88.6759826453,88.658239492,88.6405293526,88.6228521081,88.6052076402,
401 88.5875958312,88.5700165638,88.5524697217,88.5349551889,88.5174728501,
402 88.5000225908,88.4826042968,88.4652178545,88.4478631513,88.4305400746,
403 88.413248513,88.3959883551,88.3787594905,88.3615618091,88.3443952016,
404 88.3272595591,88.3101547733,88.2930807364,88.2760373414,88.2590244815,
405 88.2420420507,88.2250899434,88.2081680546,88.1912762799,88.1744145152,
406 88.1575826573,88.1407806031,88.1240082504,88.1072654973,88.0905522424,
407 88.0738683849,88.0572138245,88.0405884613,88.0239921962,88.0074249301,
408 87.9908865649,87.9743770026,87.9578961459,87.941443898,87.9250201625,
409 87.9086248434,87.8922578454,87.8759190734,87.859608433,87.8433258301,
410 87.8270711713,87.8108443633,87.7946453135,87.7784739298,87.7623301204,
411 87.746213794,87.7301248597,87.7140632271,87.6980288064,87.6820215078,
412 87.6660412424,87.6500879215,87.6341614567,87.6182617604,87.6023887451,
413 87.5865423238,87.57072241,87.5549289176,87.5391617608,87.5234208543,
414 87.5077061131,87.4920174528,87.4763547894,87.4607180389,87.4451071183,
415 87.4295219444,87.4139624349,87.3984285076,87.3829200807,87.3674370729,
416 87.3519794032,87.3365469909,87.321139756,87.3057576185,87.2904004989,
417 87.2750683183,87.2597609977,87.2444784589,87.2292206238,87.2139874149,
418 87.1987787547,87.1835945665,87.1684347736,87.1532992998,87.1381880693,
419 87.1231010065,87.1080380363,87.0929990838,87.0779840746,87.0629929344,
420 87.0480255896,87.0330819666,87.0181619923,87.0032655939,86.988392699,
421 86.9735432353,86.9587171311,86.9439143149,86.9291347155,86.914378262,
422 86.899644884,86.8849345112,86.8702470737,86.855582502,86.8409407267,
423 86.8263216789,86.81172529,86.7971514915,86.7826002155,86.7680713942,
424 86.7535649602,86.7390808462,86.7246189855,86.7101793115,86.695761758,
425 86.681366259,86.6669927487,86.6526411619,86.6383114334,86.6240034983,
426 86.6097172923,86.5954527509,86.5812098103,86.5669884067,86.5527884768,
427 86.5386099573,86.5244527855,86.5103168987,86.4962022346,86.4821087312,
428 86.4680363266,86.4539849594,86.4399545682,86.4259450922,86.4119564705,
429 86.3979886428,86.3840415487,86.3701151284,86.356209322,86.3423240703,
430 86.328459314,86.3146149941,86.3007910521,86.2869874293,86.2732040677,
431 86.2594409093,86.2456978963,86.2319749714,86.2182720773,86.204589157,
432 86.1909261539,86.1772830113,86.1636596731,86.1500560831,86.1364721857,
433 86.1229079253,86.1093632464,86.0958380941,86.0823324135,86.0688461498,
434 86.0553792488,86.0419316561,86.0285033179,86.0150941804,86.0017041901,
435 85.9883332936,85.9749814379,85.9616485701,85.9483346376,85.935039588,
436 85.9217633689,85.9085059285,85.8952672149,85.8820471765,85.868845762,
437 85.8556629201,85.8424986001,85.829352751,85.8162253223,85.8031162638,
438 85.7900255253,85.7769530568,85.7638988086,85.7508627312,85.7378447752,
439 85.7248448915,85.7118630312,85.6988991455,85.6859531858,85.6730251039,
440 85.6601148515,85.6472223807,85.6343476437,85.6214905929,85.608651181,
441 85.5958293606,85.5830250847,85.5702383066,85.5574689796,85.5447170572,
442 85.531982493,85.5192652411,85.5065652554,85.4938824903,85.4812169001,
443 85.4685684394,85.4559370631,85.4433227262,85.4307253837,85.4181449909,
444 85.4055815034,85.3930348768,85.380505067,85.36799203,85.3554957218,
445 85.3430160989,85.3305531178,85.3181067352,85.3056769079,85.2932635929,
446 85.2808667474,85.2684863287,85.2561222943,85.243774602,85.2314432095,
447 85.2191280748,85.2068291561,85.1945464117,85.1822798,85.1700292797,
448 85.1577948095,85.1455763484,85.1333738555,85.1211872901,85.1090166115,
449 85.0968617793,85.0847227531,85.0725994929,85.0604919587,85.0484001106,
450 85.036323909,85.0242633142,85.0122182869,85.0001887879,84.988174778,
451 84.9761762183,84.96419307,84.9522252944,84.940272853,84.9283357074,
452 84.9164138193,84.9045071507,84.8926156637,84.8807393203,84.8688780829,
453 84.8570319141,84.8452007763,84.8333846323,84.821583445,84.8097971775,
454 84.7980257927,84.7862692541,84.7745275251,84.7628005691,84.7510883499,
455 84.7393908313,84.7277079772,84.7160397517,84.704386119,84.6927470434,
456 84.6811224894,84.6695124216,84.6579168048,84.6463356037,84.6347687833,
457 84.6232163088,84.6116781453,84.6001542582,84.588644613,84.5771491752,
458 84.5656679107,84.5542007852,84.5427477647,84.5313088153,84.5198839031,
459 84.5084729946,84.4970760562,84.4856930544,84.4743239558,84.4629687275,
460 84.4516273361,84.4402997488,84.4289859327,84.4176858551,84.4063994834,
461 84.395126785,84.3838677277,84.372622279,84.3613904068,84.3501720791,
462 84.338967264,84.3277759297,84.3165980443,84.3054335763,84.2942824943,
463 84.2831447667,84.2720203625,84.2609092503,84.2498113991,84.238726778,
464 84.2276553561,84.2165971027,84.2055519872,84.194519979,84.1835010476,
465 84.1724951629,84.1615022946,84.1505224125,84.1395554866,84.1286014871,
466 84.1176603842,84.1067321481,84.0958167492,84.0849141581,84.0740243453,
467 84.0631472816,84.0522829378,84.0414312847,84.0305922934,84.0197659349,
468 84.0089521804,83.9981510014,83.987362369,83.9765862548,83.9658226305,
469 83.9550714676,83.944332738,83.9336064135,83.922892466,83.9121908677,
470 83.9015015907,83.8908246072,83.8801598895,83.8695074102,83.8588671416,
471 83.8482390564,83.8376231274,83.8270193272,83.8164276289,83.8058480053,
472 83.7952804295,83.7847248747,83.774181314,83.763649721,83.7531300688,
473 83.7426223311,83.7321264815,83.7216424936,83.7111703411,83.700709998,
474 83.6902614382,83.6798246356,83.6693995644,83.6589861988,83.648584513,
475 83.6381944814,83.6278160785,83.6174492788,83.6070940568,83.5967503873,
476 83.586418245,83.5760976048,83.5657884417,83.5554907305,83.5452044465,
477 83.5349295648,83.5246660606,83.5144139094,83.5041730864,83.4939435673,
478 83.4837253275,83.4735183427,83.4633225887,83.4531380413,83.4429646763,
479 83.4328024696,83.4226513974,83.4125114358,83.4023825609,83.392264749,
480 83.3821579764,83.3720622196,83.361977455,83.3519036592,83.3418408089,
481 83.3317888807,83.3217478514,83.3117176979,83.3016983972,83.2916899262,
482 83.281692262,83.2717053817,83.2617292627,83.251763882,83.2418092172,
483 83.2318652457,83.2219319449,83.2120092924,83.2020972659,83.1921958431,
484 83.1823050018,83.1724247198,83.162554975,83.1526957454,83.1428470091,
485 83.1330087443,83.123180929,83.1133635416,83.1035565603,83.0937599636,
486 83.08397373,83.0741978379,83.064432266,83.0546769929,83.0449319973,
487 83.035197258,83.0254727539,83.0157584639,83.006054367,82.9963604422,
488 82.9866766686,82.9770030254,82.9673394918,82.9576860472,82.9480426709,
489 82.9384093423,82.9287860409,82.9191727463,82.9095694381,82.8999760959,
490 82.8903926995,82.8808192286,82.8712556633,82.8617019832,82.8521581685,
491 82.8426241992,82.8331000553,82.8235857171,82.8140811647,82.8045863785,
492 82.7951013386,82.7856260257,82.77616042,82.7667045022,82.7572582527,
493 82.7478216522,82.7383946815,82.7289773211,82.719569552,82.710171355,
494 82.700782711,82.6914036009,82.6820340059,82.6726739069,82.6633232851,
495 82.6539821217,82.644650398,82.6353280953,82.6260151948,82.6167116781,
496 82.6074175266,82.5981327217,82.5888572452,82.5795910786,82.5703342036,
497 82.5610866019,82.5518482554,82.5426191458,82.5333992551,82.5241885652,
498 82.5149870582,82.505794716,82.4966115208,82.4874374547,82.4782724999,
499 82.4691166388,82.4599698535,82.4508321266,82.4417034403,82.4325837772,
500 82.4234731197,82.4143714505,82.4052787521,82.3961950073,82.3871201986,
501 82.378054309,82.3689973211,82.3599492179,82.3509099823,82.3418795973,
502 82.3328580457,82.3238453108,82.3148413756,82.3058462233,82.296859837,
503 82.2878822
504 }
505 };
506
507 class Dsp: public PluginLV2 {
508 private:
509 uint32_t fSamplingFreq;
510 int iConst0;
511 double fConst1;
512 double fConst2;
513 double fConst3;
514 double fConst4;
515 double fConst5;
516 FAUSTFLOAT fslider0;
517 FAUSTFLOAT *fslider0_;
518 double fRec0[2];
519 double fConst6;
520 double fConst7;
521 double fConst8;
522 double fConst9;
523 FAUSTFLOAT fslider1;
524 FAUSTFLOAT *fslider1_;
525 double fRec1[2];
526 double fConst10;
527 double fConst11;
528 double fConst12;
529 double fConst13;
530 double fConst14;
531 double fConst15;
532 double fConst16;
533 double fConst17;
534 double fConst18;
535 double fConst19;
536 double fConst20;
537 double fConst21;
538 double fConst22;
539 double fConst23;
540 double fConst24;
541 double fConst25;
542 FAUSTFLOAT fslider2;
543 FAUSTFLOAT *fslider2_;
544 double fRec2[2];
545 double fConst26;
546 double fConst27;
547 double fConst28;
548 double fConst29;
549 double fConst30;
550 double fConst31;
551 double fConst32;
552 double fConst33;
553 double fConst34;
554 double fConst35;
555 double fConst36;
556 double fConst37;
557 double fConst38;
558 double fConst39;
559 double fConst40;
560 double fConst41;
561 double fConst42;
562 double fConst43;
563 double fConst44;
564 double fConst45;
565 double fConst46;
566 double fConst47;
567 double fConst48;
568 double fConst49;
569 double fConst50;
570 double fConst51;
571 double fConst52;
572 double fConst53;
573 double fConst54;
574 double fConst55;
575 double fConst56;
576 double fConst57;
577 double fConst58;
578 double fConst59;
579 double fConst60;
580 double fConst61;
581 double fConst62;
582 double fConst63;
583 double fConst64;
584 double fConst65;
585 double fConst66;
586 double fConst67;
587 double fConst68;
588 double fConst69;
589 double fConst70;
590 double fConst71;
591 double fConst72;
592 double fConst73;
593 double fConst74;
594 double fConst75;
595 double fConst76;
596 double fConst77;
597 double fConst78;
598 double fConst79;
599 double fConst80;
600 double fConst81;
601 double fConst82;
602 double fConst83;
603 double fConst84;
604 double fConst85;
605 double fConst86;
606 double fConst87;
607 double fConst88;
608 double fConst89;
609 double fConst90;
610 double fConst91;
611 double fConst92;
612 double fConst93;
613 double fConst94;
614 double fConst95;
615 double fConst96;
616 double fConst97;
617 double fConst98;
618 double fConst99;
619 double fConst100;
620 double fConst101;
621 double fConst102;
622 double fConst103;
623 double fConst104;
624 double fConst105;
625 double fConst106;
626 double fConst107;
627 double fConst108;
628 double fConst109;
629 double fConst110;
630 double fConst111;
631 double fConst112;
632 double fConst113;
633 double fConst114;
634 double fConst115;
635 double fConst116;
636 double fConst117;
637 double fConst118;
638 double fConst119;
639 double fConst120;
640 double fConst121;
641 double fConst122;
642 double fConst123;
643 double fConst124;
644 double fConst125;
645 double fConst126;
646 double fConst127;
647 double fConst128;
648 double fConst129;
649 double fConst130;
650 double fConst131;
651 double fConst132;
652 double fConst133;
653 double fConst134;
654 double fConst135;
655 double fConst136;
656 double fConst137;
657 double fConst138;
658 double fConst139;
659 double fConst140;
660 double fConst141;
661 double fConst142;
662 double fConst143;
663 double fConst144;
664 double fConst145;
665 double fConst146;
666 double fConst147;
667 double fConst148;
668 double fConst149;
669 double fConst150;
670 double fConst151;
671 double fConst152;
672 double fConst153;
673 double fConst154;
674 double fConst155;
675 double fConst156;
676 double fConst157;
677 double fConst158;
678 double fConst159;
679 double fConst160;
680 FAUSTFLOAT fslider3;
681 FAUSTFLOAT *fslider3_;
682 double fRec10[2];
683 double fConst161;
684 double fConst162;
685 double fConst163;
686 double fConst164;
687 double fConst165;
688 double fConst166;
689 double fConst167;
690 double fConst168;
691 double fConst169;
692 double fConst170;
693 double fConst171;
694 double fConst172;
695 double fConst173;
696 double fConst174;
697 double fConst175;
698 double fConst176;
699 double fConst177;
700 double fConst178;
701 double fConst179;
702 double fConst180;
703 double fConst181;
704 double fConst182;
705 double fRec11[5];
706 double fConst183;
707 double fConst184;
708 double fConst185;
709 double fConst186;
710 double fConst187;
711 double fConst188;
712 double fConst189;
713 double fConst190;
714 double fConst191;
715 double fConst192;
716 double fVec0[2];
717 double fRec9[2];
718 double fRec8[3];
719 double fConst193;
720 double fConst194;
721 double fConst195;
722 double fConst196;
723 double fRec12[2];
724 double fRec7[3];
725 double fConst197;
726 double fConst198;
727 double fConst199;
728 double fConst200;
729 double fConst201;
730 double fRec6[2];
731 double fRec5[2];
732 double fConst202;
733 double fConst203;
734 double fConst204;
735 double fConst205;
736 double fRec4[5];
737 double fConst206;
738 double fConst207;
739 double fConst208;
740 double fConst209;
741 double fConst210;
742 double fConst211;
743 double fRec3[8];
744 double fConst212;
745 double fConst213;
746 double fConst214;
747 double fConst215;
748 double fConst216;
749 double fConst217;
750 double fConst218;
751 double fConst219;
752 double fConst220;
753 double fConst221;
754 double fConst222;
755 double fConst223;
756 double fConst224;
757 double fConst225;
758 double fConst226;
759 double fConst227;
760 double fConst228;
761 double fConst229;
762 double fConst230;
763 double fConst231;
764 double fConst232;
765 double fConst233;
766 double fConst234;
767 double fConst235;
768 double fConst236;
769 double fConst237;
770 double fConst238;
771 double fConst239;
772 double fConst240;
773 double fConst241;
774 double fConst242;
775 double fConst243;
776 double fConst244;
777 double fConst245;
778 double fConst246;
779 double fConst247;
780 void connect(uint32_t port,void* data);
781 void clear_state_f();
782 void init(uint32_t samplingFreq);
783 void compute(int count, FAUSTFLOAT *input0, FAUSTFLOAT *output0);
784
785 static void clear_state_f_static(PluginLV2*);
786 static void init_static(uint32_t samplingFreq, PluginLV2*);
787 static double nonlin(double x);
788 static double Ftube(double Vgk);
789 static void compute_static(int count, FAUSTFLOAT *input0, FAUSTFLOAT *output0, PluginLV2*);
790 static void del_instance(PluginLV2 *p);
791 static void connect_static(uint32_t port,void* data, PluginLV2 *p);
792 public:
793 Dsp();
794 ~Dsp();
795 };
796
797
798
Dsp()799 Dsp::Dsp()
800 : PluginLV2() {
801 version = PLUGINLV2_VERSION;
802 id = "bottlerocket";
803 name = N_("bottlerocket");
804 mono_audio = compute_static;
805 stereo_audio = 0;
806 set_samplerate = init_static;
807 activate_plugin = 0;
808 connect_ports = connect_static;
809 clear_state = clear_state_f_static;
810 delete_instance = del_instance;
811 }
812
~Dsp()813 Dsp::~Dsp() {
814 }
815
clear_state_f()816 inline void Dsp::clear_state_f()
817 {
818 for (int i=0; i<2; i++) fRec0[i] = 0;
819 for (int i=0; i<2; i++) fRec1[i] = 0;
820 for (int i=0; i<2; i++) fRec2[i] = 0;
821 for (int i=0; i<2; i++) fRec10[i] = 0;
822 for (int i=0; i<5; i++) fRec11[i] = 0;
823 for (int i=0; i<2; i++) fVec0[i] = 0;
824 for (int i=0; i<2; i++) fRec9[i] = 0;
825 for (int i=0; i<3; i++) fRec8[i] = 0;
826 for (int i=0; i<2; i++) fRec12[i] = 0;
827 for (int i=0; i<3; i++) fRec7[i] = 0;
828 for (int i=0; i<2; i++) fRec6[i] = 0;
829 for (int i=0; i<2; i++) fRec5[i] = 0;
830 for (int i=0; i<5; i++) fRec4[i] = 0;
831 for (int i=0; i<8; i++) fRec3[i] = 0;
832 }
833
clear_state_f_static(PluginLV2 * p)834 void Dsp::clear_state_f_static(PluginLV2 *p)
835 {
836 static_cast<Dsp*>(p)->clear_state_f();
837 }
838
init(uint32_t samplingFreq)839 inline void Dsp::init(uint32_t samplingFreq)
840 {
841 fSamplingFreq = samplingFreq;
842 iConst0 = min(192000, max(1, fSamplingFreq));
843 fConst1 = double(iConst0);
844 fConst2 = (2.56019261426976e-33 * fConst1);
845 fConst3 = (1.08602356418274e-10 + (fConst1 * (3.69623160331409e-12 + (fConst1 * (6.1392600422157e-15 + (fConst1 * (1.31841039116102e-18 + (fConst1 * (8.74614985810583e-23 + (fConst1 * (1.5403121926334e-27 + fConst2)))))))))));
846 fConst4 = (7.7581594371811e-34 * fConst1);
847 fConst5 = (5.91025091384317e-13 + (fConst1 * (1.03383282720476e-15 + (fConst1 * (2.80284580289236e-19 + (fConst1 * (2.37458693671756e-23 + (fConst1 * (4.62059355684558e-28 + fConst4)))))))));
848 fConst6 = (2.1334938452248e-32 * fConst1);
849 fConst7 = (fConst1 * ((fConst1 * ((fConst1 * ((fConst1 * (0 - (2.40179103814603e-27 + fConst6))) - 3.56709268829075e-23)) - 5.77265406286601e-20)) - 1.75095359671183e-18));
850 fConst8 = (2.05591225085299e-32 * fConst1);
851 fConst9 = (1.40076287736946e-14 + (fConst1 * (4.63493240482125e-16 + (fConst1 * (3.40990806209747e-19 + (fConst1 * (5.3587860586933e-23 + (fConst1 * (2.4851302908953e-27 + fConst8)))))))));
852 fConst10 = (7.04052968924185e-32 * fConst1);
853 fConst11 = ((fConst1 * ((fConst1 * ((fConst1 * ((fConst1 * (0 - (8.35260919492685e-27 + fConst10))) - 1.61870799757925e-22)) - 5.37755564226007e-19)) - 1.91244772177744e-16)) - 5.4041777676291e-15);
854 fConst12 = (6.78451042781488e-32 * fConst1);
855 fConst13 = (1.53514618807888e-12 + (fConst1 * (4.48627502640417e-15 + (fConst1 * (1.81314904250947e-18 + (fConst1 * (2.22804523480507e-22 + (fConst1 * (8.61211241012509e-27 + fConst12)))))))));
856 fConst14 = (4.09282492757411e-35 * fConst1);
857 fConst15 = (6.80590561498075e-12 + (fConst1 * (6.98662516211683e-14 + (fConst1 * (1.01748278788345e-16 + (fConst1 * (2.14291243948384e-20 + (fConst1 * (1.40869417800782e-24 + (fConst1 * (2.46886975641615e-29 + fConst14)))))))))));
858 fConst16 = (3.41068743964509e-34 * fConst1);
859 fConst17 = (fConst1 * ((fConst1 * ((fConst1 * ((fConst1 * (0 - (3.84184182096519e-29 + fConst16))) - 5.7277490204579e-25)) - 9.60278075049996e-22)) - 8.75476798355914e-20));
860 fConst18 = (3.28666244183982e-34 * fConst1);
861 fConst19 = (6.98630485088019e-16 + (fConst1 * (7.71554764680033e-18 + (fConst1 * (5.47608983953722e-21 + (fConst1 * (8.57175765008426e-25 + (fConst1 * (3.9731118716408e-29 + fConst18)))))))));
862 fConst20 = (1.24024997805276e-35 * fConst1);
863 fConst21 = (8.80837742701402e-13 + (fConst1 * (1.10009619872997e-14 + (fConst1 * (1.72270053398535e-17 + (fConst1 * (4.57007197290703e-21 + (fConst1 * (3.82673951875399e-25 + (fConst1 * (7.40625683895483e-30 + fConst20)))))))))));
864 fConst22 = (1.12552685508288e-33 * fConst1);
865 fConst23 = (fConst1 * ((fConst1 * ((fConst1 * ((fConst1 * ((fConst1 * (0 - (1.33602154971142e-28 + fConst22))) - 2.59651304204151e-24)) - 8.76674872141931e-21)) - 3.6176430644952e-18)) - 2.70208888381455e-16));
866 fConst24 = (1.08459860580714e-33 * fConst1);
867 fConst25 = (2.15626692928401e-12 + (fConst1 * (2.90309169877006e-14 + (fConst1 * (7.31452260559375e-17 + (fConst1 * (2.90772719847952e-20 + (fConst1 * (3.56354489991342e-24 + (fConst1 * (1.37686016647826e-28 + fConst24)))))))))));
868 fConst26 = (1.38174017162741e-21 * fConst1);
869 fConst27 = faustpower<2>(fConst1);
870 fConst28 = (fConst27 * (fConst26 - 1.01598542031427e-18));
871 fConst29 = (1.93443624027837e-22 * fConst1);
872 fConst30 = ((fConst1 * (2.16534594793363e-15 + (fConst1 * (fConst29 - 1.48381946931304e-18)))) - 8.66830113927708e-13);
873 fConst31 = (8.64322575443528e-20 * fConst1);
874 fConst32 = ((fConst1 * (6.64930032529084e-17 - fConst31)) - 2.16167110705164e-15);
875 fConst33 = (1.21005160562094e-20 * fConst1);
876 fConst34 = ((fConst1 * (7.81608392203304e-17 - fConst33)) - 5.09289712821366e-14);
877 fConst35 = (1.08602356418274e-10 + (fConst1 * ((fConst1 * (6.1392600422157e-15 + (fConst1 * ((fConst1 * (8.74614985810583e-23 + (fConst1 * (fConst2 - 1.5403121926334e-27)))) - 1.31841039116102e-18)))) - 3.69623160331409e-12)));
878 fConst36 = ((fConst1 * (1.03383282720476e-15 + (fConst1 * ((fConst1 * (2.37458693671756e-23 + (fConst1 * (fConst4 - 4.62059355684558e-28)))) - 2.80284580289236e-19)))) - 5.91025091384317e-13);
879 fConst37 = (fConst1 * ((fConst1 * (5.77265406286601e-20 + (fConst1 * ((fConst1 * (2.40179103814603e-27 - fConst6)) - 3.56709268829075e-23)))) - 1.75095359671183e-18));
880 fConst38 = ((fConst1 * (4.63493240482125e-16 + (fConst1 * ((fConst1 * (5.3587860586933e-23 + (fConst1 * (fConst8 - 2.4851302908953e-27)))) - 3.40990806209747e-19)))) - 1.40076287736946e-14);
881 fConst39 = (5.4041777676291e-15 + (fConst1 * ((fConst1 * (5.37755564226007e-19 + (fConst1 * ((fConst1 * (8.35260919492685e-27 - fConst10)) - 1.61870799757925e-22)))) - 1.91244772177744e-16)));
882 fConst40 = ((fConst1 * (4.48627502640417e-15 + (fConst1 * ((fConst1 * (2.22804523480507e-22 + (fConst1 * (fConst12 - 8.61211241012509e-27)))) - 1.81314904250947e-18)))) - 1.53514618807888e-12);
883 fConst41 = ((fConst1 * (6.98662516211683e-14 + (fConst1 * ((fConst1 * (2.14291243948384e-20 + (fConst1 * ((fConst1 * (2.46886975641615e-29 - fConst14)) - 1.40869417800782e-24)))) - 1.01748278788345e-16)))) - 6.80590561498075e-12);
884 fConst42 = (fConst1 * (8.75476798355914e-20 + (fConst1 * ((fConst1 * (5.7277490204579e-25 + (fConst1 * (fConst16 - 3.84184182096519e-29)))) - 9.60278075049996e-22))));
885 fConst43 = (6.98630485088019e-16 + (fConst1 * ((fConst1 * (5.47608983953722e-21 + (fConst1 * ((fConst1 * (3.9731118716408e-29 - fConst18)) - 8.57175765008426e-25)))) - 7.71554764680033e-18)));
886 fConst44 = ((fConst1 * (1.10009619872997e-14 + (fConst1 * ((fConst1 * (4.57007197290703e-21 + (fConst1 * ((fConst1 * (7.40625683895483e-30 - fConst20)) - 3.82673951875399e-25)))) - 1.72270053398535e-17)))) - 8.80837742701402e-13);
887 fConst45 = (fConst1 * ((fConst1 * (3.6176430644952e-18 + (fConst1 * ((fConst1 * (2.59651304204151e-24 + (fConst1 * (fConst22 - 1.33602154971142e-28)))) - 8.76674872141931e-21)))) - 2.70208888381455e-16));
888 fConst46 = ((fConst1 * (2.90309169877006e-14 + (fConst1 * ((fConst1 * (2.90772719847952e-20 + (fConst1 * ((fConst1 * (1.37686016647826e-28 - fConst24)) - 3.56354489991342e-24)))) - 7.31452260559375e-17)))) - 2.15626692928401e-12);
889 fConst47 = (1.28009630713488e-32 * fConst1);
890 fConst48 = (7.60216494927921e-10 + (fConst1 * ((fConst1 * (1.84177801266471e-14 + (fConst1 * ((fConst1 * ((fConst1 * (4.62093657790021e-27 - fConst47)) - 8.74614985810583e-23)) - 1.31841039116102e-18)))) - 1.84811580165704e-11)));
891 fConst49 = (3.87907971859055e-33 * fConst1);
892 fConst50 = ((fConst1 * (3.10149848161427e-15 + (fConst1 * ((fConst1 * ((fConst1 * (1.38617806705367e-27 - fConst49)) - 2.37458693671756e-23)) - 2.80284580289236e-19)))) - 2.95512545692159e-12);
893 fConst51 = (1.0667469226124e-31 * fConst1);
894 fConst52 = (fConst1 * ((fConst1 * (5.77265406286601e-20 + (fConst1 * (3.56709268829075e-23 + (fConst1 * (fConst51 - 7.20537311443808e-27)))))) - 5.25286079013548e-18));
895 fConst53 = (1.0279561254265e-31 * fConst1);
896 fConst54 = ((fConst1 * (1.39047972144637e-15 + (fConst1 * ((fConst1 * ((fConst1 * (7.4553908726859e-27 - fConst53)) - 5.3587860586933e-23)) - 3.40990806209747e-19)))) - 7.00381438684731e-14);
897 fConst55 = (3.52026484462093e-31 * fConst1);
898 fConst56 = (2.70208888381455e-14 + (fConst1 * ((fConst1 * (5.37755564226007e-19 + (fConst1 * (1.61870799757925e-22 + (fConst1 * (fConst55 - 2.50578275847805e-26)))))) - 5.73734316533233e-16)));
899 fConst57 = (3.39225521390744e-31 * fConst1);
900 fConst58 = ((fConst1 * (1.34588250792125e-14 + (fConst1 * ((fConst1 * ((fConst1 * (2.58363372303753e-26 - fConst57)) - 2.22804523480507e-22)) - 1.81314904250947e-18)))) - 7.67573094039439e-12);
901 fConst59 = (2.86497744930188e-34 * fConst1);
902 fConst60 = ((fConst1 * (2.09598754863505e-13 + (fConst1 * ((fConst1 * ((fConst1 * (4.22608253402345e-24 + (fConst1 * (fConst59 - 1.23443487820807e-28)))) - 2.14291243948384e-20)) - 1.01748278788345e-16)))) - 3.40295280749037e-11);
903 fConst61 = (2.38748120775157e-33 * fConst1);
904 fConst62 = (fConst1 * (8.75476798355914e-20 + (fConst1 * (9.60278075049996e-22 + (fConst1 * ((fConst1 * (1.9209209104826e-28 - fConst61)) - 1.71832470613737e-24))))));
905 fConst63 = (2.30066370928787e-33 * fConst1);
906 fConst64 = (2.09589145526406e-15 + (fConst1 * ((fConst1 * ((fConst1 * (2.57152729502528e-24 + (fConst1 * (fConst63 - 1.9865559358204e-28)))) - 5.47608983953722e-21)) - 7.71554764680033e-18)));
907 fConst65 = (8.68174984636933e-35 * fConst1);
908 fConst66 = ((fConst1 * (3.30028859618991e-14 + (fConst1 * ((fConst1 * ((fConst1 * (1.1480218556262e-24 + (fConst1 * (fConst65 - 3.70312841947741e-29)))) - 4.57007197290703e-21)) - 1.72270053398535e-17)))) - 4.40418871350701e-12);
909 fConst67 = (7.87868798558017e-33 * fConst1);
910 fConst68 = (fConst1 * ((fConst1 * (3.6176430644952e-18 + (fConst1 * (8.76674872141931e-21 + (fConst1 * ((fConst1 * (6.68010774855708e-28 - fConst67)) - 7.78953912612452e-24)))))) - 8.10626665144365e-16));
911 fConst69 = (7.59219024064998e-33 * fConst1);
912 fConst70 = ((fConst1 * (8.70927509631017e-14 + (fConst1 * ((fConst1 * ((fConst1 * (1.06906346997403e-23 + (fConst1 * (fConst69 - 6.88430083239131e-28)))) - 2.90772719847952e-20)) - 7.31452260559375e-17)))) - 1.07813346464201e-11);
913 fConst71 = (2.30417335284279e-32 * fConst1);
914 fConst72 = (2.28064948478376e-09 + (fConst1 * ((fConst1 * (6.1392600422157e-15 + (fConst1 * (3.95523117348307e-18 + (fConst1 * ((fConst1 * (fConst71 - 1.5403121926334e-27)) - 2.62384495743175e-22)))))) - 3.32660844298268e-11)));
915 fConst73 = (6.982343493463e-33 * fConst1);
916 fConst74 = ((fConst1 * (1.03383282720476e-15 + (fConst1 * (8.40853740867708e-19 + (fConst1 * ((fConst1 * (fConst73 - 4.62059355684558e-28)) - 7.12376081015269e-23)))))) - 5.31922582245886e-12);
917 fConst75 = (1.92014446070232e-31 * fConst1);
918 fConst76 = (fConst1 * ((fConst1 * ((fConst1 * (1.07012780648723e-22 + (fConst1 * (2.40179103814603e-27 - fConst75)))) - 1.7317962188598e-19)) - 1.75095359671183e-18));
919 fConst77 = (1.85032102576769e-31 * fConst1);
920 fConst78 = ((fConst1 * (4.63493240482125e-16 + (fConst1 * (1.02297241862924e-18 + (fConst1 * ((fConst1 * (fConst77 - 2.4851302908953e-27)) - 1.60763581760799e-22)))))) - 1.26068658963252e-13);
921 fConst79 = (6.33647672031767e-31 * fConst1);
922 fConst80 = (4.86375999086619e-14 + (fConst1 * ((fConst1 * ((fConst1 * (4.85612399273775e-22 + (fConst1 * (8.35260919492685e-27 - fConst79)))) - 1.61326669267802e-18)) - 1.91244772177744e-16)));
923 fConst81 = (6.10605938503339e-31 * fConst1);
924 fConst82 = ((fConst1 * (4.48627502640417e-15 + (fConst1 * (5.4394471275284e-18 + (fConst1 * ((fConst1 * (fConst81 - 8.61211241012509e-27)) - 6.6841357044152e-22)))))) - 1.38163156927099e-11);
925 fConst83 = (8.59493234790564e-34 * fConst1);
926 fConst84 = ((fConst1 * (6.98662516211683e-14 + (fConst1 * (3.05244836365035e-16 + (fConst1 * ((fConst1 * ((fConst1 * (2.22198278077453e-28 - fConst83)) - 1.40869417800782e-24)) - 6.42873731845153e-20)))))) - 6.12531505348267e-11);
927 fConst85 = (7.1624436232547e-33 * fConst1);
928 fConst86 = (fConst1 * ((fConst1 * (2.88083422514999e-21 + (fConst1 * (5.7277490204579e-25 + (fConst1 * (fConst85 - 3.45765763886867e-28)))))) - 2.62643039506774e-19));
929 fConst87 = (6.90199112786362e-33 * fConst1);
930 fConst88 = (6.98630485088019e-16 + (fConst1 * (2.3146642940401e-17 + (fConst1 * ((fConst1 * ((fConst1 * (3.57580068447672e-28 - fConst87)) - 8.57175765008426e-25)) - 1.64282695186117e-20)))));
931 fConst89 = (2.6045249539108e-34 * fConst1);
932 fConst90 = ((fConst1 * (1.10009619872997e-14 + (fConst1 * (5.16810160195606e-17 + (fConst1 * ((fConst1 * ((fConst1 * (6.66563115505934e-29 - fConst89)) - 3.82673951875399e-25)) - 1.37102159187211e-20)))))) - 7.92753968431262e-12);
933 fConst91 = (2.36360639567405e-32 * fConst1);
934 fConst92 = (fConst1 * ((fConst1 * ((fConst1 * (2.63002461642579e-20 + (fConst1 * (2.59651304204151e-24 + (fConst1 * (fConst91 - 1.20241939474027e-27)))))) - 1.08529291934856e-17)) - 2.70208888381455e-16));
935 fConst93 = (2.27765707219499e-32 * fConst1);
936 fConst94 = ((fConst1 * (2.90309169877006e-14 + (fConst1 * (2.19435678167812e-16 + (fConst1 * ((fConst1 * ((fConst1 * (1.23917414983044e-27 - fConst93)) - 3.56354489991342e-24)) - 8.72318159543856e-20)))))) - 1.94064023635561e-11);
937 fConst95 = (3.8010824746396e-09 + (fConst1 * ((fConst1 * ((fConst1 * (3.95523117348307e-18 + (fConst1 * (2.62384495743175e-22 + (fConst1 * (0 - (7.70156096316702e-27 + fConst47))))))) - 3.06963002110785e-14)) - 1.84811580165704e-11)));
938 fConst96 = ((fConst1 * ((fConst1 * (8.40853740867708e-19 + (fConst1 * (7.12376081015269e-23 + (fConst1 * (0 - (2.31029677842279e-27 + fConst49))))))) - 5.16916413602379e-15)) - 2.95512545692159e-12);
939 fConst97 = (fConst1 * (8.75476798355914e-18 + (fConst1 * ((fConst1 * ((fConst1 * (1.20089551907301e-26 + fConst51)) - 1.07012780648723e-22)) - 1.7317962188598e-19))));
940 fConst98 = ((fConst1 * ((fConst1 * (1.02297241862924e-18 + (fConst1 * (1.60763581760799e-22 + (fConst1 * (0 - (1.24256514544765e-26 + fConst53))))))) - 2.31746620241062e-15)) - 7.00381438684731e-14);
941 fConst99 = (2.70208888381455e-14 + (fConst1 * (9.56223860888721e-16 + (fConst1 * ((fConst1 * ((fConst1 * (4.17630459746342e-26 + fConst55)) - 4.85612399273775e-22)) - 1.61326669267802e-18)))));
942 fConst100 = ((fConst1 * ((fConst1 * (5.4394471275284e-18 + (fConst1 * (6.6841357044152e-22 + (fConst1 * (0 - (4.30605620506254e-26 + fConst57))))))) - 2.24313751320208e-14)) - 7.67573094039439e-12);
943 fConst101 = (1.43248872465094e-33 * fConst1);
944 fConst102 = ((fConst1 * ((fConst1 * (3.05244836365035e-16 + (fConst1 * (6.42873731845153e-20 + (fConst1 * ((fConst1 * (fConst101 - 1.23443487820807e-28)) - 7.04347089003909e-24)))))) - 3.49331258105841e-13)) - 3.40295280749037e-11);
945 fConst103 = (1.19374060387578e-32 * fConst1);
946 fConst104 = (fConst1 * ((fConst1 * ((fConst1 * (2.86387451022895e-24 + (fConst1 * (1.9209209104826e-28 - fConst103)))) - 2.88083422514999e-21)) - 2.62643039506774e-19));
947 fConst105 = (1.15033185464394e-32 * fConst1);
948 fConst106 = ((fConst1 * (2.3146642940401e-17 + (fConst1 * (1.64282695186117e-20 + (fConst1 * ((fConst1 * (fConst105 - 1.9865559358204e-28)) - 4.28587882504213e-24)))))) - 3.4931524254401e-15);
949 fConst107 = (4.34087492318467e-34 * fConst1);
950 fConst108 = ((fConst1 * ((fConst1 * (5.16810160195606e-17 + (fConst1 * (1.37102159187211e-20 + (fConst1 * ((fConst1 * (fConst107 - 3.70312841947741e-29)) - 1.913369759377e-24)))))) - 5.50048099364985e-14)) - 4.40418871350701e-12);
951 fConst109 = (3.93934399279008e-32 * fConst1);
952 fConst110 = (fConst1 * (1.35104444190727e-15 + (fConst1 * ((fConst1 * ((fConst1 * (1.29825652102075e-23 + (fConst1 * (6.68010774855708e-28 - fConst109)))) - 2.63002461642579e-20)) - 1.08529291934856e-17))));
953 fConst111 = (3.79609512032499e-32 * fConst1);
954 fConst112 = ((fConst1 * ((fConst1 * (2.19435678167812e-16 + (fConst1 * (8.72318159543856e-20 + (fConst1 * ((fConst1 * (fConst111 - 6.88430083239131e-28)) - 1.78177244995671e-23)))))) - 1.45154584938503e-13)) - 1.07813346464201e-11);
955 fConst113 = (3.8010824746396e-09 + (fConst1 * (1.84811580165704e-11 + (fConst1 * ((fConst1 * ((fConst1 * (2.62384495743175e-22 + (fConst1 * (7.70156096316702e-27 - fConst47)))) - 3.95523117348307e-18)) - 3.06963002110785e-14)))));
956 fConst114 = (2.95512545692159e-12 + (fConst1 * ((fConst1 * ((fConst1 * (7.12376081015269e-23 + (fConst1 * (2.31029677842279e-27 - fConst49)))) - 8.40853740867708e-19)) - 5.16916413602379e-15)));
957 fConst115 = (fConst1 * (8.75476798355914e-18 + (fConst1 * (1.7317962188598e-19 + (fConst1 * ((fConst1 * (fConst51 - 1.20089551907301e-26)) - 1.07012780648723e-22))))));
958 fConst116 = (7.00381438684731e-14 + (fConst1 * ((fConst1 * ((fConst1 * (1.60763581760799e-22 + (fConst1 * (1.24256514544765e-26 - fConst53)))) - 1.02297241862924e-18)) - 2.31746620241062e-15)));
959 fConst117 = ((fConst1 * (9.56223860888721e-16 + (fConst1 * (1.61326669267802e-18 + (fConst1 * ((fConst1 * (fConst55 - 4.17630459746342e-26)) - 4.85612399273775e-22)))))) - 2.70208888381455e-14);
960 fConst118 = (7.67573094039439e-12 + (fConst1 * ((fConst1 * ((fConst1 * (6.6841357044152e-22 + (fConst1 * (4.30605620506254e-26 - fConst57)))) - 5.4394471275284e-18)) - 2.24313751320208e-14)));
961 fConst119 = (3.40295280749037e-11 + (fConst1 * ((fConst1 * ((fConst1 * (6.42873731845153e-20 + (fConst1 * (7.04347089003909e-24 + (fConst1 * (0 - (1.23443487820807e-28 + fConst101))))))) - 3.05244836365035e-16)) - 3.49331258105841e-13)));
962 fConst120 = (fConst1 * (2.62643039506774e-19 + (fConst1 * ((fConst1 * ((fConst1 * (1.9209209104826e-28 + fConst103)) - 2.86387451022895e-24)) - 2.88083422514999e-21))));
963 fConst121 = ((fConst1 * ((fConst1 * (1.64282695186117e-20 + (fConst1 * (4.28587882504213e-24 + (fConst1 * (0 - (1.9865559358204e-28 + fConst105))))))) - 2.3146642940401e-17)) - 3.4931524254401e-15);
964 fConst122 = (4.40418871350701e-12 + (fConst1 * ((fConst1 * ((fConst1 * (1.37102159187211e-20 + (fConst1 * (1.913369759377e-24 + (fConst1 * (0 - (3.70312841947741e-29 + fConst107))))))) - 5.16810160195606e-17)) - 5.50048099364985e-14)));
965 fConst123 = (fConst1 * (1.35104444190727e-15 + (fConst1 * (1.08529291934856e-17 + (fConst1 * ((fConst1 * ((fConst1 * (6.68010774855708e-28 + fConst109)) - 1.29825652102075e-23)) - 2.63002461642579e-20))))));
966 fConst124 = (1.07813346464201e-11 + (fConst1 * ((fConst1 * ((fConst1 * (8.72318159543856e-20 + (fConst1 * (1.78177244995671e-23 + (fConst1 * (0 - (6.88430083239131e-28 + fConst111))))))) - 2.19435678167812e-16)) - 1.45154584938503e-13)));
967 fConst125 = (2.28064948478376e-09 + (fConst1 * (3.32660844298268e-11 + (fConst1 * (6.1392600422157e-15 + (fConst1 * ((fConst1 * ((fConst1 * (1.5403121926334e-27 + fConst71)) - 2.62384495743175e-22)) - 3.95523117348307e-18)))))));
968 fConst126 = (5.31922582245886e-12 + (fConst1 * (1.03383282720476e-15 + (fConst1 * ((fConst1 * ((fConst1 * (4.62059355684558e-28 + fConst73)) - 7.12376081015269e-23)) - 8.40853740867708e-19)))));
969 fConst127 = (fConst1 * ((fConst1 * (1.7317962188598e-19 + (fConst1 * (1.07012780648723e-22 + (fConst1 * (0 - (2.40179103814603e-27 + fConst75))))))) - 1.75095359671183e-18));
970 fConst128 = (1.26068658963252e-13 + (fConst1 * (4.63493240482125e-16 + (fConst1 * ((fConst1 * ((fConst1 * (2.4851302908953e-27 + fConst77)) - 1.60763581760799e-22)) - 1.02297241862924e-18)))));
971 fConst129 = ((fConst1 * ((fConst1 * (1.61326669267802e-18 + (fConst1 * (4.85612399273775e-22 + (fConst1 * (0 - (8.35260919492685e-27 + fConst79))))))) - 1.91244772177744e-16)) - 4.86375999086619e-14);
972 fConst130 = (1.38163156927099e-11 + (fConst1 * (4.48627502640417e-15 + (fConst1 * ((fConst1 * ((fConst1 * (8.61211241012509e-27 + fConst81)) - 6.6841357044152e-22)) - 5.4394471275284e-18)))));
973 fConst131 = (6.12531505348267e-11 + (fConst1 * (6.98662516211683e-14 + (fConst1 * ((fConst1 * ((fConst1 * (1.40869417800782e-24 + (fConst1 * (2.22198278077453e-28 + fConst83)))) - 6.42873731845153e-20)) - 3.05244836365035e-16)))));
974 fConst132 = (fConst1 * (2.62643039506774e-19 + (fConst1 * (2.88083422514999e-21 + (fConst1 * ((fConst1 * (0 - (3.45765763886867e-28 + fConst85))) - 5.7277490204579e-25))))));
975 fConst133 = (6.98630485088019e-16 + (fConst1 * ((fConst1 * ((fConst1 * (8.57175765008426e-25 + (fConst1 * (3.57580068447672e-28 + fConst87)))) - 1.64282695186117e-20)) - 2.3146642940401e-17)));
976 fConst134 = (7.92753968431262e-12 + (fConst1 * (1.10009619872997e-14 + (fConst1 * ((fConst1 * ((fConst1 * (3.82673951875399e-25 + (fConst1 * (6.66563115505934e-29 + fConst89)))) - 1.37102159187211e-20)) - 5.16810160195606e-17)))));
977 fConst135 = (fConst1 * ((fConst1 * (1.08529291934856e-17 + (fConst1 * (2.63002461642579e-20 + (fConst1 * ((fConst1 * (0 - (1.20241939474027e-27 + fConst91))) - 2.59651304204151e-24)))))) - 2.70208888381455e-16));
978 fConst136 = (1.94064023635561e-11 + (fConst1 * (2.90309169877006e-14 + (fConst1 * ((fConst1 * ((fConst1 * (3.56354489991342e-24 + (fConst1 * (1.23917414983044e-27 + fConst93)))) - 8.72318159543856e-20)) - 2.19435678167812e-16)))));
979 fConst137 = (7.60216494927921e-10 + (fConst1 * (1.84811580165704e-11 + (fConst1 * (1.84177801266471e-14 + (fConst1 * (1.31841039116102e-18 + (fConst1 * ((fConst1 * (0 - (4.62093657790021e-27 + fConst47))) - 8.74614985810583e-23)))))))));
980 fConst138 = (2.95512545692159e-12 + (fConst1 * (3.10149848161427e-15 + (fConst1 * (2.80284580289236e-19 + (fConst1 * ((fConst1 * (0 - (1.38617806705367e-27 + fConst49))) - 2.37458693671756e-23)))))));
981 fConst139 = (fConst1 * ((fConst1 * ((fConst1 * (3.56709268829075e-23 + (fConst1 * (7.20537311443808e-27 + fConst51)))) - 5.77265406286601e-20)) - 5.25286079013548e-18));
982 fConst140 = (7.00381438684731e-14 + (fConst1 * (1.39047972144637e-15 + (fConst1 * (3.40990806209747e-19 + (fConst1 * ((fConst1 * (0 - (7.4553908726859e-27 + fConst53))) - 5.3587860586933e-23)))))));
983 fConst141 = ((fConst1 * ((fConst1 * ((fConst1 * (1.61870799757925e-22 + (fConst1 * (2.50578275847805e-26 + fConst55)))) - 5.37755564226007e-19)) - 5.73734316533233e-16)) - 2.70208888381455e-14);
984 fConst142 = (7.67573094039439e-12 + (fConst1 * (1.34588250792125e-14 + (fConst1 * (1.81314904250947e-18 + (fConst1 * ((fConst1 * (0 - (2.58363372303753e-26 + fConst57))) - 2.22804523480507e-22)))))));
985 fConst143 = (3.40295280749037e-11 + (fConst1 * (2.09598754863505e-13 + (fConst1 * (1.01748278788345e-16 + (fConst1 * ((fConst1 * ((fConst1 * (0 - (1.23443487820807e-28 + fConst59))) - 4.22608253402345e-24)) - 2.14291243948384e-20)))))));
986 fConst144 = (fConst1 * ((fConst1 * (9.60278075049996e-22 + (fConst1 * (1.71832470613737e-24 + (fConst1 * (1.9209209104826e-28 + fConst61)))))) - 8.75476798355914e-20));
987 fConst145 = (2.09589145526406e-15 + (fConst1 * (7.71554764680033e-18 + (fConst1 * ((fConst1 * ((fConst1 * (0 - (1.9865559358204e-28 + fConst63))) - 2.57152729502528e-24)) - 5.47608983953722e-21)))));
988 fConst146 = (4.40418871350701e-12 + (fConst1 * (3.30028859618991e-14 + (fConst1 * (1.72270053398535e-17 + (fConst1 * ((fConst1 * ((fConst1 * (0 - (3.70312841947741e-29 + fConst65))) - 1.1480218556262e-24)) - 4.57007197290703e-21)))))));
989 fConst147 = (fConst1 * ((fConst1 * ((fConst1 * (8.76674872141931e-21 + (fConst1 * (7.78953912612452e-24 + (fConst1 * (6.68010774855708e-28 + fConst67)))))) - 3.6176430644952e-18)) - 8.10626665144365e-16));
990 fConst148 = (1.07813346464201e-11 + (fConst1 * (8.70927509631017e-14 + (fConst1 * (7.31452260559375e-17 + (fConst1 * ((fConst1 * ((fConst1 * (0 - (6.88430083239131e-28 + fConst69))) - 1.06906346997403e-23)) - 2.90772719847952e-20)))))));
991 fConst149 = (1.54099923663885e-20 * fConst1);
992 fConst150 = (2.24965827032337e-08 + (fConst1 * ((fConst1 * (5.31689208112194e-11 + (fConst1 * (fConst149 - 7.19388929584568e-15)))) - 2.28185230391781e-09)));
993 fConst151 = (6.16399694655539e-20 * fConst1);
994 fConst152 = (8.99863308129347e-08 + (fConst1 * ((fConst27 * (1.43877785916914e-14 - fConst151)) - 4.56370460783562e-09)));
995 fConst153 = (1.34979496219402e-07 + (fConst27 * ((9.24599541983309e-20 * fConst27) - 1.06337841622439e-10)));
996 fConst154 = (8.99863308129347e-08 + (fConst1 * (4.56370460783562e-09 + (fConst27 * (0 - (1.43877785916914e-14 + fConst151))))));
997 fConst155 = (1.0 / (2.24965827032337e-08 + (fConst1 * (2.28185230391781e-09 + (fConst1 * (5.31689208112194e-11 + (fConst1 * (7.19388929584568e-15 + fConst149))))))));
998 fConst156 = (2.05673409363887e-05 * fConst1);
999 fConst157 = (0.0127676350533428 + fConst156);
1000 fConst158 = ((0.0127676350533428 - fConst156) / fConst157);
1001 fConst159 = (4.53718775174205e-20 * fConst1);
1002 fConst160 = (6.11046829303909e-10 + (fConst1 * (2.75033912102025e-12 + (fConst1 * (2.39184150298261e-15 + fConst159)))));
1003 fConst161 = (4.62560320712853e-19 * fConst1);
1004 fConst162 = (fConst1 * ((fConst1 * (0 - (3.65585542758513e-16 + fConst161))) - 6.71526912010436e-14));
1005 fConst163 = (4.17188443195432e-19 * fConst1);
1006 fConst164 = ((fConst1 * ((fConst1 * (9.01281990687034e-17 + fConst163)) - 1.21744029511887e-14)) - 7.14390331925996e-13);
1007 fConst165 = (1.20024920532642e-17 * fConst1);
1008 fConst166 = (fConst1 * (1.36355462346484e-12 + (fConst1 * (fConst165 - 8.72835527356175e-15))));
1009 fConst167 = (5.68147759777016e-09 + (fConst1 * ((fConst1 * (5.87387388288291e-14 - fConst165)) - 3.77317015966388e-11)));
1010 fConst168 = ((fConst1 * (2.75033912102025e-12 + (fConst1 * (fConst159 - 2.39184150298261e-15)))) - 6.11046829303909e-10);
1011 fConst169 = (fConst1 * ((fConst1 * (3.65585542758513e-16 - fConst161)) - 6.71526912010436e-14));
1012 fConst170 = (7.14390331925996e-13 + (fConst1 * ((fConst1 * (fConst163 - 9.01281990687034e-17)) - 1.21744029511887e-14)));
1013 fConst171 = (1.81487510069682e-19 * fConst1);
1014 fConst172 = ((fConst27 * (4.78368300596523e-15 - fConst171)) - 1.22209365860782e-09);
1015 fConst173 = (1.85024128285141e-18 * fConst1);
1016 fConst174 = (fConst27 * (fConst173 - 7.31171085517027e-16));
1017 fConst175 = (1.66875377278173e-18 * fConst1);
1018 fConst176 = (1.42878066385199e-12 + (fConst27 * (1.80256398137407e-16 - fConst175)));
1019 fConst177 = (1.34305382402087e-13 - (2.77536192427712e-18 * fConst27));
1020 fConst178 = (2.43488059023775e-14 + (2.50313065917259e-18 * fConst27));
1021 fConst179 = ((2.72231265104523e-19 * fConst27) - 5.50067824204049e-12);
1022 fConst180 = (1.22209365860782e-09 + (fConst27 * (0 - (4.78368300596523e-15 + fConst171))));
1023 fConst181 = (fConst27 * (7.31171085517027e-16 + fConst173));
1024 fConst182 = ((fConst27 * (0 - (1.80256398137407e-16 + fConst175))) - 1.42878066385199e-12);
1025 fConst183 = (4.80099682130566e-17 * fConst1);
1026 fConst184 = (fConst27 * (1.74567105471235e-14 - fConst183));
1027 fConst185 = (1.13629551955403e-08 + (fConst27 * (fConst183 - 1.17477477657658e-13)));
1028 fConst186 = (7.20149523195849e-17 * fConst27);
1029 fConst187 = (fConst186 - 2.72710924692967e-12);
1030 fConst188 = (7.54634031932776e-11 - fConst186);
1031 fConst189 = (fConst27 * (0 - (1.74567105471235e-14 + fConst183)));
1032 fConst190 = ((fConst27 * (1.17477477657658e-13 + fConst183)) - 1.13629551955403e-08);
1033 fConst191 = (fConst1 * (1.36355462346484e-12 + (fConst1 * (8.72835527356175e-15 + fConst165))));
1034 fConst192 = ((fConst1 * ((fConst1 * (0 - (5.87387388288291e-14 + fConst165))) - 3.77317015966388e-11)) - 5.68147759777016e-09);
1035 fConst193 = (1.0 / tan((270.1769682087222 / double(iConst0))));
1036 fConst194 = (1 + fConst193);
1037 fConst195 = (0.027 / fConst194);
1038 fConst196 = (0 - ((1 - fConst193) / fConst194));
1039 fConst197 = (1.0 / tan((97.38937226128358 / double(iConst0))));
1040 fConst198 = (0 - fConst197);
1041 fConst199 = (1 + fConst197);
1042 fConst200 = (0.025 / fConst199);
1043 fConst201 = (0 - ((1 - fConst197) / fConst199));
1044 fConst202 = (0.000241796401593579 * fConst1);
1045 fConst203 = (fConst202 - 0.120895242129278);
1046 fConst204 = (0 - (0.120895242129278 + fConst202));
1047 fConst205 = (1.0 / fConst157);
1048 fConst206 = (3.34191121256379e-16 * fConst1);
1049 fConst207 = (fConst1 * ((fConst1 * (6.03516810836026e-10 + fConst206)) - 1.34107748205618e-08));
1050 fConst208 = (2.68215496411236e-08 + (6.68382242512758e-16 * fConst27));
1051 fConst209 = (fConst1 * (0 - fConst208));
1052 fConst210 = (0 - (1.20703362167205e-09 * fConst27));
1053 fConst211 = (1.34107748205618e-08 + (fConst1 * (6.03516810836026e-10 - fConst206)));
1054 fConst212 = (1.01598542031427e-18 + fConst26);
1055 fConst213 = (fConst27 * (0 - fConst212));
1056 fConst214 = (1.48381946931304e-18 + fConst29);
1057 fConst215 = ((fConst1 * (6.49603784380088e-15 + (fConst1 * (0 - fConst214)))) - 4.33415056963854e-12);
1058 fConst216 = ((fConst1 * (1.99479009758725e-16 - fConst31)) - 1.08083555352582e-14);
1059 fConst217 = ((fConst1 * (2.34482517660991e-16 - fConst33)) - 2.54644856410683e-13);
1060 fConst218 = (4.14522051488223e-21 * fConst1);
1061 fConst219 = (fConst27 * (3.04795626094281e-18 - fConst218));
1062 fConst220 = (5.80330872083511e-22 * fConst1);
1063 fConst221 = ((fConst1 * (2.16534594793363e-15 + (fConst1 * (4.45145840793913e-18 - fConst220)))) - 7.80147102534937e-12);
1064 fConst222 = (2.59296772633058e-19 * fConst1);
1065 fConst223 = ((fConst1 * (6.64930032529084e-17 + fConst222)) - 1.94550399634648e-14);
1066 fConst224 = (3.63015481686282e-20 * fConst1);
1067 fConst225 = ((fConst1 * (7.81608392203304e-17 + fConst224)) - 4.5836074153923e-13);
1068 fConst226 = (3.04795626094281e-18 + fConst218);
1069 fConst227 = (fConst27 * fConst226);
1070 fConst228 = (4.45145840793913e-18 + fConst220);
1071 fConst229 = ((fConst1 * ((fConst1 * fConst228) - 1.08267297396681e-14)) - 4.33415056963854e-12);
1072 fConst230 = ((fConst1 * (fConst222 - 3.32465016264542e-16)) - 1.08083555352582e-14);
1073 fConst231 = ((fConst1 * (fConst224 - 3.90804196101652e-16)) - 2.54644856410683e-13);
1074 fConst232 = (fConst27 * (fConst218 - 3.04795626094281e-18));
1075 fConst233 = (4.33415056963854e-12 + (fConst1 * ((fConst1 * (fConst220 - 4.45145840793913e-18)) - 1.08267297396681e-14)));
1076 fConst234 = (1.08083555352582e-14 + (fConst1 * (0 - (3.32465016264542e-16 + fConst222))));
1077 fConst235 = (2.54644856410683e-13 + (fConst1 * (0 - (3.90804196101652e-16 + fConst224))));
1078 fConst236 = (fConst27 * (0 - fConst226));
1079 fConst237 = (7.80147102534937e-12 + (fConst1 * (2.16534594793363e-15 + (fConst1 * (0 - fConst228)))));
1080 fConst238 = (1.94550399634648e-14 + (fConst1 * (6.64930032529084e-17 - fConst222)));
1081 fConst239 = (4.5836074153923e-13 + (fConst1 * (7.81608392203304e-17 - fConst224)));
1082 fConst240 = (fConst27 * (1.01598542031427e-18 - fConst26));
1083 fConst241 = (4.33415056963854e-12 + (fConst1 * (6.49603784380088e-15 + (fConst1 * (1.48381946931304e-18 - fConst29)))));
1084 fConst242 = (1.08083555352582e-14 + (fConst1 * (1.99479009758725e-16 + fConst31)));
1085 fConst243 = (2.54644856410683e-13 + (fConst1 * (2.34482517660991e-16 + fConst33)));
1086 fConst244 = (fConst27 * fConst212);
1087 fConst245 = (8.66830113927708e-13 + (fConst1 * (2.16534594793363e-15 + (fConst1 * fConst214))));
1088 fConst246 = (2.16167110705164e-15 + (fConst1 * (6.64930032529084e-17 + fConst31)));
1089 fConst247 = (5.09289712821366e-14 + (fConst1 * (7.81608392203304e-17 + fConst33)));
1090 clear_state_f();
1091 }
1092
init_static(uint32_t samplingFreq,PluginLV2 * p)1093 void Dsp::init_static(uint32_t samplingFreq, PluginLV2 *p)
1094 {
1095 static_cast<Dsp*>(p)->init(samplingFreq);
1096 }
1097
nonlin(double x)1098 double always_inline Dsp::nonlin(double x) {
1099 double f = fabs(x);
1100 f = (f/(3.0+f) - nonlintab.low) * nonlintab.istep;
1101 int i = static_cast<int>(f);
1102 if (i < 0) {
1103 f = nonlintab.data[0];
1104 } else if (i >= nonlintab.size-1) {
1105 f = nonlintab.data[nonlintab.size-1];
1106 } else {
1107 f -= i;
1108 f = nonlintab.data[i]*(1-f) + nonlintab.data[i+1]*f;
1109 }
1110 return copysign(f, x);
1111 }
1112
Ftube(double Vgk)1113 double always_inline Dsp::Ftube(double Vgk) {
1114 double f = (Vgk - tubetab.low) * tubetab.istep;
1115 int i = static_cast<int>(f);
1116 if (i < 0)
1117 return tubetab.data[0];
1118 if (i >= tubetab.size-1)
1119 return tubetab.data[tubetab.size-1];
1120 f -= i;
1121 return tubetab.data[i]*(1-f) + tubetab.data[i+1]*f;
1122 }
1123
compute(int count,FAUSTFLOAT * input0,FAUSTFLOAT * output0)1124 void always_inline Dsp::compute(int count, FAUSTFLOAT *input0, FAUSTFLOAT *output0)
1125 {
1126 #define fslider0 (*fslider0_)
1127 #define fslider1 (*fslider1_)
1128 #define fslider2 (*fslider2_)
1129 #define fslider3 (*fslider3_)
1130 double fSlow0 = (0.007000000000000006 * double(fslider0));
1131 double fSlow1 = (0.004073836948085289 * (exp(double(fslider1)) - 1));
1132 double fSlow2 = (0.007000000000000006 * double(fslider2));
1133 double fSlow3 = (0.007000000000000006 * double(fslider3));
1134 for (int i=0; i<count; i++) {
1135 fRec0[0] = ((0.993 * fRec0[1]) + fSlow0);
1136 fRec1[0] = ((0.993 * fRec1[1]) + fSlow1);
1137 fRec2[0] = ((0.993 * fRec2[1]) + fSlow2);
1138 double fTemp0 = ((((fRec2[0] * (4.32334221410328e-11 + (fConst1 * (((fRec0[0] * (fConst25 + (fConst23 * fRec0[0]))) + (fRec1[0] * (fConst21 + (fConst1 * (fRec0[0] * (fConst19 + (fConst17 * fRec0[0]))))))) + fConst15)))) + (fRec0[0] * (4.32334221410328e-11 + (fConst1 * (fConst13 + (fConst11 * fRec0[0])))))) + (fRec1[0] * (1.72933688564131e-11 + (fConst1 * ((fRec0[0] * (fConst9 + (fConst7 * fRec0[0]))) + fConst5))))) + fConst3);
1139 fRec10[0] = ((0.993 * fRec10[1]) + fSlow3);
1140 double fTemp1 = (2.97662638302498e-09 + (fConst1 * ((fRec10[0] * (fConst164 + (fConst162 * fRec10[0]))) + fConst160)));
1141 fRec11[0] = ((double)input0[i] - (((((fRec11[1] * (1.19065055320999e-08 + (fConst1 * ((fRec10[0] * (fConst182 + (fConst181 * fRec10[0]))) + fConst180)))) + (fRec11[2] * (1.78597582981499e-08 + (fConst27 * (fConst179 + (fRec10[0] * (fConst178 + (fConst177 * fRec10[0])))))))) + (fRec11[3] * (1.19065055320999e-08 + (fConst1 * ((fRec10[0] * (fConst176 + (fConst174 * fRec10[0]))) + fConst172))))) + (fRec11[4] * (2.97662638302498e-09 + (fConst1 * ((fRec10[0] * (fConst170 + (fConst169 * fRec10[0]))) + fConst168))))) / fTemp1));
1142 double fTemp2 = nonlin((fConst1 * ((fRec10[0] * (((((fRec11[0] * (fConst192 + (fConst191 * fRec10[0]))) + (fRec11[1] * (fConst190 + (fConst189 * fRec10[0])))) + (fConst1 * (fRec11[2] * (fConst188 + (fConst187 * fRec10[0]))))) + (fRec11[3] * (fConst185 + (fConst184 * fRec10[0])))) + (fRec11[4] * (fConst167 + (fConst166 * fRec10[0]))))) / fTemp1)));
1143 fVec0[0] = fTemp2;
1144 fRec9[0] = ((0.9302847925323914 * (fVec0[0] + fVec0[1])) - (0.8605695850647829 * fRec9[1]));
1145 fRec8[0] = (fRec9[0] - ((1.8405051250752198 * fRec8[1]) + (0.8612942439318627 * fRec8[2])));
1146 fRec12[0] = ((fConst196 * fRec12[1]) + (fConst195 * (fRec7[1] + fRec7[2])));
1147 fRec7[0] = (Ftube(((fRec12[0] + (0.9254498422517706 * (fRec8[2] + (fRec8[0] + (2.0 * fRec8[1]))))) - 1.581656)) - 191.42014814814814);
1148 fRec6[0] = ((fConst201 * fRec6[1]) + (fConst200 * ((fConst197 * fRec7[0]) + (fConst198 * fRec7[1]))));
1149 fRec5[0] = (fRec6[0] - (fConst158 * fRec5[1]));
1150 fRec4[0] = ((fConst205 * ((fConst204 * fRec5[0]) + (fConst203 * fRec5[1]))) - (fConst155 * ((((fConst154 * fRec4[1]) + (fConst153 * fRec4[2])) + (fConst152 * fRec4[3])) + (fConst150 * fRec4[4]))));
1151 fRec3[0] = ((fConst155 * ((((fConst1 * ((fConst211 * fRec4[0]) + (fConst208 * fRec4[1]))) + (fConst210 * fRec4[2])) + (fConst209 * fRec4[3])) + (fConst207 * fRec4[4]))) - ((((((((fRec3[1] * ((((fRec2[0] * (3.0263395498723e-10 + (fConst1 * (((fRec0[0] * (fConst148 + (fConst147 * fRec0[0]))) + (fRec1[0] * (fConst146 + (fConst1 * (fRec0[0] * (fConst145 + (fConst144 * fRec0[0]))))))) + fConst143)))) + (fRec0[0] * (3.0263395498723e-10 + (fConst1 * (fConst142 + (fConst141 * fRec0[0])))))) + (fRec1[0] * (1.21053581994892e-10 + (fConst1 * ((fRec0[0] * (fConst140 + (fConst139 * fRec0[0]))) + fConst138))))) + fConst137)) + (fRec3[2] * ((((fRec2[0] * (9.07901864961689e-10 + (fConst1 * (((fRec0[0] * (fConst136 + (fConst135 * fRec0[0]))) + (fRec1[0] * (fConst134 + (fConst1 * (fRec0[0] * (fConst133 + (fConst132 * fRec0[0]))))))) + fConst131)))) + (fRec0[0] * (9.07901864961689e-10 + (fConst1 * (fConst130 + (fConst129 * fRec0[0])))))) + (fRec1[0] * (3.63160745984675e-10 + (fConst1 * ((fRec0[0] * (fConst128 + (fConst127 * fRec0[0]))) + fConst126))))) + fConst125))) + (fRec3[3] * ((((fRec2[0] * (1.51316977493615e-09 + (fConst1 * (((fRec0[0] * (fConst124 + (fConst123 * fRec0[0]))) + (fRec1[0] * (fConst122 + (fConst1 * (fRec0[0] * (fConst121 + (fConst120 * fRec0[0]))))))) + fConst119)))) + (fRec0[0] * (1.51316977493615e-09 + (fConst1 * (fConst118 + (fConst117 * fRec0[0])))))) + (fRec1[0] * (6.05267909974459e-10 + (fConst1 * ((fRec0[0] * (fConst116 + (fConst115 * fRec0[0]))) + fConst114))))) + fConst113))) + (fRec3[4] * ((((fRec2[0] * (1.51316977493615e-09 + (fConst1 * (((fRec0[0] * (fConst112 + (fConst110 * fRec0[0]))) + (fRec1[0] * (fConst108 + (fConst1 * (fRec0[0] * (fConst106 + (fConst104 * fRec0[0]))))))) + fConst102)))) + (fRec0[0] * (1.51316977493615e-09 + (fConst1 * (fConst100 + (fConst99 * fRec0[0])))))) + (fRec1[0] * (6.05267909974459e-10 + (fConst1 * ((fRec0[0] * (fConst98 + (fConst97 * fRec0[0]))) + fConst96))))) + fConst95))) + (fRec3[5] * ((((fRec2[0] * (9.07901864961689e-10 + (fConst1 * (((fRec0[0] * (fConst94 + (fConst92 * fRec0[0]))) + (fRec1[0] * (fConst90 + (fConst1 * (fRec0[0] * (fConst88 + (fConst86 * fRec0[0]))))))) + fConst84)))) + (fRec0[0] * (9.07901864961689e-10 + (fConst1 * (fConst82 + (fConst80 * fRec0[0])))))) + (fRec1[0] * (3.63160745984675e-10 + (fConst1 * ((fRec0[0] * (fConst78 + (fConst76 * fRec0[0]))) + fConst74))))) + fConst72))) + (fRec3[6] * ((((fRec2[0] * (3.0263395498723e-10 + (fConst1 * (((fRec0[0] * (fConst70 + (fConst68 * fRec0[0]))) + (fRec1[0] * (fConst66 + (fConst1 * (fRec0[0] * (fConst64 + (fConst62 * fRec0[0]))))))) + fConst60)))) + (fRec0[0] * (3.0263395498723e-10 + (fConst1 * (fConst58 + (fConst56 * fRec0[0])))))) + (fRec1[0] * (1.21053581994892e-10 + (fConst1 * ((fRec0[0] * (fConst54 + (fConst52 * fRec0[0]))) + fConst50))))) + fConst48))) + (fRec3[7] * ((((fRec2[0] * (4.32334221410328e-11 + (fConst1 * (((fRec0[0] * (fConst46 + (fConst45 * fRec0[0]))) + (fRec1[0] * (fConst44 + (fConst1 * (fRec0[0] * (fConst43 + (fConst42 * fRec0[0]))))))) + fConst41)))) + (fRec0[0] * (4.32334221410328e-11 + (fConst1 * (fConst40 + (fConst39 * fRec0[0])))))) + (fRec1[0] * (1.72933688564131e-11 + (fConst1 * ((fRec0[0] * (fConst38 + (fConst37 * fRec0[0]))) + fConst36))))) + fConst35))) / fTemp0));
1152 output0[i] = (FAUSTFLOAT)(fConst1 * ((fRec1[0] * ((((((((fRec3[0] * ((fConst247 + (fConst246 * fRec0[0])) + (fRec2[0] * (fConst245 + (fConst244 * fRec0[0]))))) + (fRec3[1] * ((fConst243 + (fConst242 * fRec0[0])) + (fRec2[0] * (fConst241 + (fConst240 * fRec0[0])))))) + (fRec3[2] * ((fConst239 + (fConst238 * fRec0[0])) + (fRec2[0] * (fConst237 + (fConst236 * fRec0[0])))))) + (fRec3[3] * ((fConst235 + (fConst234 * fRec0[0])) + (fRec2[0] * (fConst233 + (fConst232 * fRec0[0])))))) + (fRec3[4] * ((fConst231 + (fConst230 * fRec0[0])) + (fRec2[0] * (fConst229 + (fConst227 * fRec0[0])))))) + (fRec3[5] * ((fConst225 + (fConst223 * fRec0[0])) + (fRec2[0] * (fConst221 + (fConst219 * fRec0[0])))))) + (fRec3[6] * ((fConst217 + (fConst216 * fRec0[0])) + (fRec2[0] * (fConst215 + (fConst213 * fRec0[0])))))) + (fRec3[7] * ((fConst34 + (fConst32 * fRec0[0])) + (fRec2[0] * (fConst30 + (fConst28 * fRec0[0]))))))) / fTemp0));
1153 // post processing
1154 for (int i=7; i>0; i--) fRec3[i] = fRec3[i-1];
1155 for (int i=4; i>0; i--) fRec4[i] = fRec4[i-1];
1156 fRec5[1] = fRec5[0];
1157 fRec6[1] = fRec6[0];
1158 fRec7[2] = fRec7[1]; fRec7[1] = fRec7[0];
1159 fRec12[1] = fRec12[0];
1160 fRec8[2] = fRec8[1]; fRec8[1] = fRec8[0];
1161 fRec9[1] = fRec9[0];
1162 fVec0[1] = fVec0[0];
1163 for (int i=4; i>0; i--) fRec11[i] = fRec11[i-1];
1164 fRec10[1] = fRec10[0];
1165 fRec2[1] = fRec2[0];
1166 fRec1[1] = fRec1[0];
1167 fRec0[1] = fRec0[0];
1168 }
1169 #undef fslider0
1170 #undef fslider1
1171 #undef fslider2
1172 #undef fslider3
1173 }
1174
compute_static(int count,FAUSTFLOAT * input0,FAUSTFLOAT * output0,PluginLV2 * p)1175 void __rt_func Dsp::compute_static(int count, FAUSTFLOAT *input0, FAUSTFLOAT *output0, PluginLV2 *p)
1176 {
1177 static_cast<Dsp*>(p)->compute(count, input0, output0);
1178 }
1179
1180
connect(uint32_t port,void * data)1181 void Dsp::connect(uint32_t port,void* data)
1182 {
1183 switch ((PortIndex)port)
1184 {
1185 case BASS:
1186 fslider2_ = (float*)data; // , 0.5, 0.0, 1.0, 0.01
1187 break;
1188 case GAIN:
1189 fslider3_ = (float*)data; // , 0.5, 0.0, 1.0, 0.01
1190 break;
1191 case TREBLE:
1192 fslider0_ = (float*)data; // , 0.5, 0.0, 1.0, 0.01
1193 break;
1194 case VOLUME:
1195 fslider1_ = (float*)data; // , 0.5, 0.0, 1.0, 0.01
1196 break;
1197 default:
1198 break;
1199 }
1200 }
1201
connect_static(uint32_t port,void * data,PluginLV2 * p)1202 void Dsp::connect_static(uint32_t port,void* data, PluginLV2 *p)
1203 {
1204 static_cast<Dsp*>(p)->connect(port, data);
1205 }
1206
1207
plugin()1208 PluginLV2 *plugin() {
1209 return new Dsp();
1210 }
1211
del_instance(PluginLV2 * p)1212 void Dsp::del_instance(PluginLV2 *p)
1213 {
1214 delete static_cast<Dsp*>(p);
1215 }
1216
1217 /*
1218 typedef enum
1219 {
1220 BASS,
1221 GAIN,
1222 TREBLE,
1223 VOLUME,
1224 } PortIndex;
1225 */
1226
1227 } // end namespace bottlerocket
1228