Audio plugin host https://kx.studio/carla
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

462 lines
9.2KB

  1. /*
  2. * Carla Native Plugins
  3. * Copyright (C) 2012-2015 Filipe Coelho <falktx@falktx.com>
  4. *
  5. * This program is free software; you can redistribute it and/or
  6. * modify it under the terms of the GNU General Public License as
  7. * published by the Free Software Foundation; either version 2 of
  8. * the License, or any later version.
  9. *
  10. * This program is distributed in the hope that it will be useful,
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. * GNU General Public License for more details.
  14. *
  15. * For a full copy of the GNU General Public License see the doc/GPL.txt file.
  16. */
  17. #include "CarlaDefines.h"
  18. #ifdef CARLA_OS_WIN
  19. # include <cmath>
  20. # define errx(...) {}
  21. # define warnx(...) {}
  22. # define rindex strrchr
  23. using std::isnan;
  24. #else
  25. # include <err.h>
  26. #endif
  27. #define PLUGINVERSION
  28. #define SOURCE_DIR "/usr/share/zynaddsubfx/examples"
  29. #undef override
  30. // base c-style headers
  31. #include "zynaddsubfx/tlsf/tlsf.h"
  32. #include "zynaddsubfx/rtosc/rtosc.h"
  33. // C-code includes
  34. extern "C" {
  35. #include "zynaddsubfx/tlsf/tlsf.c"
  36. #undef TLSF_64BIT
  37. #undef tlsf_decl
  38. #undef tlsf_fls_sizet
  39. #undef tlsf_cast
  40. #undef tlsf_min
  41. #undef tlsf_max
  42. #undef tlsf_assert
  43. #undef _tlsf_glue2
  44. #undef _tlsf_glue
  45. #undef tlsf_static_assert
  46. #undef tlsf_insist
  47. #include "zynaddsubfx/rtosc/dispatch.c"
  48. #include "zynaddsubfx/rtosc/rtosc.c"
  49. }
  50. // rtosc includes
  51. #include "zynaddsubfx/rtosc/cpp/midimapper.cpp"
  52. #include "zynaddsubfx/rtosc/cpp/miditable.cpp"
  53. #undef RTOSC_INVALID_MIDI
  54. #undef MAX_UNHANDLED_PATH
  55. #include "zynaddsubfx/rtosc/cpp/ports.cpp"
  56. #undef __builtin_expect
  57. #include "zynaddsubfx/rtosc/cpp/subtree-serialize.cpp"
  58. #include "zynaddsubfx/rtosc/cpp/thread-link.cpp"
  59. #undef off_t
  60. #include "zynaddsubfx/rtosc/cpp/undo-history.cpp"
  61. // zynaddsubfx includes
  62. #include "zynaddsubfx/Containers/MultiPseudoStack.cpp"
  63. #undef rObject
  64. #undef rStdString
  65. #undef rStdStringCb
  66. #undef rChangeCb
  67. #define rChangeCb
  68. #include "zynaddsubfx/Containers/NotePool.cpp"
  69. #undef rObject
  70. #undef rStdString
  71. #undef rStdStringCb
  72. #undef rChangeCb
  73. #define rChangeCb
  74. #include "zynaddsubfx/DSP/AnalogFilter.cpp"
  75. #undef rObject
  76. #undef rStdString
  77. #undef rStdStringCb
  78. #undef rChangeCb
  79. #define rChangeCb
  80. #include "zynaddsubfx/DSP/FFTwrapper.cpp"
  81. #undef rObject
  82. #undef rStdString
  83. #undef rStdStringCb
  84. #undef rChangeCb
  85. #define rChangeCb
  86. #include "zynaddsubfx/DSP/Filter.cpp"
  87. #undef rObject
  88. #undef rStdString
  89. #undef rStdStringCb
  90. #undef rChangeCb
  91. #define rChangeCb
  92. #include "zynaddsubfx/DSP/FormantFilter.cpp"
  93. #undef rObject
  94. #undef rStdString
  95. #undef rStdStringCb
  96. #undef rChangeCb
  97. #define rChangeCb
  98. #include "zynaddsubfx/DSP/SVFilter.cpp"
  99. #undef rObject
  100. #undef rStdString
  101. #undef rStdStringCb
  102. #undef rChangeCb
  103. #define rChangeCb
  104. #include "zynaddsubfx/DSP/Unison.cpp"
  105. #undef rObject
  106. #undef rStdString
  107. #undef rStdStringCb
  108. #undef rChangeCb
  109. #define rChangeCb
  110. #include "zynaddsubfx/Effects/Alienwah.cpp"
  111. #undef rObject
  112. #undef rStdString
  113. #undef rStdStringCb
  114. #undef rChangeCb
  115. #define rChangeCb
  116. #include "zynaddsubfx/Effects/Chorus.cpp"
  117. #undef rObject
  118. #undef rStdString
  119. #undef rStdStringCb
  120. #undef rChangeCb
  121. #define rChangeCb
  122. #include "zynaddsubfx/Effects/Distorsion.cpp"
  123. #undef rObject
  124. #undef rStdString
  125. #undef rStdStringCb
  126. #undef rChangeCb
  127. #define rChangeCb
  128. #include "zynaddsubfx/Effects/DynamicFilter.cpp"
  129. #undef rObject
  130. #undef rStdString
  131. #undef rStdStringCb
  132. #undef rChangeCb
  133. #define rChangeCb
  134. #include "zynaddsubfx/Effects/Echo.cpp"
  135. #undef MAX_DELAY
  136. #undef rObject
  137. #undef rStdString
  138. #undef rStdStringCb
  139. #undef rChangeCb
  140. #define rChangeCb
  141. #include "zynaddsubfx/Effects/Effect.cpp"
  142. #undef rObject
  143. #undef rStdString
  144. #undef rStdStringCb
  145. #undef rChangeCb
  146. #define rChangeCb
  147. #include "zynaddsubfx/Effects/EffectLFO.cpp"
  148. #undef rObject
  149. #undef rStdString
  150. #undef rStdStringCb
  151. #undef rChangeCb
  152. #define rChangeCb
  153. #include "zynaddsubfx/Effects/EffectMgr.cpp"
  154. #undef rObject
  155. #undef rStdString
  156. #undef rStdStringCb
  157. #undef rChangeCb
  158. #define rChangeCb
  159. #include "zynaddsubfx/Effects/EQ.cpp"
  160. #undef rObject
  161. #undef rStdString
  162. #undef rStdStringCb
  163. #undef rChangeCb
  164. #define rChangeCb
  165. #include "zynaddsubfx/Effects/Phaser.cpp"
  166. #undef rObject
  167. #undef rStdString
  168. #undef rStdStringCb
  169. #undef rChangeCb
  170. #define rChangeCb
  171. #undef PHASER_LFO_SHAPE
  172. #undef ONE_
  173. #undef ZERO_
  174. #include "zynaddsubfx/Effects/Reverb.cpp"
  175. #undef rObject
  176. #undef rStdString
  177. #undef rStdStringCb
  178. #undef rChangeCb
  179. #define rChangeCb
  180. #include "zynaddsubfx/Misc/Allocator.cpp"
  181. #undef rObject
  182. #undef rStdString
  183. #undef rStdStringCb
  184. #undef rChangeCb
  185. #define rChangeCb
  186. #include "zynaddsubfx/Misc/Bank.cpp"
  187. #undef INSTRUMENT_EXTENSION
  188. #undef FORCE_BANK_DIR_FILE
  189. #undef rObject
  190. #undef rStdString
  191. #undef rStdStringCb
  192. #undef rChangeCb
  193. #define rChangeCb
  194. #include "zynaddsubfx/Misc/Config.cpp"
  195. #undef rObject
  196. #undef rStdString
  197. #undef rStdStringCb
  198. #undef rChangeCb
  199. #define rChangeCb
  200. #include "zynaddsubfx/Misc/Master.cpp"
  201. #undef rObject
  202. #undef rStdString
  203. #undef rStdStringCb
  204. #undef rChangeCb
  205. #define rChangeCb
  206. #include "zynaddsubfx/Misc/Microtonal.cpp"
  207. #undef MAX_LINE_SIZE
  208. #undef rObject
  209. #undef rStdString
  210. #undef rStdStringCb
  211. #undef rChangeCb
  212. #define rChangeCb
  213. #include "zynaddsubfx/Misc/MiddleWare.cpp"
  214. #undef rObject
  215. #undef rStdString
  216. #undef rStdStringCb
  217. #undef rChangeCb
  218. #define rChangeCb
  219. #include "zynaddsubfx/Misc/Part.cpp"
  220. #undef CLONE
  221. #undef rObject
  222. #undef rStdString
  223. #undef rStdStringCb
  224. #undef rChangeCb
  225. #define rChangeCb
  226. #include "zynaddsubfx/Misc/PresetExtractor.cpp"
  227. #undef rObject
  228. #undef rStdString
  229. #undef rStdStringCb
  230. #undef rChangeCb
  231. #define rChangeCb
  232. #include "zynaddsubfx/Misc/Recorder.cpp"
  233. #undef rObject
  234. #undef rStdString
  235. #undef rStdStringCb
  236. #undef rChangeCb
  237. #define rChangeCb
  238. #include "zynaddsubfx/Misc/Util.cpp"
  239. #undef rObject
  240. #undef rStdString
  241. #undef rStdStringCb
  242. #undef rChangeCb
  243. #define rChangeCb
  244. #include "zynaddsubfx/Misc/WavFile.cpp"
  245. #undef rObject
  246. #undef rStdString
  247. #undef rStdStringCb
  248. #undef rChangeCb
  249. #define rChangeCb
  250. #include "zynaddsubfx/Misc/WaveShapeSmps.cpp"
  251. #undef rObject
  252. #undef rStdString
  253. #undef rStdStringCb
  254. #undef rChangeCb
  255. #define rChangeCb
  256. #include "zynaddsubfx/Misc/XMLwrapper.cpp"
  257. #undef rObject
  258. #undef rStdString
  259. #undef rStdStringCb
  260. #undef rChangeCb
  261. #define rChangeCb
  262. #include "zynaddsubfx/Params/ADnoteParameters.cpp"
  263. #undef EXPAND
  264. #undef rObject
  265. #undef rStdString
  266. #undef rStdStringCb
  267. #undef rChangeCb
  268. #define rChangeCb
  269. #include "zynaddsubfx/Params/Controller.cpp"
  270. #undef rObject
  271. #undef rStdString
  272. #undef rStdStringCb
  273. #undef rChangeCb
  274. #define rChangeCb
  275. #include "zynaddsubfx/Params/EnvelopeParams.cpp"
  276. #undef rObject
  277. #undef rStdString
  278. #undef rStdStringCb
  279. #undef rChangeCb
  280. #define rChangeCb
  281. #include "zynaddsubfx/Params/FilterParams.cpp"
  282. #undef rObject
  283. #undef rStdString
  284. #undef rStdStringCb
  285. #undef rChangeCb
  286. #define rChangeCb
  287. #include "zynaddsubfx/Params/LFOParams.cpp"
  288. #undef rObject
  289. #undef rStdString
  290. #undef rStdStringCb
  291. #undef rChangeCb
  292. #define rChangeCb
  293. #include "zynaddsubfx/Params/PADnoteParameters.cpp"
  294. #undef PC
  295. #undef P_C
  296. #undef rObject
  297. #undef rStdString
  298. #undef rStdStringCb
  299. #undef rChangeCb
  300. #define rChangeCb
  301. #include "zynaddsubfx/Params/Presets.cpp"
  302. #undef rObject
  303. #undef rStdString
  304. #undef rStdStringCb
  305. #undef rChangeCb
  306. #define rChangeCb
  307. #include "zynaddsubfx/Params/PresetsArray.cpp"
  308. #undef rObject
  309. #undef rStdString
  310. #undef rStdStringCb
  311. #undef rChangeCb
  312. #define rChangeCb
  313. #include "zynaddsubfx/Params/PresetsStore.cpp"
  314. #undef rObject
  315. #undef rStdString
  316. #undef rStdStringCb
  317. #undef rChangeCb
  318. #define rChangeCb
  319. #include "zynaddsubfx/Params/SUBnoteParameters.cpp"
  320. #undef doPaste
  321. #undef doPPaste
  322. #undef rObject
  323. #undef rStdString
  324. #undef rStdStringCb
  325. #undef rChangeCb
  326. #define rChangeCb
  327. #include "zynaddsubfx/Synth/ADnote.cpp"
  328. #undef rObject
  329. #undef rStdString
  330. #undef rStdStringCb
  331. #undef rChangeCb
  332. #define rChangeCb
  333. #include "zynaddsubfx/Synth/Envelope.cpp"
  334. #undef rObject
  335. #undef rStdString
  336. #undef rStdStringCb
  337. #undef rChangeCb
  338. #define rChangeCb
  339. #include "zynaddsubfx/Synth/LFO.cpp"
  340. #undef rObject
  341. #undef rStdString
  342. #undef rStdStringCb
  343. #undef rChangeCb
  344. #define rChangeCb
  345. #include "zynaddsubfx/Synth/OscilGen.cpp"
  346. #undef PC
  347. #undef DIFF
  348. #undef PRESERVE
  349. #undef RESTORE
  350. #undef FUNC
  351. #undef FILTER
  352. #undef rObject
  353. #undef rStdString
  354. #undef rStdStringCb
  355. #undef rChangeCb
  356. #define rChangeCb
  357. #include "zynaddsubfx/Synth/PADnote.cpp"
  358. #undef rObject
  359. #undef rStdString
  360. #undef rStdStringCb
  361. #undef rChangeCb
  362. #define rChangeCb
  363. #include "zynaddsubfx/Synth/Resonance.cpp"
  364. #undef rObject
  365. #undef rStdString
  366. #undef rStdStringCb
  367. #undef rChangeCb
  368. #define rChangeCb
  369. #include "zynaddsubfx/Synth/SUBnote.cpp"
  370. #undef rObject
  371. #undef rStdString
  372. #undef rStdStringCb
  373. #undef rChangeCb
  374. #define rChangeCb
  375. #include "zynaddsubfx/Synth/SynthNote.cpp"
  376. #undef rObject
  377. #undef rStdString
  378. #undef rStdStringCb
  379. #undef rChangeCb
  380. #define rChangeCb
  381. #include "zynaddsubfx/UI/ConnectionDummy.cpp"
  382. #undef rObject
  383. #undef rStdString
  384. #undef rStdStringCb
  385. #undef rChangeCb
  386. #define rChangeCb
  387. #include "zynaddsubfx/globals.cpp"
  388. // Dummy variables and functions for linking purposes
  389. class WavFile;
  390. namespace Nio {
  391. void masterSwap(Master*){}
  392. bool setSource(std::string){return true;}
  393. bool setSink(std::string){return true;}
  394. std::set<std::string> getSources(void){return std::set<std::string>();}
  395. std::set<std::string> getSinks(void){return std::set<std::string>();}
  396. std::string getSource(void){return "";}
  397. std::string getSink(void){return "";}
  398. void waveNew(WavFile*){}
  399. void waveStart(){}
  400. void waveStop(){}
  401. }