cyfaust 0.1.0__cp311-cp311-macosx_15_0_arm64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (693) hide show
  1. cyfaust/CMakeLists.txt +93 -0
  2. cyfaust/__init__.py +0 -0
  3. cyfaust/__main__.py +819 -0
  4. cyfaust/box.pxd +46 -0
  5. cyfaust/box.pyx +2459 -0
  6. cyfaust/common.pxd +5 -0
  7. cyfaust/common.pyx +61 -0
  8. cyfaust/cyfaust.cpython-311-darwin.so +0 -0
  9. cyfaust/faust_box.pxd +298 -0
  10. cyfaust/faust_box_oo.pyx +66 -0
  11. cyfaust/faust_gui.pxd +261 -0
  12. cyfaust/faust_interp.pxd +160 -0
  13. cyfaust/faust_player.pxd +80 -0
  14. cyfaust/faust_signal.pxd +257 -0
  15. cyfaust/gui_statics.cpp +15 -0
  16. cyfaust/interp.pyx +673 -0
  17. cyfaust/player.cpp +32519 -0
  18. cyfaust/player.pyx +191 -0
  19. cyfaust/resources/architecture/AU/AUPublic/AUBase/AUBase.cpp +2327 -0
  20. cyfaust/resources/architecture/AU/AUPublic/AUBase/AUBase.h +1019 -0
  21. cyfaust/resources/architecture/AU/AUPublic/AUBase/AUDispatch.cpp +423 -0
  22. cyfaust/resources/architecture/AU/AUPublic/AUBase/AUDispatch.h +82 -0
  23. cyfaust/resources/architecture/AU/AUPublic/AUBase/AUInputElement.cpp +151 -0
  24. cyfaust/resources/architecture/AU/AUPublic/AUBase/AUInputElement.h +119 -0
  25. cyfaust/resources/architecture/AU/AUPublic/AUBase/AUOutputElement.cpp +62 -0
  26. cyfaust/resources/architecture/AU/AUPublic/AUBase/AUOutputElement.h +66 -0
  27. cyfaust/resources/architecture/AU/AUPublic/AUBase/AUPlugInDispatch.cpp +615 -0
  28. cyfaust/resources/architecture/AU/AUPublic/AUBase/AUPlugInDispatch.h +128 -0
  29. cyfaust/resources/architecture/AU/AUPublic/AUBase/AUScopeElement.cpp +512 -0
  30. cyfaust/resources/architecture/AU/AUPublic/AUBase/AUScopeElement.h +544 -0
  31. cyfaust/resources/architecture/AU/AUPublic/AUBase/ComponentBase.cpp +370 -0
  32. cyfaust/resources/architecture/AU/AUPublic/AUBase/ComponentBase.h +340 -0
  33. cyfaust/resources/architecture/AU/AUPublic/AUEffectBase/AUEffectBase.cpp +463 -0
  34. cyfaust/resources/architecture/AU/AUPublic/AUEffectBase/AUEffectBase.h +391 -0
  35. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/AUInstrumentBase.cpp +837 -0
  36. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/AUInstrumentBase.h +267 -0
  37. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/AUMIDIBase.cpp +495 -0
  38. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/AUMIDIBase.h +213 -0
  39. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/LockFreeFIFO.h +168 -0
  40. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/MIDIControlHandler.h +92 -0
  41. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/MusicDeviceBase.cpp +354 -0
  42. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/MusicDeviceBase.h +126 -0
  43. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/SynthElement.cpp +419 -0
  44. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/SynthElement.h +227 -0
  45. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/SynthEvent.h +145 -0
  46. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/SynthNote.cpp +138 -0
  47. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/SynthNote.h +186 -0
  48. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/SynthNoteList.cpp +93 -0
  49. cyfaust/resources/architecture/AU/AUPublic/AUInstrumentBase/SynthNoteList.h +232 -0
  50. cyfaust/resources/architecture/AU/AUPublic/Utility/AUBaseHelper.cpp +134 -0
  51. cyfaust/resources/architecture/AU/AUPublic/Utility/AUBaseHelper.h +80 -0
  52. cyfaust/resources/architecture/AU/AUPublic/Utility/AUBuffer.cpp +217 -0
  53. cyfaust/resources/architecture/AU/AUPublic/Utility/AUBuffer.h +267 -0
  54. cyfaust/resources/architecture/AU/AUPublic/Utility/AUMIDIDefs.h +136 -0
  55. cyfaust/resources/architecture/AU/AUPublic/Utility/AUSilentTimeout.h +93 -0
  56. cyfaust/resources/architecture/AU/English.lproj/InfoPlist.strings +0 -0
  57. cyfaust/resources/architecture/AU/FaustAU.exp +2 -0
  58. cyfaust/resources/architecture/AU/FaustAU.xcodeproj/project.pbxproj +968 -0
  59. cyfaust/resources/architecture/AU/FaustAU.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  60. cyfaust/resources/architecture/AU/FaustAUCustomView.plist +14 -0
  61. cyfaust/resources/architecture/AU/Info.plist +47 -0
  62. cyfaust/resources/architecture/AU/PublicUtility/CAAtomic.h +305 -0
  63. cyfaust/resources/architecture/AU/PublicUtility/CAAtomicStack.h +239 -0
  64. cyfaust/resources/architecture/AU/PublicUtility/CAAudioChannelLayout.cpp +153 -0
  65. cyfaust/resources/architecture/AU/PublicUtility/CAAudioChannelLayout.h +199 -0
  66. cyfaust/resources/architecture/AU/PublicUtility/CAAutoDisposer.h +508 -0
  67. cyfaust/resources/architecture/AU/PublicUtility/CABufferList.cpp +264 -0
  68. cyfaust/resources/architecture/AU/PublicUtility/CABufferList.h +319 -0
  69. cyfaust/resources/architecture/AU/PublicUtility/CAByteOrder.h +161 -0
  70. cyfaust/resources/architecture/AU/PublicUtility/CADebugMacros.cpp +88 -0
  71. cyfaust/resources/architecture/AU/PublicUtility/CADebugMacros.h +580 -0
  72. cyfaust/resources/architecture/AU/PublicUtility/CADebugPrintf.cpp +89 -0
  73. cyfaust/resources/architecture/AU/PublicUtility/CADebugPrintf.h +115 -0
  74. cyfaust/resources/architecture/AU/PublicUtility/CADebugger.cpp +77 -0
  75. cyfaust/resources/architecture/AU/PublicUtility/CADebugger.h +56 -0
  76. cyfaust/resources/architecture/AU/PublicUtility/CAException.h +83 -0
  77. cyfaust/resources/architecture/AU/PublicUtility/CAGuard.cpp +339 -0
  78. cyfaust/resources/architecture/AU/PublicUtility/CAGuard.h +133 -0
  79. cyfaust/resources/architecture/AU/PublicUtility/CAHostTimeBase.cpp +110 -0
  80. cyfaust/resources/architecture/AU/PublicUtility/CAHostTimeBase.h +231 -0
  81. cyfaust/resources/architecture/AU/PublicUtility/CALogMacros.h +140 -0
  82. cyfaust/resources/architecture/AU/PublicUtility/CAMath.h +68 -0
  83. cyfaust/resources/architecture/AU/PublicUtility/CAMutex.cpp +345 -0
  84. cyfaust/resources/architecture/AU/PublicUtility/CAMutex.h +163 -0
  85. cyfaust/resources/architecture/AU/PublicUtility/CAReferenceCounted.h +87 -0
  86. cyfaust/resources/architecture/AU/PublicUtility/CAStreamBasicDescription.cpp +795 -0
  87. cyfaust/resources/architecture/AU/PublicUtility/CAStreamBasicDescription.h +409 -0
  88. cyfaust/resources/architecture/AU/PublicUtility/CAThreadSafeList.h +255 -0
  89. cyfaust/resources/architecture/AU/PublicUtility/CAVectorUnit.cpp +191 -0
  90. cyfaust/resources/architecture/AU/PublicUtility/CAVectorUnit.h +100 -0
  91. cyfaust/resources/architecture/AU/PublicUtility/CAVectorUnitTypes.h +59 -0
  92. cyfaust/resources/architecture/AU/PublicUtility/CAXException.cpp +49 -0
  93. cyfaust/resources/architecture/AU/PublicUtility/CAXException.h +338 -0
  94. cyfaust/resources/architecture/AU/SectionPatternLight.tiff +0 -0
  95. cyfaust/resources/architecture/AU/Source/AUSource/FaustAU.h +38 -0
  96. cyfaust/resources/architecture/AU/Source/AUSource/FaustAU.r +153 -0
  97. cyfaust/resources/architecture/AU/Source/AUSource/FaustAUVersion.h +64 -0
  98. cyfaust/resources/architecture/AU/Source/CocoaUI/FaustAU_Bargraph.h +18 -0
  99. cyfaust/resources/architecture/AU/Source/CocoaUI/FaustAU_Bargraph.m +21 -0
  100. cyfaust/resources/architecture/AU/Source/CocoaUI/FaustAU_Button.h +20 -0
  101. cyfaust/resources/architecture/AU/Source/CocoaUI/FaustAU_Button.m +56 -0
  102. cyfaust/resources/architecture/AU/Source/CocoaUI/FaustAU_CustomView.h +87 -0
  103. cyfaust/resources/architecture/AU/Source/CocoaUI/FaustAU_CustomView.m +834 -0
  104. cyfaust/resources/architecture/AU/Source/CocoaUI/FaustAU_CustomViewFactory.h +13 -0
  105. cyfaust/resources/architecture/AU/Source/CocoaUI/FaustAU_CustomViewFactory.m +22 -0
  106. cyfaust/resources/architecture/AU/Source/CocoaUI/FaustAU_Knob.h +81 -0
  107. cyfaust/resources/architecture/AU/Source/CocoaUI/FaustAU_Knob.m +199 -0
  108. cyfaust/resources/architecture/AU/Source/CocoaUI/FaustAU_Slider.h +18 -0
  109. cyfaust/resources/architecture/AU/Source/CocoaUI/FaustAU_Slider.m +21 -0
  110. cyfaust/resources/architecture/AU/version.plist +16 -0
  111. cyfaust/resources/architecture/VST/Info.plist +28 -0
  112. cyfaust/resources/architecture/VST/PkgInfo +1 -0
  113. cyfaust/resources/architecture/VST/README +11 -0
  114. cyfaust/resources/architecture/VST/VST.xcode/project.pbxproj +655 -0
  115. cyfaust/resources/architecture/alsa-console.cpp +246 -0
  116. cyfaust/resources/architecture/alsa-gtk.cpp +220 -0
  117. cyfaust/resources/architecture/alsa-qt.cpp +229 -0
  118. cyfaust/resources/architecture/api/DspFaust.cpp +612 -0
  119. cyfaust/resources/architecture/api/DspFaust.h +511 -0
  120. cyfaust/resources/architecture/api/README.md +237 -0
  121. cyfaust/resources/architecture/api/doc/Generic.md +38 -0
  122. cyfaust/resources/architecture/au-effect.cpp +487 -0
  123. cyfaust/resources/architecture/au-instrument.cpp +573 -0
  124. cyfaust/resources/architecture/bench.cpp +91 -0
  125. cyfaust/resources/architecture/c-jack-gtk.c +227 -0
  126. cyfaust/resources/architecture/ca-gtk.cpp +284 -0
  127. cyfaust/resources/architecture/ca-qt.cpp +424 -0
  128. cyfaust/resources/architecture/cpal.rs +195 -0
  129. cyfaust/resources/architecture/csound.cpp +245 -0
  130. cyfaust/resources/architecture/csvplot.cpp +227 -0
  131. cyfaust/resources/architecture/daisy/Makefile +14 -0
  132. cyfaust/resources/architecture/daisy/README.md +50 -0
  133. cyfaust/resources/architecture/daisy/ex_faust.cpp +173 -0
  134. cyfaust/resources/architecture/dssi.cpp +1262 -0
  135. cyfaust/resources/architecture/dummy-mem.cpp +186 -0
  136. cyfaust/resources/architecture/dummy.cpp +294 -0
  137. cyfaust/resources/architecture/faust/au/AUUI.h +404 -0
  138. cyfaust/resources/architecture/faust/audio/alsa-dsp.h +693 -0
  139. cyfaust/resources/architecture/faust/audio/android-dsp.h +583 -0
  140. cyfaust/resources/architecture/faust/audio/audio.h +115 -0
  141. cyfaust/resources/architecture/faust/audio/channels.h +122 -0
  142. cyfaust/resources/architecture/faust/audio/coreaudio-dsp.h +1543 -0
  143. cyfaust/resources/architecture/faust/audio/coreaudio-ios-dsp.h +743 -0
  144. cyfaust/resources/architecture/faust/audio/dummy-audio.h +255 -0
  145. cyfaust/resources/architecture/faust/audio/esp32-dsp.h +284 -0
  146. cyfaust/resources/architecture/faust/audio/fpe.h +164 -0
  147. cyfaust/resources/architecture/faust/audio/jack-dsp.h +534 -0
  148. cyfaust/resources/architecture/faust/audio/juce-dsp.h +119 -0
  149. cyfaust/resources/architecture/faust/audio/netjack-dsp.h +354 -0
  150. cyfaust/resources/architecture/faust/audio/oboe-dsp.h +308 -0
  151. cyfaust/resources/architecture/faust/audio/ofaudio-dsp.h +155 -0
  152. cyfaust/resources/architecture/faust/audio/opensles-android-dsp.h +631 -0
  153. cyfaust/resources/architecture/faust/audio/osc-dsp.h +120 -0
  154. cyfaust/resources/architecture/faust/audio/portaudio-dsp.h +236 -0
  155. cyfaust/resources/architecture/faust/audio/rtaudio-dsp.h +241 -0
  156. cyfaust/resources/architecture/faust/audio/samAudio.h +140 -0
  157. cyfaust/resources/architecture/faust/audio/teensy-dsp.h +171 -0
  158. cyfaust/resources/architecture/faust/dsp/cmajor-cpp-dsp.h +253 -0
  159. cyfaust/resources/architecture/faust/dsp/cmajorpatch-dsp.h +483 -0
  160. cyfaust/resources/architecture/faust/dsp/cpp-dsp-adapter.h +38 -0
  161. cyfaust/resources/architecture/faust/dsp/dsp-adapter.h +836 -0
  162. cyfaust/resources/architecture/faust/dsp/dsp-bench.h +611 -0
  163. cyfaust/resources/architecture/faust/dsp/dsp-checker.h +115 -0
  164. cyfaust/resources/architecture/faust/dsp/dsp-combiner.h +810 -0
  165. cyfaust/resources/architecture/faust/dsp/dsp-compute-adapter.h +159 -0
  166. cyfaust/resources/architecture/faust/dsp/dsp-multi.h +702 -0
  167. cyfaust/resources/architecture/faust/dsp/dsp-multifun.h +90 -0
  168. cyfaust/resources/architecture/faust/dsp/dsp-optimizer.h +511 -0
  169. cyfaust/resources/architecture/faust/dsp/dsp-tools.h +229 -0
  170. cyfaust/resources/architecture/faust/dsp/dsp.h +321 -0
  171. cyfaust/resources/architecture/faust/dsp/fastmath.cpp +301 -0
  172. cyfaust/resources/architecture/faust/dsp/faust-dynamic-engine.cpp +494 -0
  173. cyfaust/resources/architecture/faust/dsp/faust-dynamic-engine.h +386 -0
  174. cyfaust/resources/architecture/faust/dsp/faust-engine.h +75 -0
  175. cyfaust/resources/architecture/faust/dsp/faust-poly-engine.h +638 -0
  176. cyfaust/resources/architecture/faust/dsp/interpreter-dsp-c.h +288 -0
  177. cyfaust/resources/architecture/faust/dsp/interpreter-dsp.h +362 -0
  178. cyfaust/resources/architecture/faust/dsp/interpreter-machine-dsp.h +233 -0
  179. cyfaust/resources/architecture/faust/dsp/libfaust-box-c.h +817 -0
  180. cyfaust/resources/architecture/faust/dsp/libfaust-box.h +889 -0
  181. cyfaust/resources/architecture/faust/dsp/libfaust-c.h +116 -0
  182. cyfaust/resources/architecture/faust/dsp/libfaust-signal-c.h +649 -0
  183. cyfaust/resources/architecture/faust/dsp/libfaust-signal.h +731 -0
  184. cyfaust/resources/architecture/faust/dsp/llvm-dsp-adapter.h +160 -0
  185. cyfaust/resources/architecture/faust/dsp/llvm-dsp-c.h +524 -0
  186. cyfaust/resources/architecture/faust/dsp/llvm-dsp.h +575 -0
  187. cyfaust/resources/architecture/faust/dsp/llvm-machine-dsp.h +215 -0
  188. cyfaust/resources/architecture/faust/dsp/one-sample-dsp.h +477 -0
  189. cyfaust/resources/architecture/faust/dsp/poly-dsp.h +1079 -0
  190. cyfaust/resources/architecture/faust/dsp/poly-interpreter-dsp.h +143 -0
  191. cyfaust/resources/architecture/faust/dsp/poly-llvm-dsp.h +249 -0
  192. cyfaust/resources/architecture/faust/dsp/poly-wasm-dsp.h +257 -0
  193. cyfaust/resources/architecture/faust/dsp/proxy-dsp.h +108 -0
  194. cyfaust/resources/architecture/faust/dsp/proxy-osc-dsp.h +109 -0
  195. cyfaust/resources/architecture/faust/dsp/rnbo-dsp.h +187 -0
  196. cyfaust/resources/architecture/faust/dsp/sound-player.h +428 -0
  197. cyfaust/resources/architecture/faust/dsp/timed-dsp.h +279 -0
  198. cyfaust/resources/architecture/faust/dsp/wasm-dsp-imp.h +188 -0
  199. cyfaust/resources/architecture/faust/dsp/wasm-dsp.h +309 -0
  200. cyfaust/resources/architecture/faust/dsp/ysfx-dsp.h +188 -0
  201. cyfaust/resources/architecture/faust/export.h +61 -0
  202. cyfaust/resources/architecture/faust/gui/APIUI.h +726 -0
  203. cyfaust/resources/architecture/faust/gui/BelaOSCUI.h +170 -0
  204. cyfaust/resources/architecture/faust/gui/CGlue.h +667 -0
  205. cyfaust/resources/architecture/faust/gui/CInterface.h +142 -0
  206. cyfaust/resources/architecture/faust/gui/ControlSequenceUI.h +197 -0
  207. cyfaust/resources/architecture/faust/gui/ControlUI.h +137 -0
  208. cyfaust/resources/architecture/faust/gui/DaisyControlUI.h +283 -0
  209. cyfaust/resources/architecture/faust/gui/DaisyPatchInitControlUI.h +254 -0
  210. cyfaust/resources/architecture/faust/gui/DecoratorUI.h +115 -0
  211. cyfaust/resources/architecture/faust/gui/Esp32ControlUI.h +341 -0
  212. cyfaust/resources/architecture/faust/gui/Esp32Reader.h +102 -0
  213. cyfaust/resources/architecture/faust/gui/Esp32SensorUI.h +137 -0
  214. cyfaust/resources/architecture/faust/gui/FUI.h +147 -0
  215. cyfaust/resources/architecture/faust/gui/GTKUI.h +1414 -0
  216. cyfaust/resources/architecture/faust/gui/GUI.h +465 -0
  217. cyfaust/resources/architecture/faust/gui/JSONControl.h +48 -0
  218. cyfaust/resources/architecture/faust/gui/JSONUI.h +722 -0
  219. cyfaust/resources/architecture/faust/gui/JSONUIDecoder.h +589 -0
  220. cyfaust/resources/architecture/faust/gui/JuceGUI.h +2061 -0
  221. cyfaust/resources/architecture/faust/gui/JuceOSCUI.h +163 -0
  222. cyfaust/resources/architecture/faust/gui/JuceParameterUI.h +158 -0
  223. cyfaust/resources/architecture/faust/gui/JuceReader.h +103 -0
  224. cyfaust/resources/architecture/faust/gui/JuceStateUI.h +88 -0
  225. cyfaust/resources/architecture/faust/gui/LayoutUI.h +423 -0
  226. cyfaust/resources/architecture/faust/gui/LibsndfileReader.h +366 -0
  227. cyfaust/resources/architecture/faust/gui/MapUI.h +370 -0
  228. cyfaust/resources/architecture/faust/gui/MemoryReader.h +111 -0
  229. cyfaust/resources/architecture/faust/gui/MetaDataUI.h +357 -0
  230. cyfaust/resources/architecture/faust/gui/MidiUI.h +939 -0
  231. cyfaust/resources/architecture/faust/gui/OCVUI.h +688 -0
  232. cyfaust/resources/architecture/faust/gui/OSCUI.h +219 -0
  233. cyfaust/resources/architecture/faust/gui/PathBuilder.h +228 -0
  234. cyfaust/resources/architecture/faust/gui/PresetUI.h +337 -0
  235. cyfaust/resources/architecture/faust/gui/PrintCUI.h +152 -0
  236. cyfaust/resources/architecture/faust/gui/PrintUI.h +121 -0
  237. cyfaust/resources/architecture/faust/gui/QTUI.h +1891 -0
  238. cyfaust/resources/architecture/faust/gui/RosCI.h +493 -0
  239. cyfaust/resources/architecture/faust/gui/RosUI.h +488 -0
  240. cyfaust/resources/architecture/faust/gui/SaveUI.h +163 -0
  241. cyfaust/resources/architecture/faust/gui/SimpleParser.h +583 -0
  242. cyfaust/resources/architecture/faust/gui/SoundUI.h +217 -0
  243. cyfaust/resources/architecture/faust/gui/Soundfile.h +342 -0
  244. cyfaust/resources/architecture/faust/gui/Styles/Blue.qrc +5 -0
  245. cyfaust/resources/architecture/faust/gui/Styles/Blue.qss +177 -0
  246. cyfaust/resources/architecture/faust/gui/Styles/Default.qrc +5 -0
  247. cyfaust/resources/architecture/faust/gui/Styles/Default.qss +117 -0
  248. cyfaust/resources/architecture/faust/gui/Styles/Grey.qrc +5 -0
  249. cyfaust/resources/architecture/faust/gui/Styles/Grey.qss +174 -0
  250. cyfaust/resources/architecture/faust/gui/Styles/Salmon.qrc +5 -0
  251. cyfaust/resources/architecture/faust/gui/Styles/Salmon.qss +171 -0
  252. cyfaust/resources/architecture/faust/gui/UI.h +87 -0
  253. cyfaust/resources/architecture/faust/gui/ValueConverter.h +543 -0
  254. cyfaust/resources/architecture/faust/gui/WaveReader.h +364 -0
  255. cyfaust/resources/architecture/faust/gui/console.h +322 -0
  256. cyfaust/resources/architecture/faust/gui/httpdUI.h +372 -0
  257. cyfaust/resources/architecture/faust/gui/meta.h +39 -0
  258. cyfaust/resources/architecture/faust/gui/mspUI.h +580 -0
  259. cyfaust/resources/architecture/faust/gui/qrcodegen.h +269 -0
  260. cyfaust/resources/architecture/faust/gui/qrcodegen.impl.h +1025 -0
  261. cyfaust/resources/architecture/faust/gui/ring-buffer.h +414 -0
  262. cyfaust/resources/architecture/faust/midi/RtMidi.cpp +3054 -0
  263. cyfaust/resources/architecture/faust/midi/RtMidi.h +1034 -0
  264. cyfaust/resources/architecture/faust/midi/bela-midi.h +266 -0
  265. cyfaust/resources/architecture/faust/midi/daisy-midi.h +116 -0
  266. cyfaust/resources/architecture/faust/midi/esp32-midi.h +185 -0
  267. cyfaust/resources/architecture/faust/midi/gramophone-midi.h +107 -0
  268. cyfaust/resources/architecture/faust/midi/iplug2-midi.h +148 -0
  269. cyfaust/resources/architecture/faust/midi/jack-midi.h +247 -0
  270. cyfaust/resources/architecture/faust/midi/juce-midi.h +275 -0
  271. cyfaust/resources/architecture/faust/midi/midi.h +475 -0
  272. cyfaust/resources/architecture/faust/midi/rt-midi.h +315 -0
  273. cyfaust/resources/architecture/faust/midi/teensy-midi.h +89 -0
  274. cyfaust/resources/architecture/faust/misc.h +106 -0
  275. cyfaust/resources/architecture/faust/sound-file.h +132 -0
  276. cyfaust/resources/architecture/faust/unity/AudioPluginInterface.h +301 -0
  277. cyfaust/resources/architecture/faust/vst/faust.h +141 -0
  278. cyfaust/resources/architecture/faust/vst/voice.h +43 -0
  279. cyfaust/resources/architecture/faust/vst/vstui.h +524 -0
  280. cyfaust/resources/architecture/faustvst.cpp +3435 -0
  281. cyfaust/resources/architecture/faustvstqt.h +91 -0
  282. cyfaust/resources/architecture/gen-json.cpp +76 -0
  283. cyfaust/resources/architecture/jack-console.cpp +267 -0
  284. cyfaust/resources/architecture/jack-gtk-ros.cpp +139 -0
  285. cyfaust/resources/architecture/jack-gtk.cpp +282 -0
  286. cyfaust/resources/architecture/jack-internal.cpp +560 -0
  287. cyfaust/resources/architecture/jack-qt-chain-footer.cpp +87 -0
  288. cyfaust/resources/architecture/jack-qt-chain-header.cpp +92 -0
  289. cyfaust/resources/architecture/jack-qt.cpp +281 -0
  290. cyfaust/resources/architecture/jack.rs +171 -0
  291. cyfaust/resources/architecture/juce/README.md +84 -0
  292. cyfaust/resources/architecture/juce/juce-plugin.cpp +809 -0
  293. cyfaust/resources/architecture/juce/juce-standalone.cpp +413 -0
  294. cyfaust/resources/architecture/juce/plugin/plugin-llvm.jucer +184 -0
  295. cyfaust/resources/architecture/juce/plugin/plugin.jucer +159 -0
  296. cyfaust/resources/architecture/juce/standalone/standalone-llvm.jucer +216 -0
  297. cyfaust/resources/architecture/juce/standalone/standalone.jucer +191 -0
  298. cyfaust/resources/architecture/ladspa.cpp +543 -0
  299. cyfaust/resources/architecture/latexheader.tex +65 -0
  300. cyfaust/resources/architecture/lv2.cpp +2090 -0
  301. cyfaust/resources/architecture/lv2qtgui.h +62 -0
  302. cyfaust/resources/architecture/lv2ui.cpp +1966 -0
  303. cyfaust/resources/architecture/max-msp/README.md +109 -0
  304. cyfaust/resources/architecture/max-msp/faustgen-wrapper-poly.maxpat +184 -0
  305. cyfaust/resources/architecture/max-msp/faustgen-wrapper.maxpat +163 -0
  306. cyfaust/resources/architecture/max-msp/max-msp.cpp +734 -0
  307. cyfaust/resources/architecture/max-msp/max-msp64.cpp +789 -0
  308. cyfaust/resources/architecture/max-msp/py2max/README.md +277 -0
  309. cyfaust/resources/architecture/max-msp/py2max/py2max/__init__.py +3 -0
  310. cyfaust/resources/architecture/max-msp/py2max/py2max/common.py +7 -0
  311. cyfaust/resources/architecture/max-msp/py2max/py2max/core.py +1387 -0
  312. cyfaust/resources/architecture/max-msp/py2max/py2max/maxclassdb.py +318 -0
  313. cyfaust/resources/architecture/max-msp/py2max/py2max/utils.py +20 -0
  314. cyfaust/resources/architecture/max-msp/rnbo.py +1591 -0
  315. cyfaust/resources/architecture/max-msp/sndfile/sndfile.h +857 -0
  316. cyfaust/resources/architecture/max-msp/ui.js +230 -0
  317. cyfaust/resources/architecture/max-msp/wrapper-poly.maxpat +153 -0
  318. cyfaust/resources/architecture/max-msp/wrapper.maxpat +131 -0
  319. cyfaust/resources/architecture/minimal-bench.cpp +100 -0
  320. cyfaust/resources/architecture/minimal-effect.c +149 -0
  321. cyfaust/resources/architecture/minimal-effect.cpp +70 -0
  322. cyfaust/resources/architecture/minimal-fixed-point.cpp +195 -0
  323. cyfaust/resources/architecture/minimal-static.cpp +160 -0
  324. cyfaust/resources/architecture/minimal.c +103 -0
  325. cyfaust/resources/architecture/minimal.cpp +84 -0
  326. cyfaust/resources/architecture/minimal.rs +223 -0
  327. cyfaust/resources/architecture/module.cpp +91 -0
  328. cyfaust/resources/architecture/octave.cpp +471 -0
  329. cyfaust/resources/architecture/oscio-gtk.cpp +115 -0
  330. cyfaust/resources/architecture/oscio-qt.cpp +121 -0
  331. cyfaust/resources/architecture/owl.cpp +345 -0
  332. cyfaust/resources/architecture/pa-gtk.cpp +119 -0
  333. cyfaust/resources/architecture/pa-qt.cpp +261 -0
  334. cyfaust/resources/architecture/path-printer.cpp +100 -0
  335. cyfaust/resources/architecture/plot.cpp +128 -0
  336. cyfaust/resources/architecture/portaudio.rs +192 -0
  337. cyfaust/resources/architecture/puredata.cpp +636 -0
  338. cyfaust/resources/architecture/ra-qt.cpp +238 -0
  339. cyfaust/resources/architecture/sam/fast_pow2.h +69 -0
  340. cyfaust/resources/architecture/sam/fastexp.h +140 -0
  341. cyfaust/resources/architecture/sam/samFaustDSP.cpp +125 -0
  342. cyfaust/resources/architecture/sam/samFaustDSP.h +107 -0
  343. cyfaust/resources/architecture/scheduler.cpp +1391 -0
  344. cyfaust/resources/architecture/sndfile.cpp +291 -0
  345. cyfaust/resources/architecture/supercollider.cpp +611 -0
  346. cyfaust/resources/architecture/teensy/README.md +13 -0
  347. cyfaust/resources/architecture/teensy/teensy.cpp +214 -0
  348. cyfaust/resources/architecture/teensy/teensy.h +71 -0
  349. cyfaust/resources/architecture/thread.h +373 -0
  350. cyfaust/resources/architecture/vcvrack/README.md +78 -0
  351. cyfaust/resources/architecture/vcvrack/template/.gitignore +6 -0
  352. cyfaust/resources/architecture/vcvrack/template/Makefile +22 -0
  353. cyfaust/resources/architecture/vcvrack/template/res/FaustModule.svg +299 -0
  354. cyfaust/resources/architecture/vcvrack/template/src/FaustModule.cpp +942 -0
  355. cyfaust/resources/architecture/vst.cpp +947 -0
  356. cyfaust/resources/libraries/aanl.lib +900 -0
  357. cyfaust/resources/libraries/all.lib +36 -0
  358. cyfaust/resources/libraries/analyzers.lib +980 -0
  359. cyfaust/resources/libraries/basics.lib +2681 -0
  360. cyfaust/resources/libraries/compressors.lib +1341 -0
  361. cyfaust/resources/libraries/delays.lib +401 -0
  362. cyfaust/resources/libraries/demos.lib +1556 -0
  363. cyfaust/resources/libraries/dx7.lib +1036 -0
  364. cyfaust/resources/libraries/effect.lib +1645 -0
  365. cyfaust/resources/libraries/envelopes.lib +666 -0
  366. cyfaust/resources/libraries/examples/README.md +13 -0
  367. cyfaust/resources/libraries/examples/ambisonics/fourSourcesToOcto.dsp +20 -0
  368. cyfaust/resources/libraries/examples/ambisonics/oneSourceToStereo.dsp +12 -0
  369. cyfaust/resources/libraries/examples/analysis/FFT.dsp +26 -0
  370. cyfaust/resources/libraries/examples/analysis/dbmeter.dsp +19 -0
  371. cyfaust/resources/libraries/examples/analysis/spectralLevel.dsp +8 -0
  372. cyfaust/resources/libraries/examples/analysis/spectralTiltLab.dsp +20 -0
  373. cyfaust/resources/libraries/examples/analysis/vumeter.dsp +18 -0
  374. cyfaust/resources/libraries/examples/autodiff/delay/diff.dsp +2 -0
  375. cyfaust/resources/libraries/examples/autodiff/delay/gt.dsp +2 -0
  376. cyfaust/resources/libraries/examples/autodiff/gain/diff.dsp +7 -0
  377. cyfaust/resources/libraries/examples/autodiff/gain/gt.dsp +1 -0
  378. cyfaust/resources/libraries/examples/autodiff/gain_dc/diff.dsp +7 -0
  379. cyfaust/resources/libraries/examples/autodiff/gain_dc/gt.dsp +4 -0
  380. cyfaust/resources/libraries/examples/autodiff/gain_exp/diff.dsp +9 -0
  381. cyfaust/resources/libraries/examples/autodiff/gain_exp/gt.dsp +1 -0
  382. cyfaust/resources/libraries/examples/autodiff/gain_pow/diff.dsp +9 -0
  383. cyfaust/resources/libraries/examples/autodiff/gain_pow/gt.dsp +1 -0
  384. cyfaust/resources/libraries/examples/autodiff/gain_pow_trig/diff.dsp +12 -0
  385. cyfaust/resources/libraries/examples/autodiff/gain_pow_trig/gt.dsp +1 -0
  386. cyfaust/resources/libraries/examples/autodiff/gain_sq/diff.dsp +7 -0
  387. cyfaust/resources/libraries/examples/autodiff/gain_sq/gt.dsp +1 -0
  388. cyfaust/resources/libraries/examples/autodiff/mem/diff.dsp +1 -0
  389. cyfaust/resources/libraries/examples/autodiff/mem/gt.dsp +1 -0
  390. cyfaust/resources/libraries/examples/autodiff/noise.dsp +2 -0
  391. cyfaust/resources/libraries/examples/autodiff/noop.dsp +2 -0
  392. cyfaust/resources/libraries/examples/autodiff/one_zero/diff.dsp +2 -0
  393. cyfaust/resources/libraries/examples/autodiff/one_zero/gt.dsp +2 -0
  394. cyfaust/resources/libraries/examples/autodiff/ramp.dsp +1 -0
  395. cyfaust/resources/libraries/examples/autodiff/recursion/diff.dsp +2 -0
  396. cyfaust/resources/libraries/examples/autodiff/recursion/gt.dsp +1 -0
  397. cyfaust/resources/libraries/examples/autodiff/recursion/target.dsp +13 -0
  398. cyfaust/resources/libraries/examples/autodiff/tremolo/diff.dsp +14 -0
  399. cyfaust/resources/libraries/examples/autodiff/tremolo/diffable.lib +7 -0
  400. cyfaust/resources/libraries/examples/autodiff/tremolo/gt.dsp +11 -0
  401. cyfaust/resources/libraries/examples/delayEcho/echo.dsp +15 -0
  402. cyfaust/resources/libraries/examples/delayEcho/quadEcho.dsp +21 -0
  403. cyfaust/resources/libraries/examples/delayEcho/smoothDelay.dsp +26 -0
  404. cyfaust/resources/libraries/examples/delayEcho/stereoEcho.dsp +16 -0
  405. cyfaust/resources/libraries/examples/delayEcho/tapiir.dsp +44 -0
  406. cyfaust/resources/libraries/examples/dynamic/compressor.dsp +8 -0
  407. cyfaust/resources/libraries/examples/dynamic/distortion.dsp +8 -0
  408. cyfaust/resources/libraries/examples/dynamic/gateCompressor.dsp +10 -0
  409. cyfaust/resources/libraries/examples/dynamic/noiseGate.dsp +8 -0
  410. cyfaust/resources/libraries/examples/dynamic/volume.dsp +15 -0
  411. cyfaust/resources/libraries/examples/filtering/APF.dsp +13 -0
  412. cyfaust/resources/libraries/examples/filtering/BPF.dsp +13 -0
  413. cyfaust/resources/libraries/examples/filtering/DNN.dsp +25 -0
  414. cyfaust/resources/libraries/examples/filtering/HPF.dsp +13 -0
  415. cyfaust/resources/libraries/examples/filtering/LPF.dsp +13 -0
  416. cyfaust/resources/libraries/examples/filtering/bandFilter.dsp +44 -0
  417. cyfaust/resources/libraries/examples/filtering/cryBaby.dsp +4 -0
  418. cyfaust/resources/libraries/examples/filtering/diodeLadder.dsp +12 -0
  419. cyfaust/resources/libraries/examples/filtering/filterBank.dsp +6 -0
  420. cyfaust/resources/libraries/examples/filtering/graphicEqLab.dsp +10 -0
  421. cyfaust/resources/libraries/examples/filtering/highShelf.dsp +13 -0
  422. cyfaust/resources/libraries/examples/filtering/korg35HPF.dsp +13 -0
  423. cyfaust/resources/libraries/examples/filtering/korg35LPF.dsp +13 -0
  424. cyfaust/resources/libraries/examples/filtering/lfBoost.dsp +40 -0
  425. cyfaust/resources/libraries/examples/filtering/lowBoost.dsp +40 -0
  426. cyfaust/resources/libraries/examples/filtering/lowCut.dsp +40 -0
  427. cyfaust/resources/libraries/examples/filtering/lowShelf.dsp +13 -0
  428. cyfaust/resources/libraries/examples/filtering/moogHalfLadder.dsp +12 -0
  429. cyfaust/resources/libraries/examples/filtering/moogLadder.dsp +12 -0
  430. cyfaust/resources/libraries/examples/filtering/moogVCF.dsp +6 -0
  431. cyfaust/resources/libraries/examples/filtering/multibandFilter.dsp +14 -0
  432. cyfaust/resources/libraries/examples/filtering/notch.dsp +13 -0
  433. cyfaust/resources/libraries/examples/filtering/oberheim.dsp +14 -0
  434. cyfaust/resources/libraries/examples/filtering/oberheimBPF.dsp +13 -0
  435. cyfaust/resources/libraries/examples/filtering/oberheimBSF.dsp +13 -0
  436. cyfaust/resources/libraries/examples/filtering/oberheimHPF.dsp +13 -0
  437. cyfaust/resources/libraries/examples/filtering/oberheimLPF.dsp +13 -0
  438. cyfaust/resources/libraries/examples/filtering/parametricEqLab.dsp +10 -0
  439. cyfaust/resources/libraries/examples/filtering/parametricEqualizer.dsp +6 -0
  440. cyfaust/resources/libraries/examples/filtering/peakNotch.dsp +13 -0
  441. cyfaust/resources/libraries/examples/filtering/peakingEQ.dsp +13 -0
  442. cyfaust/resources/libraries/examples/filtering/sallenKey2ndOrder.dsp +14 -0
  443. cyfaust/resources/libraries/examples/filtering/sallenKey2ndOrderBPF.dsp +13 -0
  444. cyfaust/resources/libraries/examples/filtering/sallenKey2ndOrderHPF.dsp +13 -0
  445. cyfaust/resources/libraries/examples/filtering/sallenKey2ndOrderLPF.dsp +13 -0
  446. cyfaust/resources/libraries/examples/filtering/sallenKeyOnePole.dsp +13 -0
  447. cyfaust/resources/libraries/examples/filtering/sallenKeyOnePoleHPF.dsp +12 -0
  448. cyfaust/resources/libraries/examples/filtering/sallenKeyOnePoleLPF.dsp +12 -0
  449. cyfaust/resources/libraries/examples/filtering/spectralTilt.dsp +8 -0
  450. cyfaust/resources/libraries/examples/filtering/vcfWahLab.dsp +12 -0
  451. cyfaust/resources/libraries/examples/filtering/vocoder.dsp +8 -0
  452. cyfaust/resources/libraries/examples/filtering/wahPedal.dsp +6 -0
  453. cyfaust/resources/libraries/examples/gameaudio/bubble.dsp +42 -0
  454. cyfaust/resources/libraries/examples/gameaudio/door.dsp +58 -0
  455. cyfaust/resources/libraries/examples/gameaudio/fire.dsp +46 -0
  456. cyfaust/resources/libraries/examples/gameaudio/insects.dsp +148 -0
  457. cyfaust/resources/libraries/examples/gameaudio/rain.dsp +27 -0
  458. cyfaust/resources/libraries/examples/gameaudio/wind.dsp +23 -0
  459. cyfaust/resources/libraries/examples/generator/filterOsc.dsp +8 -0
  460. cyfaust/resources/libraries/examples/generator/noise.dsp +52 -0
  461. cyfaust/resources/libraries/examples/generator/noiseMetadata.dsp +74 -0
  462. cyfaust/resources/libraries/examples/generator/osc.dsp +17 -0
  463. cyfaust/resources/libraries/examples/generator/osci.dsp +17 -0
  464. cyfaust/resources/libraries/examples/generator/sawtoothLab.dsp +8 -0
  465. cyfaust/resources/libraries/examples/generator/virtualAnalog.dsp +8 -0
  466. cyfaust/resources/libraries/examples/generator/virtualAnalogLab.dsp +10 -0
  467. cyfaust/resources/libraries/examples/misc/UITester.dsp +71 -0
  468. cyfaust/resources/libraries/examples/misc/autopan.dsp +59 -0
  469. cyfaust/resources/libraries/examples/misc/capture.dsp +24 -0
  470. cyfaust/resources/libraries/examples/misc/drumkit.dsp +36 -0
  471. cyfaust/resources/libraries/examples/misc/guitarix.dsp +184 -0
  472. cyfaust/resources/libraries/examples/misc/matrix.dsp +17 -0
  473. cyfaust/resources/libraries/examples/misc/midiTester.dsp +122 -0
  474. cyfaust/resources/libraries/examples/misc/mixer.dsp +27 -0
  475. cyfaust/resources/libraries/examples/misc/statespace.dsp +39 -0
  476. cyfaust/resources/libraries/examples/misc/switcher.dsp +20 -0
  477. cyfaust/resources/libraries/examples/misc/tester.dsp +32 -0
  478. cyfaust/resources/libraries/examples/misc/tester2.dsp +31 -0
  479. cyfaust/resources/libraries/examples/old/README.md +5 -0
  480. cyfaust/resources/libraries/examples/old/freeverb.dsp +109 -0
  481. cyfaust/resources/libraries/examples/old/rewriting/Makefile +21 -0
  482. cyfaust/resources/libraries/examples/old/rewriting/fact.dsp +3 -0
  483. cyfaust/resources/libraries/examples/old/rewriting/fold.dsp +61 -0
  484. cyfaust/resources/libraries/examples/old/rewriting/mesh.dsp +43 -0
  485. cyfaust/resources/libraries/examples/old/rewriting/mesh.pd +37 -0
  486. cyfaust/resources/libraries/examples/old/rewriting/sample.pd +12 -0
  487. cyfaust/resources/libraries/examples/old/rewriting/serial.dsp +7 -0
  488. cyfaust/resources/libraries/examples/old/rewriting/sum.dsp +55 -0
  489. cyfaust/resources/libraries/examples/old/rewriting/test.pd +48 -0
  490. cyfaust/resources/libraries/examples/phasing/flanger.dsp +8 -0
  491. cyfaust/resources/libraries/examples/phasing/phaser.dsp +8 -0
  492. cyfaust/resources/libraries/examples/phasing/phaserFlangerLab.dsp +12 -0
  493. cyfaust/resources/libraries/examples/physicalModeling/brass.dsp +8 -0
  494. cyfaust/resources/libraries/examples/physicalModeling/brassMIDI.dsp +8 -0
  495. cyfaust/resources/libraries/examples/physicalModeling/churchBell.dsp +8 -0
  496. cyfaust/resources/libraries/examples/physicalModeling/clarinet.dsp +8 -0
  497. cyfaust/resources/libraries/examples/physicalModeling/clarinetMIDI.dsp +8 -0
  498. cyfaust/resources/libraries/examples/physicalModeling/djembeMIDI.dsp +8 -0
  499. cyfaust/resources/libraries/examples/physicalModeling/elecGuitarMIDI.dsp +10 -0
  500. cyfaust/resources/libraries/examples/physicalModeling/englishBell.dsp +8 -0
  501. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/NLFeks.dsp +91 -0
  502. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/NLFfm.dsp +70 -0
  503. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/README +125 -0
  504. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/bass.dsp +84 -0
  505. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/bass.h +91 -0
  506. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/blowBottle.dsp +102 -0
  507. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/bowed.dsp +114 -0
  508. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/brass.dsp +103 -0
  509. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/clarinet.dsp +110 -0
  510. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/flute.dsp +116 -0
  511. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/fluteStk.dsp +121 -0
  512. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/glassHarmonica.dsp +131 -0
  513. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/harpsi.dsp +90 -0
  514. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/harpsichord.h +185 -0
  515. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/instrument.h +114 -0
  516. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/modalBar.dsp +122 -0
  517. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/modalBar.h +48 -0
  518. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/audio-out.pd +33 -0
  519. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/bottle.pd +10 -0
  520. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/clarinets.pd +15 -0
  521. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/canon/audio-out.pd +33 -0
  522. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/canon/bass.pd +162 -0
  523. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/canon/canon.pd +55 -0
  524. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/canon/flute.pd +343 -0
  525. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/canon/pachelbel.mid +0 -0
  526. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/daisy/audio-out.pd +33 -0
  527. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/daisy/daisy.mid +0 -0
  528. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/daisy/daisy.pd +45 -0
  529. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/daisy/piano.pd +205 -0
  530. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/daisy/voiceForm.pd +340 -0
  531. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/take5/audio-out.pd +33 -0
  532. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/take5/blowHole.pd +330 -0
  533. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/take5/piano.pd +205 -0
  534. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/take5/take5.mid +0 -0
  535. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/take5/take5.pd +45 -0
  536. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/turkish-march/audio-out.pd +33 -0
  537. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/turkish-march/harpsi.pd +204 -0
  538. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/turkish-march/turkish-march.mid +0 -0
  539. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/turkish-march/turkish-march.pd +31 -0
  540. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/what-a-friend/audio-out.pd +33 -0
  541. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/what-a-friend/bass.pd +162 -0
  542. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/what-a-friend/modalBar.pd +258 -0
  543. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/what-a-friend/piano.pd +205 -0
  544. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/what-a-friend/what-a-friend.pd +52 -0
  545. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fancy/what-a-friend/what_a_friend.mid +0 -0
  546. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/flutes.pd +15 -0
  547. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/fm.pd +10 -0
  548. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/glassBare.pd +10 -0
  549. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/harpsichord-poly.pd +10 -0
  550. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/ironBare.pd +10 -0
  551. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/midi-in.pd +111 -0
  552. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/modal.pd +10 -0
  553. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/osc.pd +26 -0
  554. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/piano-poly.pd +10 -0
  555. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/plucked.pd +20 -0
  556. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/saxophone.pd +10 -0
  557. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/tibetan.pd +10 -0
  558. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/trumpet.pd +10 -0
  559. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/violin.pd +10 -0
  560. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/voiceSynth.pd +10 -0
  561. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/pd-patches/woodenBare.pd +10 -0
  562. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/phonemes.h +189 -0
  563. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/piano.dsp +255 -0
  564. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/piano.h +751 -0
  565. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/saxophony.dsp +114 -0
  566. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/sitar.dsp +48 -0
  567. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/tibetanBowl.dsp +155 -0
  568. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/tunedBar.dsp +123 -0
  569. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/uniBar.dsp +100 -0
  570. cyfaust/resources/libraries/examples/physicalModeling/faust-stk/voiceForm.dsp +125 -0
  571. cyfaust/resources/libraries/examples/physicalModeling/fds/1dDampedWaveEquation.dsp +43 -0
  572. cyfaust/resources/libraries/examples/physicalModeling/fds/2dKirchhoffThinPlate.dsp +75 -0
  573. cyfaust/resources/libraries/examples/physicalModeling/fds/BowedString.dsp +61 -0
  574. cyfaust/resources/libraries/examples/physicalModeling/fds/ControllableNonPhysicalString.dsp +72 -0
  575. cyfaust/resources/libraries/examples/physicalModeling/fds/HammeredString.dsp +74 -0
  576. cyfaust/resources/libraries/examples/physicalModeling/fds/PianoHammeredString.dsp +85 -0
  577. cyfaust/resources/libraries/examples/physicalModeling/fds/StiffString.dsp +54 -0
  578. cyfaust/resources/libraries/examples/physicalModeling/flute.dsp +8 -0
  579. cyfaust/resources/libraries/examples/physicalModeling/fluteMIDI.dsp +8 -0
  580. cyfaust/resources/libraries/examples/physicalModeling/frenchBell.dsp +8 -0
  581. cyfaust/resources/libraries/examples/physicalModeling/germanBell.dsp +8 -0
  582. cyfaust/resources/libraries/examples/physicalModeling/guitarMIDI.dsp +8 -0
  583. cyfaust/resources/libraries/examples/physicalModeling/karplus.dsp +8 -0
  584. cyfaust/resources/libraries/examples/physicalModeling/marimbaMIDI.dsp +10 -0
  585. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/00_BasicOscillator/harmonicOscillator.dsp +58 -0
  586. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/00_BasicOscillator/harmonicOscillator2.dsp +62 -0
  587. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/00_BasicOscillator/harmonicOscillator3.dsp +65 -0
  588. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/01_ParamControl/paramOsc.dsp +63 -0
  589. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/02_AudioParamControl/audioParamOsc.dsp +63 -0
  590. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/03_HammerTime/hammerOsc.dsp +71 -0
  591. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/04_Gravity/bouncingOsc.dsp +64 -0
  592. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/05_PluckedOscillator/pluckedOsc.dsp +57 -0
  593. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/06_BowedOscillator/bowedOsc.dsp +65 -0
  594. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/07_NonLinearOscillator/nlOsc.dsp +78 -0
  595. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/08_TwoMassChain/2massChain.dsp +75 -0
  596. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/09_TinyString/tinyString.dsp +101 -0
  597. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/10_PluckedString/pluckedString.dsp +678 -0
  598. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/11_BowedString/bowedString.dsp +671 -0
  599. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/12_TriangleMesh/triangleMesh.dsp +448 -0
  600. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/13_Construction/construction.dsp +1036 -0
  601. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/14_Polyphonic/polyTriangle.dsp +79 -0
  602. cyfaust/resources/libraries/examples/physicalModeling/mi-faust/15_PhysicalLFO/physicalLFO.dsp +107 -0
  603. cyfaust/resources/libraries/examples/physicalModeling/modularInterpInstrMIDI.dsp +8 -0
  604. cyfaust/resources/libraries/examples/physicalModeling/nylonGuitarMIDI.dsp +8 -0
  605. cyfaust/resources/libraries/examples/physicalModeling/old/harpe.dsp +45 -0
  606. cyfaust/resources/libraries/examples/physicalModeling/old/karplus.dsp +34 -0
  607. cyfaust/resources/libraries/examples/physicalModeling/old/karplus32.dsp +47 -0
  608. cyfaust/resources/libraries/examples/physicalModeling/russianBell.dsp +8 -0
  609. cyfaust/resources/libraries/examples/physicalModeling/standardBell.dsp +8 -0
  610. cyfaust/resources/libraries/examples/physicalModeling/violin.dsp +8 -0
  611. cyfaust/resources/libraries/examples/physicalModeling/violinMIDI.dsp +8 -0
  612. cyfaust/resources/libraries/examples/physicalModeling/vocalBP.dsp +8 -0
  613. cyfaust/resources/libraries/examples/physicalModeling/vocalBPMIDI.dsp +8 -0
  614. cyfaust/resources/libraries/examples/physicalModeling/vocalFOF.dsp +8 -0
  615. cyfaust/resources/libraries/examples/physicalModeling/vocalFOFMIDI.dsp +8 -0
  616. cyfaust/resources/libraries/examples/pitchShifting/pitchShifter.dsp +20 -0
  617. cyfaust/resources/libraries/examples/psychoacoustic/harmonicExciter.dsp +10 -0
  618. cyfaust/resources/libraries/examples/quantizing/quantizedChords.dsp +49 -0
  619. cyfaust/resources/libraries/examples/reverb/dattorro.dsp +8 -0
  620. cyfaust/resources/libraries/examples/reverb/fdnRev.dsp +8 -0
  621. cyfaust/resources/libraries/examples/reverb/freeverb.dsp +8 -0
  622. cyfaust/resources/libraries/examples/reverb/greyhole.dsp +8 -0
  623. cyfaust/resources/libraries/examples/reverb/jprev.dsp +8 -0
  624. cyfaust/resources/libraries/examples/reverb/reverbDesigner.dsp +12 -0
  625. cyfaust/resources/libraries/examples/reverb/reverbTester.dsp +8 -0
  626. cyfaust/resources/libraries/examples/reverb/zitaRev.dsp +8 -0
  627. cyfaust/resources/libraries/examples/reverb/zitaRevFDN.dsp +8 -0
  628. cyfaust/resources/libraries/examples/smartKeyboard/acGuitar.dsp +100 -0
  629. cyfaust/resources/libraries/examples/smartKeyboard/associatedEffects/elecGuitarEffect.dsp +8 -0
  630. cyfaust/resources/libraries/examples/smartKeyboard/associatedEffects/myEffect.dsp +5 -0
  631. cyfaust/resources/libraries/examples/smartKeyboard/associatedEffects/reverb.dsp +5 -0
  632. cyfaust/resources/libraries/examples/smartKeyboard/bells.dsp +80 -0
  633. cyfaust/resources/libraries/examples/smartKeyboard/bowed.dsp +87 -0
  634. cyfaust/resources/libraries/examples/smartKeyboard/brass.dsp +82 -0
  635. cyfaust/resources/libraries/examples/smartKeyboard/clarinet.dsp +113 -0
  636. cyfaust/resources/libraries/examples/smartKeyboard/crazyGuiro.dsp +96 -0
  637. cyfaust/resources/libraries/examples/smartKeyboard/drums.dsp +74 -0
  638. cyfaust/resources/libraries/examples/smartKeyboard/dubDub.dsp +87 -0
  639. cyfaust/resources/libraries/examples/smartKeyboard/elecGuitar.dsp +67 -0
  640. cyfaust/resources/libraries/examples/smartKeyboard/fm.dsp +78 -0
  641. cyfaust/resources/libraries/examples/smartKeyboard/frog.dsp +74 -0
  642. cyfaust/resources/libraries/examples/smartKeyboard/harp.dsp +84 -0
  643. cyfaust/resources/libraries/examples/smartKeyboard/midiOnly.dsp +62 -0
  644. cyfaust/resources/libraries/examples/smartKeyboard/multiSynth.dsp +75 -0
  645. cyfaust/resources/libraries/examples/smartKeyboard/toy.dsp +71 -0
  646. cyfaust/resources/libraries/examples/smartKeyboard/trumpet.dsp +59 -0
  647. cyfaust/resources/libraries/examples/smartKeyboard/turenas.dsp +114 -0
  648. cyfaust/resources/libraries/examples/smartKeyboard/violin.dsp +91 -0
  649. cyfaust/resources/libraries/examples/smartKeyboard/violin2.dsp +84 -0
  650. cyfaust/resources/libraries/examples/smartKeyboard/vocal.dsp +43 -0
  651. cyfaust/resources/libraries/examples/spat/panpot.dsp +17 -0
  652. cyfaust/resources/libraries/examples/spat/spat.dsp +25 -0
  653. cyfaust/resources/libraries/fds.lib +535 -0
  654. cyfaust/resources/libraries/filter.lib +1710 -0
  655. cyfaust/resources/libraries/filters.lib +3125 -0
  656. cyfaust/resources/libraries/hoa.lib +1081 -0
  657. cyfaust/resources/libraries/instruments.lib +263 -0
  658. cyfaust/resources/libraries/interpolators.lib +675 -0
  659. cyfaust/resources/libraries/math.lib +602 -0
  660. cyfaust/resources/libraries/maths.lib +798 -0
  661. cyfaust/resources/libraries/maxmsp.lib +237 -0
  662. cyfaust/resources/libraries/mi.lib +528 -0
  663. cyfaust/resources/libraries/misceffects.lib +998 -0
  664. cyfaust/resources/libraries/music.lib +496 -0
  665. cyfaust/resources/libraries/noises.lib +487 -0
  666. cyfaust/resources/libraries/oscillator.lib +450 -0
  667. cyfaust/resources/libraries/oscillators.lib +1838 -0
  668. cyfaust/resources/libraries/phaflangers.lib +235 -0
  669. cyfaust/resources/libraries/physmodels.lib +3990 -0
  670. cyfaust/resources/libraries/platform.lib +59 -0
  671. cyfaust/resources/libraries/quantizers.lib +310 -0
  672. cyfaust/resources/libraries/reducemaps.lib +235 -0
  673. cyfaust/resources/libraries/reverbs.lib +686 -0
  674. cyfaust/resources/libraries/routes.lib +262 -0
  675. cyfaust/resources/libraries/sf.lib +53 -0
  676. cyfaust/resources/libraries/signals.lib +570 -0
  677. cyfaust/resources/libraries/soundfiles.lib +234 -0
  678. cyfaust/resources/libraries/spats.lib +173 -0
  679. cyfaust/resources/libraries/stdfaust.lib +38 -0
  680. cyfaust/resources/libraries/synths.lib +322 -0
  681. cyfaust/resources/libraries/tonestacks.lib +427 -0
  682. cyfaust/resources/libraries/tubes.lib +5039 -0
  683. cyfaust/resources/libraries/vaeffects.lib +984 -0
  684. cyfaust/resources/libraries/version.lib +22 -0
  685. cyfaust/resources/libraries/wdmodels.lib +2276 -0
  686. cyfaust/resources/libraries/webaudio.lib +402 -0
  687. cyfaust/signal.pxd +44 -0
  688. cyfaust/signal.pyx +1993 -0
  689. cyfaust-0.1.0.dist-info/METADATA +355 -0
  690. cyfaust-0.1.0.dist-info/RECORD +693 -0
  691. cyfaust-0.1.0.dist-info/WHEEL +5 -0
  692. cyfaust-0.1.0.dist-info/entry_points.txt +3 -0
  693. cyfaust-0.1.0.dist-info/licenses/LICENSE +26 -0
@@ -0,0 +1,817 @@
1
+ /************************************************************************
2
+ FAUST Architecture File
3
+ Copyright (C) 2003-2022 GRAME, Centre National de Creation Musicale
4
+ ---------------------------------------------------------------------
5
+ This program is free software; you can redistribute it and/or modify
6
+ it under the terms of the GNU Lesser General Public License as published by
7
+ the Free Software Foundation; either version 2.1 of the License, or
8
+ (at your option) 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 Lesser General Public License for more details.
14
+
15
+ You should have received a copy of the GNU Lesser General Public License
16
+ along with this program; if not, write to the Free Software
17
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18
+
19
+ EXCEPTION : As a special exception, you may create a larger work
20
+ that contains this FAUST architecture section and distribute
21
+ that work under terms of your choice, so long as this FAUST
22
+ architecture section is not modified.
23
+ ************************************************************************/
24
+
25
+ #ifndef LIBFAUSTCOMMON_C_H
26
+ #define LIBFAUSTCOMMON_C_H
27
+
28
+ #include "faust/export.h"
29
+
30
+ /*!
31
+ \addtogroup boxc C interface for the Box API.
32
+ @{
33
+ */
34
+
35
+ /**
36
+ * Opaque types.
37
+ */
38
+
39
+ #ifdef _MSC_VER
40
+ typedef void CTree;
41
+ #else
42
+ typedef struct {} CTree;
43
+ #endif
44
+
45
+ typedef CTree* Signal;
46
+ typedef CTree* Box;
47
+
48
+ enum SType { kSInt, kSReal };
49
+
50
+ enum SOperator { kAdd, kSub, kMul, kDiv, kRem, kLsh, kARsh, kLRsh, kGT, kLT, kGE, kLE, kEQ, kNE, kAND, kOR, kXOR };
51
+
52
+ #ifdef __cplusplus
53
+ extern "C"
54
+ {
55
+ #endif
56
+
57
+ /**
58
+ * Print the box.
59
+ *
60
+ * @param box - the box to be printed
61
+ * @param shared - whether the identical sub boxes are printed as identifiers
62
+ * @param max_size - the maximum number of characters to be printed (possibly needed for big expressions in non shared mode)
63
+ *
64
+ * @return the printed box as a string (to be deleted by the caller using freeCMemory)
65
+ */
66
+ LIBFAUST_API char* CprintBox(Box box, bool shared, int max_size);
67
+
68
+ /**
69
+ * Print the signal.
70
+ *
71
+ * @param sig - the signal to be printed
72
+ * @param shared - whether the identical sub signals are printed as identifiers
73
+ * @param max_size - the maximum number of characters to be printed (possibly needed for big expressions in non shared mode)
74
+ *
75
+ * @return the printed signal as a string (to be deleted by the caller using freeCMemory)
76
+ */
77
+ LIBFAUST_API char* CprintSignal(Signal sig, bool shared, int max_size);
78
+
79
+ #ifdef __cplusplus
80
+ }
81
+ #endif
82
+
83
+ #endif
84
+
85
+ #ifndef LIBFAUSTBOX_C_H
86
+ #define LIBFAUSTBOX_C_H
87
+
88
+ #ifdef __cplusplus
89
+ extern "C"
90
+ {
91
+ #endif
92
+
93
+ /**
94
+ * Create global compilation context, has to be done first.
95
+ */
96
+ LIBFAUST_API void createLibContext();
97
+
98
+ /**
99
+ * Destroy global compilation context, has to be done last.
100
+ */
101
+ LIBFAUST_API void destroyLibContext();
102
+
103
+ /**
104
+ * Check if a box is nil.
105
+ *
106
+ * @param b - the box
107
+ *
108
+ * @return true if the box is nil, otherwise false.
109
+ */
110
+ LIBFAUST_API bool CisNil(Box b);
111
+
112
+ /**
113
+ * Convert a box (such as the label of a UI) to a string.
114
+ *
115
+ * @param b - the box to convert
116
+ *
117
+ * @return a string representation of a box.
118
+ */
119
+ LIBFAUST_API const char* Ctree2str(Box b);
120
+
121
+ /**
122
+ * If t has a node of type int, return it. Otherwise error
123
+ *
124
+ * @param b - the box to convert
125
+ *
126
+ * @return the int value of the box.
127
+ */
128
+ LIBFAUST_API int Ctree2int(Box b);
129
+
130
+ /**
131
+ * Return the xtended type of a box.
132
+ *
133
+ * @param b - the box whose xtended type to return
134
+ *
135
+ * @return a pointer to xtended type if it exists, otherwise nullptr.
136
+ */
137
+ LIBFAUST_API void* CgetUserData(Box b);
138
+
139
+ /**
140
+ * Constant integer : for all t, x(t) = n.
141
+ *
142
+ * @param n - the integer
143
+ *
144
+ * @return the integer box.
145
+ */
146
+
147
+ LIBFAUST_API Box CboxInt(int n);
148
+
149
+ /**
150
+ * Constant real : for all t, x(t) = n.
151
+ *
152
+ * @param n - the float/double value (depends of -single or -double compilation parameter)
153
+ *
154
+ * @return the float/double box.
155
+ */
156
+ LIBFAUST_API Box CboxReal(double n);
157
+
158
+ /**
159
+ * The identity box, copy its input to its output.
160
+ *
161
+ * @return the identity box.
162
+ */
163
+ LIBFAUST_API Box CboxWire();
164
+
165
+ /**
166
+ * The cut box, to "stop"/terminate a signal.
167
+ *
168
+ * @return the cut box.
169
+ */
170
+ LIBFAUST_API Box CboxCut();
171
+
172
+ /**
173
+ * The sequential composition of two blocks (e.g., A:B) expects: outputs(A)=inputs(B)
174
+ *
175
+ * @return the seq box.
176
+ */
177
+ LIBFAUST_API Box CboxSeq(Box x, Box y);
178
+
179
+ /**
180
+ * The parallel composition of two blocks (e.g., A,B).
181
+ * It places the two block-diagrams one on top of the other, without connections.
182
+ *
183
+ * @return the par box.
184
+ */
185
+ LIBFAUST_API Box CboxPar(Box x, Box y);
186
+
187
+ LIBFAUST_API Box CboxPar3(Box x, Box y, Box z);
188
+
189
+ LIBFAUST_API Box CboxPar4(Box a, Box b, Box c, Box d);
190
+
191
+ LIBFAUST_API Box CboxPar5(Box a, Box b, Box c, Box d, Box e);
192
+
193
+ /**
194
+ * The split composition (e.g., A<:B) operator is used to distribute
195
+ * the outputs of A to the inputs of B.
196
+ *
197
+ * For the operation to be valid, the number of inputs of B
198
+ * must be a multiple of the number of outputs of A: outputs(A).k=inputs(B)
199
+ *
200
+ * @return the split box.
201
+ */
202
+ LIBFAUST_API Box CboxSplit(Box x, Box y);
203
+
204
+ /**
205
+ * The merge composition (e.g., A:>B) is the dual of the split composition.
206
+ *
207
+ * The number of outputs of A must be a multiple of the number of inputs of B: outputs(A)=k.inputs(B)
208
+ *
209
+ * @return the merge box.
210
+ */
211
+ LIBFAUST_API Box CboxMerge(Box x, Box y);
212
+
213
+ /**
214
+ * The recursive composition (e.g., A~B) is used to create cycles in the block-diagram
215
+ * in order to express recursive computations.
216
+ * It is the most complex operation in terms of connections: outputs(A)≥inputs(B) and inputs(A)≥outputs(B)
217
+ *
218
+ * @return the rec box.
219
+ */
220
+ LIBFAUST_API Box CboxRec(Box x, Box y);
221
+
222
+ /**
223
+ * The route primitive facilitates the routing of signals in Faust.
224
+ * It has the following syntax: route(A,B,a,b,c,d,...) or route(A,B,(a,b),(c,d),...)
225
+ *
226
+ * @param n - the number of input signals
227
+ * @param m - the number of output signals
228
+ * @param r - the routing description, a 'par' expression of a,b / (a,b) input/output pairs
229
+
230
+ * @return the route box.
231
+ */
232
+ LIBFAUST_API Box CboxRoute(Box n, Box m, Box r);
233
+
234
+ /**
235
+ * Create a delayed box.
236
+ *
237
+ * @return the delayed box.
238
+ */
239
+ LIBFAUST_API Box CboxDelay();
240
+
241
+ /**
242
+ * Create a delayed box.
243
+ *
244
+ * @param s - the box to be delayed
245
+ * @param del - the delay box that doesn't have to be fixed but must be bounded and cannot be negative
246
+
247
+ * @return the delayed box.
248
+ */
249
+ LIBFAUST_API Box CboxDelayAux(Box b, Box del);
250
+
251
+ /**
252
+ * Create a casted box.
253
+ *
254
+ * @return the casted box.
255
+ */
256
+ LIBFAUST_API Box CboxIntCast();
257
+
258
+ /**
259
+ * Create a casted box.
260
+ *
261
+ * @param s - the box to be casted in integer
262
+ *
263
+ * @return the casted box.
264
+ */
265
+ LIBFAUST_API Box CboxIntCastAux(Box b);
266
+
267
+ /**
268
+ * Create a casted box.
269
+ *
270
+ * @return the casted box.
271
+ */
272
+ LIBFAUST_API Box CboxFloatCast();
273
+
274
+ /**
275
+ * Create a casted box.
276
+ *
277
+ * @param s - the signal to be casted as float/double value (depends of -single or -double compilation parameter)
278
+ *
279
+ * @return the casted box.
280
+ */
281
+ LIBFAUST_API Box CboxFloatCastAux(Box b);
282
+
283
+ /**
284
+ * Create a read only table.
285
+ *
286
+ * @return the table box.
287
+ */
288
+ LIBFAUST_API Box CboxReadOnlyTable();
289
+
290
+ /**
291
+ * Create a read only table.
292
+ *
293
+ * @param n - the table size, a constant numerical expression (see [1])
294
+ * @param init - the table content
295
+ * @param ridx - the read index (an int between 0 and n-1)
296
+ *
297
+ * @return the table box.
298
+ */
299
+ LIBFAUST_API Box CboxReadOnlyTableAux(Box n, Box init, Box ridx);
300
+
301
+ /**
302
+ * Create a read/write table.
303
+ *
304
+ * @return the table box.
305
+ */
306
+ LIBFAUST_API Box CboxWriteReadTable();
307
+
308
+ /**
309
+ * Create a read/write table.
310
+ *
311
+ * @param n - the table size, a constant numerical expression (see [1])
312
+ * @param init - the table content
313
+ * @param widx - the write index (an integer between 0 and n-1)
314
+ * @param wsig - the input of the table
315
+ * @param ridx - the read index (an integer between 0 and n-1)
316
+ *
317
+ * @return the table box.
318
+ */
319
+ LIBFAUST_API Box CboxWriteReadTableAux(Box n, Box init, Box widx, Box wsig, Box ridx);
320
+
321
+ /**
322
+ * Create a waveform.
323
+ *
324
+ * @param wf - the content of the waveform as a vector of boxInt or boxDouble boxes
325
+ *
326
+ * @return the waveform box.
327
+ */
328
+ LIBFAUST_API Box CboxWaveform(Box* wf);
329
+
330
+ /**
331
+ * Create a soundfile block.
332
+ *
333
+ * @param label - of form "label[url:{'path1';'path2';'path3'}]" to describe a list of soundfiles
334
+ * @param chan - the number of outputs channels, a constant numerical expression (see [1])
335
+ *
336
+ * @return the soundfile box.
337
+ */
338
+ LIBFAUST_API Box CboxSoundfile(const char* label, Box chan);
339
+
340
+ /**
341
+ * Create a soundfile block.
342
+ *
343
+ * @param label - of form "label[url:{'path1';'path2';'path3'}]" to describe a list of soundfiles
344
+ * @param chan - the number of outputs channels, a constant numerical expression (see [1])
345
+ * @param part - in the [0..255] range to select a given sound number, a constant numerical expression (see [1])
346
+ * @param ridx - the read index (an integer between 0 and the selected sound length)
347
+ *
348
+ * @return the soundfile box.
349
+ */
350
+ Box CoxSoundfileAux(const char* label, Box chan, Box part, Box ridx);
351
+
352
+ /**
353
+ * Create a selector between two boxes.
354
+ *
355
+ * @return the selected box depending of the selector value at each time t.
356
+ */
357
+ LIBFAUST_API Box CboxSelect2();
358
+
359
+ /**
360
+ * Create a selector between two boxes.
361
+ *
362
+ * @param selector - when 0 at time t returns s1[t], otherwise returns s2[t]
363
+ * @param s1 - first box to be selected
364
+ * @param s2 - second box to be selected
365
+ *
366
+ * @return the selected box depending of the selector value at each time t.
367
+ */
368
+ LIBFAUST_API Box CboxSelect2Aux(Box selector, Box b1, Box b2);
369
+
370
+ /**
371
+ * Create a selector between three boxes.
372
+ *
373
+ * @return the selected box depending of the selector value at each time t.
374
+ */
375
+ LIBFAUST_API Box CboxSelect3();
376
+
377
+ /**
378
+ * Create a selector between three boxes.
379
+ *
380
+ * @param selector - when 0 at time t returns s1[t], when 1 at time t returns s2[t], otherwise returns s3[t]
381
+ * @param s1 - first box to be selected
382
+ * @param s2 - second box to be selected
383
+ * @param s3 - third box to be selected
384
+ *
385
+ * @return the selected box depending of the selector value at each time t.
386
+ */
387
+ LIBFAUST_API Box CboxSelect3Aux(Box selector, Box b1, Box b2, Box b3);
388
+
389
+ /**
390
+ * Create a foreign function box.
391
+ *
392
+ * @param rtype - the foreign function return type of SType
393
+ * @param names - the list of function names for single, double, quad, fixed-point
394
+ * @param atypes - the list of arguments types
395
+ * @param incfile - the include file where the foreign function is defined
396
+ * @param libfile - the library file where the foreign function is defined
397
+ *
398
+ * @return the foreign function box.
399
+ */
400
+ LIBFAUST_API Box CboxFFun(SType rtype, const char** names, SType* atypes, const char* incfile, const char* libfile);
401
+
402
+ /**
403
+ * Create a foreign constant box.
404
+ *
405
+ * @param type - the foreign constant type of SType
406
+ * @param name - the foreign constant name
407
+ * @param incfile - the include file where the foreign constant is defined
408
+ *
409
+ * @return the foreign constant box.
410
+ */
411
+ LIBFAUST_API Box CboxFConst(SType type, const char* name, const char* incfile);
412
+
413
+ /**
414
+ * Create a foreign variable box.
415
+ *
416
+ * @param type - the foreign variable type of SType
417
+ * @param name - the foreign variable name
418
+ * @param incfile - the include file where the foreign variable is defined
419
+ *
420
+ * @return the foreign variable box.
421
+ */
422
+ LIBFAUST_API Box CboxFVar(SType type, const char* name, const char* incfile);
423
+
424
+ /**
425
+ * Generic binary mathematical functions.
426
+ *
427
+ * @param op - the operator in SOperator set
428
+ *
429
+ * @return the result box of op(x,y).
430
+ */
431
+ LIBFAUST_API Box CboxBinOp(SOperator op);
432
+
433
+ LIBFAUST_API Box CboxBinOpAux(SOperator op, Box b1, Box b2);
434
+
435
+ /**
436
+ * Specific binary mathematical functions.
437
+ *
438
+ * @return the result box.
439
+ */
440
+ LIBFAUST_API Box CboxAdd();
441
+ LIBFAUST_API Box CboxAddAux(Box b1, Box b2);
442
+ LIBFAUST_API Box CboxSub();
443
+ LIBFAUST_API Box CboxSubAux(Box b1, Box b2);
444
+ LIBFAUST_API Box CboxMul();
445
+ LIBFAUST_API Box CboxMulAux(Box b1, Box b2);
446
+ LIBFAUST_API Box CboxDiv();
447
+ LIBFAUST_API Box CboxDivAux(Box b1, Box b2);
448
+ LIBFAUST_API Box CboxRem();
449
+ LIBFAUST_API Box CboxRemAux(Box b1, Box b2);
450
+
451
+ LIBFAUST_API Box CboxLeftShift();
452
+ LIBFAUST_API Box CboxLeftShiftAux(Box b1, Box b2);
453
+ LIBFAUST_API Box CboxLRightShift();
454
+ LIBFAUST_API Box CboxLRightShiftAux(Box b1, Box b2);
455
+ LIBFAUST_API Box CboxARightShift();
456
+ LIBFAUST_API Box CboxARightShiftAux(Box b1, Box b2);
457
+
458
+ LIBFAUST_API Box CboxGT();
459
+ LIBFAUST_API Box CboxGTAux(Box b1, Box b2);
460
+ LIBFAUST_API Box CboxLT();
461
+ LIBFAUST_API Box CboxLTAux(Box b1, Box b2);
462
+ LIBFAUST_API Box CboxGE();
463
+ LIBFAUST_API Box CboxGEAux(Box b1, Box b2);
464
+ LIBFAUST_API Box CboxLE();
465
+ LIBFAUST_API Box CboxLEAux(Box b1, Box b2);
466
+ LIBFAUST_API Box CboxEQ();
467
+ LIBFAUST_API Box CboxEQAux(Box b1, Box b2);
468
+ LIBFAUST_API Box CboxNE();
469
+ LIBFAUST_API Box CboxNEAux(Box b1, Box b2);
470
+
471
+ LIBFAUST_API Box CboxAND();
472
+ LIBFAUST_API Box CboxANDAux(Box b1, Box b2);
473
+ LIBFAUST_API Box CboxOR();
474
+ LIBFAUST_API Box CboxORAux(Box b1, Box b2);
475
+ LIBFAUST_API Box CboxXOR();
476
+ LIBFAUST_API Box CboxXORAux(Box b1, Box b2);
477
+
478
+ /**
479
+ * Extended unary mathematical functions.
480
+ */
481
+ LIBFAUST_API Box CboxAbs();
482
+ LIBFAUST_API Box CboxAbsAux(Box x);
483
+ LIBFAUST_API Box CboxAcos();
484
+ LIBFAUST_API Box CboxAcosAux(Box x);
485
+ LIBFAUST_API Box CboxTan();
486
+ LIBFAUST_API Box CboxTanAux(Box x);
487
+ LIBFAUST_API Box CboxSqrt();
488
+ LIBFAUST_API Box CboxSqrtAux(Box x);
489
+ LIBFAUST_API Box CboxSin();
490
+ LIBFAUST_API Box CboxSinAux(Box x);
491
+ LIBFAUST_API Box CboxRint();
492
+ LIBFAUST_API Box CboxRintAux(Box x);
493
+ LIBFAUST_API Box CboxRound();
494
+ LIBFAUST_API Box CboxRoundAux(Box x);
495
+ LIBFAUST_API Box CboxLog();
496
+ LIBFAUST_API Box CboxLogAux(Box x);
497
+ LIBFAUST_API Box CboxLog10();
498
+ LIBFAUST_API Box CboxLog10Aux(Box x);
499
+ LIBFAUST_API Box CboxFloor();
500
+ LIBFAUST_API Box CboxFloorAux(Box x);
501
+ LIBFAUST_API Box CboxExp();
502
+ LIBFAUST_API Box CboxExpAux(Box x);
503
+ LIBFAUST_API Box CboxExp10();
504
+ LIBFAUST_API Box CboxExp10Aux(Box x);
505
+ LIBFAUST_API Box CboxCos();
506
+ LIBFAUST_API Box CboxCosAux(Box x);
507
+ LIBFAUST_API Box CboxCeil();
508
+ LIBFAUST_API Box CboxCeilAux(Box x);
509
+ LIBFAUST_API Box CboxAtan();
510
+ LIBFAUST_API Box CboxAtanAux(Box x);
511
+ LIBFAUST_API Box CboxAsin();
512
+ LIBFAUST_API Box CboxAsinAux(Box x);
513
+
514
+ /**
515
+ * Extended binary mathematical functions.
516
+ */
517
+ LIBFAUST_API Box CboxRemainder();
518
+ LIBFAUST_API Box CboxRemainderAux(Box b1, Box b2);
519
+ LIBFAUST_API Box CboxPow();
520
+ LIBFAUST_API Box CboxPowAux(Box b1, Box b2);
521
+ LIBFAUST_API Box CboxMin();
522
+ LIBFAUST_API Box CboxMinAux(Box b1, Box b2);
523
+ LIBFAUST_API Box CboxMax();
524
+ LIBFAUST_API Box CboxMaxAux(Box b1, Box b2);
525
+ LIBFAUST_API Box CboxFmod();
526
+ LIBFAUST_API Box CboxFmodAux(Box b1, Box b2);
527
+ LIBFAUST_API Box CboxAtan2();
528
+ LIBFAUST_API Box CboxAtan2Aux(Box b1, Box b2);
529
+
530
+ /**
531
+ * Create a button box.
532
+ *
533
+ * @param label - the label definition (see [2])
534
+ *
535
+ * @return the button box.
536
+ */
537
+ LIBFAUST_API Box CboxButton(const char* label);
538
+
539
+ /**
540
+ * Create a checkbox box.
541
+ *
542
+ * @param label - the label definition (see [2])
543
+ *
544
+ * @return the checkbox box.
545
+ */
546
+ LIBFAUST_API Box CboxCheckbox(const char* label);
547
+
548
+ /**
549
+ * Create a vertical slider box.
550
+ *
551
+ * @param label - the label definition (see [2])
552
+ * @param init - the init box, a constant numerical expression (see [1])
553
+ * @param min - the min box, a constant numerical expression (see [1])
554
+ * @param max - the max box, a constant numerical expression (see [1])
555
+ * @param step - the step box, a constant numerical expression (see [1])
556
+ *
557
+ * @return the vertical slider box.
558
+ */
559
+ LIBFAUST_API Box CboxVSlider(const char* label, Box init, Box min, Box max, Box step);
560
+
561
+ /**
562
+ * Create an horizontal slider box.
563
+ *
564
+ * @param label - the label definition (see [2])
565
+ * @param init - the init box, a constant numerical expression (see [1])
566
+ * @param min - the min box, a constant numerical expression (see [1])
567
+ * @param max - the max box, a constant numerical expression (see [1])
568
+ * @param step - the step box, a constant numerical expression (see [1])
569
+ *
570
+ * @return the horizontal slider box.
571
+ */
572
+ LIBFAUST_API Box CboxHSlider(const char* label, Box init, Box min, Box max, Box step);
573
+
574
+ /**
575
+ * Create a num entry box.
576
+ *
577
+ * @param label - the label definition (see [2])
578
+ * @param init - the init box, a constant numerical expression (see [1])
579
+ * @param min - the min box, a constant numerical expression (see [1])
580
+ * @param max - the max box, a constant numerical expression (see [1])
581
+ * @param step - the step box, a constant numerical expression (see [1])
582
+ *
583
+ * @return the num entry box.
584
+ */
585
+ LIBFAUST_API Box CboxNumEntry(const char* label, Box init, Box min, Box max, Box step);
586
+
587
+ /**
588
+ * Create a vertical bargraph box.
589
+ *
590
+ * @param label - the label definition (see [2])
591
+ * @param min - the min box, a constant numerical expression (see [1])
592
+ * @param max - the max box, a constant numerical expression (see [1])
593
+ *
594
+ * @return the vertical bargraph box.
595
+ */
596
+ LIBFAUST_API Box CboxVBargraph(const char* label, Box min, Box max);
597
+
598
+ /**
599
+ * Create a vertical bargraph box.
600
+ *
601
+ * @param label - the label definition (see [2])
602
+ * @param min - the min box, a constant numerical expression (see [1])
603
+ * @param max - the max box, a constant numerical expression (see [1])
604
+ * @param x - the input box
605
+ *
606
+ * @return the vertical bargraph box.
607
+ */
608
+ LIBFAUST_API Box CboxVBargraphAux(const char* label, Box min, Box max, Box x);
609
+
610
+ /**
611
+ * Create an horizontal bargraph box.
612
+ *
613
+ * @param label - the label definition (see [2])
614
+ * @param min - the min box, a constant numerical expression (see [1])
615
+ * @param max - the max box, a constant numerical expression (see [1])
616
+ *
617
+ * @return the horizontal bargraph box.
618
+ */
619
+ LIBFAUST_API Box CboxHBargraph(const char* label, Box min, Box max);
620
+
621
+ /**
622
+ * Create a horizontal bargraph box.
623
+ *
624
+ * @param label - the label definition (see [2])
625
+ * @param min - the min box, a constant numerical expression (see [1])
626
+ * @param max - the max box, a constant numerical expression (see [1])
627
+ * @param x - the input box
628
+ *
629
+ * @return the horizontal bargraph box.
630
+ */
631
+ LIBFAUST_API Box CboxHBargraphAux(const char* label, Box min, Box max, Box x);
632
+
633
+ /**
634
+ * Create a vertical group box.
635
+ * @param label - the label definition (see [2])
636
+ * @param group - the group to be added
637
+ *
638
+ * @return the vertical group box.
639
+ */
640
+ LIBFAUST_API Box CboxVGroup(const char* label, Box group);
641
+
642
+ /**
643
+ * Create a horizontal group box.
644
+ * @param label - the label definition (see [2])
645
+ * @param group - the group to be added
646
+ *
647
+ * @return the horizontal group box.
648
+ */
649
+ LIBFAUST_API Box CboxHGroup(const char* label, Box group);
650
+
651
+ /**
652
+ * Create a tab group box.
653
+ * @param label - the label definition (see [2])
654
+ * @param group - the group to be added
655
+ *
656
+ * @return the tab group box.
657
+ */
658
+ LIBFAUST_API Box CboxTGroup(const char* label, Box group);
659
+
660
+ /**
661
+ * Create an attach box.
662
+ *
663
+ * The attach primitive takes two input boxes and produces one output box
664
+ * which is a copy of the first input. The role of attach is to force
665
+ * its second input boxes to be compiled with the first one.
666
+ *
667
+ * @return the attach box.
668
+ */
669
+ LIBFAUST_API Box CboxAttach();
670
+
671
+ /**
672
+ * Create an attach box.
673
+ *
674
+ * The attach primitive takes two input box and produces one output box
675
+ * which is a copy of the first input. The role of attach is to force
676
+ * its second input box to be compiled with the first one.
677
+ *
678
+ * @param s1 - the first box
679
+ * @param s2 - the second box
680
+ *
681
+ * @return the attach box.
682
+ */
683
+ LIBFAUST_API Box CboxAttachAux(Box b1, Box b2);
684
+
685
+ LIBFAUST_API bool CisBoxAbstr(Box t, Box* x, Box* y);
686
+ LIBFAUST_API bool CisBoxAccess(Box t, Box* exp, Box* id);
687
+ LIBFAUST_API bool CisBoxAppl(Box t, Box* x, Box* y);
688
+ LIBFAUST_API bool CisBoxButton(Box b, Box* lbl);
689
+ LIBFAUST_API bool CisBoxCase(Box b, Box* rules);
690
+ LIBFAUST_API bool CisBoxCheckbox(Box b, Box* lbl);
691
+ LIBFAUST_API bool CisBoxComponent(Box b, Box* filename);
692
+ LIBFAUST_API bool CisBoxCut(Box t);
693
+ LIBFAUST_API bool CisBoxEnvironment(Box b);
694
+ LIBFAUST_API bool CisBoxError(Box t);
695
+ LIBFAUST_API bool CisBoxFConst(Box b, Box* type, Box* name, Box* file);
696
+ LIBFAUST_API bool CisBoxFFun(Box b, Box* ff);
697
+ LIBFAUST_API bool CisBoxFVar(Box b, Box* type, Box* name, Box* file);
698
+ LIBFAUST_API bool CisBoxHBargraph(Box b, Box* lbl, Box* min, Box* max);
699
+ LIBFAUST_API bool CisBoxHGroup(Box b, Box* lbl, Box* x);
700
+ LIBFAUST_API bool CisBoxHSlider(Box b, Box* lbl, Box* cur, Box* min, Box* max, Box* step);
701
+ LIBFAUST_API bool CisBoxIdent(Box t, const char** str);
702
+ LIBFAUST_API bool CisBoxInputs(Box t, Box* x);
703
+ LIBFAUST_API bool CisBoxInt(Box t, int* i);
704
+ LIBFAUST_API bool CisBoxIPar(Box t, Box* x, Box* y, Box* z);
705
+ LIBFAUST_API bool CisBoxIProd(Box t, Box* x, Box* y, Box* z);
706
+ LIBFAUST_API bool CisBoxISeq(Box t, Box* x, Box* y, Box* z);
707
+ LIBFAUST_API bool CisBoxISum(Box t, Box* x, Box* y, Box* z);
708
+ LIBFAUST_API bool CisBoxLibrary(Box b, Box* filename);
709
+ LIBFAUST_API bool CisBoxMerge(Box t, Box* x, Box* y);
710
+ LIBFAUST_API bool CisBoxMetadata(Box b, Box* exp, Box* mdlist);
711
+ LIBFAUST_API bool CisBoxNumEntry(Box b, Box* lbl, Box* cur, Box* min, Box* max, Box* step);
712
+ LIBFAUST_API bool CisBoxOutputs(Box t, Box* x);
713
+ LIBFAUST_API bool CisBoxPar(Box t, Box* x, Box* y);
714
+ LIBFAUST_API bool CisBoxPatternMatcher(Box b);
715
+ LIBFAUST_API bool CisBoxPatternVar(Box b, Box* id);
716
+ LIBFAUST_API bool CisBoxPrim0(Box b);
717
+ LIBFAUST_API bool CisBoxPrim1(Box b);
718
+ LIBFAUST_API bool CisBoxPrim2(Box b);
719
+ LIBFAUST_API bool CisBoxPrim3(Box b);
720
+ LIBFAUST_API bool CisBoxPrim4(Box b);
721
+ LIBFAUST_API bool CisBoxPrim5(Box b);
722
+ LIBFAUST_API bool CisBoxReal(Box t, double* r);
723
+ LIBFAUST_API bool CisBoxRec(Box t, Box* x, Box* y);
724
+ LIBFAUST_API bool CisBoxRoute(Box b, Box* n, Box* m, Box* r);
725
+ LIBFAUST_API bool CisBoxSeq(Box t, Box* x, Box* y);
726
+ LIBFAUST_API bool CisBoxSlot(Box t, int* id);
727
+ LIBFAUST_API bool CisBoxSoundfile(Box b, Box* label, Box* chan);
728
+ LIBFAUST_API bool CisBoxSplit(Box t, Box* x, Box* y);
729
+ LIBFAUST_API bool CisBoxSymbolic(Box t, Box* slot, Box* body);
730
+ LIBFAUST_API bool CisBoxTGroup(Box b, Box* lbl, Box* x);
731
+ LIBFAUST_API bool CisBoxVBargraph(Box b, Box* lbl, Box* min, Box* max);
732
+ LIBFAUST_API bool CisBoxVGroup(Box b, Box* lbl, Box* x);
733
+ LIBFAUST_API bool CisBoxVSlider(Box b, Box* lbl, Box* cur, Box* min, Box* max, Box* step);
734
+ LIBFAUST_API bool CisBoxWaveform(Box b);
735
+ LIBFAUST_API bool CisBoxWire(Box t);
736
+ LIBFAUST_API bool CisBoxWithLocalDef(Box t, Box* body, Box* ldef);
737
+
738
+ /**
739
+ * Compile a DSP source code as a string in a flattened box
740
+ *
741
+ * @param name_app - the name of the Faust program
742
+ * @param dsp_content - the Faust program as a string
743
+ * @param argc - the number of parameters in argv array
744
+ * @param argv - the array of parameters
745
+ * @param inputs - the place to return the number of inputs of the resulting box
746
+ * @param outputs - the place to return the number of outputs of the resulting box
747
+ * @param error_msg - the error string to be filled
748
+ *
749
+ * @return a flattened box on success, otherwise a null pointer.
750
+ */
751
+ LIBFAUST_API Box CDSPToBoxes(const char* name_app, const char* dsp_content, int argc, const char* argv[], int* inputs, int* outputs, char* error_msg);
752
+
753
+ /**
754
+ * Return the number of inputs and outputs of a box
755
+ *
756
+ * @param box - the box we want to know the number of inputs and outputs
757
+ * @param inputs - the place to return the number of inputs
758
+ * @param outputs - the place to return the number of outputs
759
+ *
760
+ * @return true if type is defined, false if undefined.
761
+ */
762
+ LIBFAUST_API bool CgetBoxType(Box box, int* inputs, int* outputs);
763
+
764
+ /**
765
+ * Compile a box expression in a null terminated array of signals in normal form
766
+ * (see CsimplifyToNormalForm in libfaust-signal-c.h)
767
+ *
768
+ * @param box - the box expression
769
+ * @param error_msg - the error string to be filled, has to be 4096 characters long
770
+ *
771
+ * @return a null terminated array of signals on success (to be deleted by the caller using freeCMemory), otherwise a nullptr.
772
+ */
773
+ LIBFAUST_API Signal* CboxesToSignals(Box box, char* error_msg);
774
+
775
+ /**
776
+ * Create source code in a target language from a box expression.
777
+ *
778
+ * @param name_app - the name of the Faust program
779
+ * @param box - the box expression
780
+ * @param lang - the target source code's language which can be one of "c",
781
+ * "cpp", "cmajor", "codebox", "csharp", "dlang", "fir", "interp", "java", "jax",
782
+ * "jsfx", "julia", "ocpp", "rust" or "wast"
783
+ * (depending of which of the corresponding backends are compiled in libfaust)
784
+ * @param argc - the number of parameters in argv array
785
+ * @param argv - the array of parameters
786
+ * @param error_msg - the error string to be filled
787
+ *
788
+ * @return a string of source code on success (to be deleted by the caller using freeCMemory) or a nullptr and setting error_msg on error.
789
+ */
790
+ LIBFAUST_API char* CcreateSourceFromBoxes(const char* name_app, Box box,
791
+ const char* lang,
792
+ int argc, const char* argv[],
793
+ char* error_msg);
794
+
795
+ /**
796
+ * The free function to be used on memory returned CcreateSourceFromBoxes.
797
+ *
798
+ * This is MANDATORY on Windows when otherwise all nasty runtime version related crashes can occur.
799
+ *
800
+ * @param ptr - the pointer to be deleted.
801
+ */
802
+ LIBFAUST_API void freeCMemory(void* ptr);
803
+
804
+ /*
805
+ [1] Constant numerical expression : see https://faustdoc.grame.fr/manual/syntax/#constant-numerical-expressions
806
+ [2] Label definition : https://faustdoc.grame.fr/manual/syntax/#variable-parts-of-a-label
807
+ */
808
+
809
+ #ifdef __cplusplus
810
+ }
811
+ #endif
812
+
813
+ /*!
814
+ @}
815
+ */
816
+
817
+ #endif