@opendaw/studio-adapters 0.0.6

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 (296) hide show
  1. package/README.md +1 -0
  2. package/dist/AudioData.d.ts +7 -0
  3. package/dist/AudioData.d.ts.map +1 -0
  4. package/dist/AudioData.js +1 -0
  5. package/dist/AudioFileBoxAdapter.d.ts +22 -0
  6. package/dist/AudioFileBoxAdapter.d.ts.map +1 -0
  7. package/dist/AudioFileBoxAdapter.js +19 -0
  8. package/dist/AudioLoader.d.ts +26 -0
  9. package/dist/AudioLoader.d.ts.map +1 -0
  10. package/dist/AudioLoader.js +1 -0
  11. package/dist/AudioMetaData.d.ts +8 -0
  12. package/dist/AudioMetaData.d.ts.map +1 -0
  13. package/dist/AudioMetaData.js +1 -0
  14. package/dist/AudioSample.d.ts +5 -0
  15. package/dist/AudioSample.d.ts.map +1 -0
  16. package/dist/AudioSample.js +1 -0
  17. package/dist/AutomatableParameterFieldAdapter.d.ts +35 -0
  18. package/dist/AutomatableParameterFieldAdapter.d.ts.map +1 -0
  19. package/dist/AutomatableParameterFieldAdapter.js +161 -0
  20. package/dist/BoxAdapter.d.ts +7 -0
  21. package/dist/BoxAdapter.d.ts.map +1 -0
  22. package/dist/BoxAdapter.js +1 -0
  23. package/dist/BoxAdapterCollection.d.ts +19 -0
  24. package/dist/BoxAdapterCollection.d.ts.map +1 -0
  25. package/dist/BoxAdapterCollection.js +35 -0
  26. package/dist/BoxAdapters.d.ts +11 -0
  27. package/dist/BoxAdapters.d.ts.map +1 -0
  28. package/dist/BoxAdapters.js +129 -0
  29. package/dist/BoxAdaptersContext.d.ts +24 -0
  30. package/dist/BoxAdaptersContext.d.ts.map +1 -0
  31. package/dist/BoxAdaptersContext.js +1 -0
  32. package/dist/ClipNotifications.d.ts +14 -0
  33. package/dist/ClipNotifications.d.ts.map +1 -0
  34. package/dist/ClipNotifications.js +1 -0
  35. package/dist/ClipSequencing.d.ts +12 -0
  36. package/dist/ClipSequencing.d.ts.map +1 -0
  37. package/dist/ClipSequencing.js +1 -0
  38. package/dist/EngineProcessorOptions.d.ts +18 -0
  39. package/dist/EngineProcessorOptions.d.ts.map +1 -0
  40. package/dist/EngineProcessorOptions.js +26 -0
  41. package/dist/EngineStateSchema.d.ts +7 -0
  42. package/dist/EngineStateSchema.d.ts.map +1 -0
  43. package/dist/EngineStateSchema.js +5 -0
  44. package/dist/FieldAdapter.d.ts +26 -0
  45. package/dist/FieldAdapter.d.ts.map +1 -0
  46. package/dist/FieldAdapter.js +59 -0
  47. package/dist/IconSymbol.d.ts +119 -0
  48. package/dist/IconSymbol.d.ts.map +1 -0
  49. package/dist/IconSymbol.js +119 -0
  50. package/dist/IndexComparator.d.ts +3 -0
  51. package/dist/IndexComparator.d.ts.map +1 -0
  52. package/dist/IndexComparator.js +11 -0
  53. package/dist/ManadatoryBoxes.d.ts +9 -0
  54. package/dist/ManadatoryBoxes.d.ts.map +1 -0
  55. package/dist/ManadatoryBoxes.js +1 -0
  56. package/dist/NoteBroadcaster.d.ts +14 -0
  57. package/dist/NoteBroadcaster.d.ts.map +1 -0
  58. package/dist/NoteBroadcaster.js +23 -0
  59. package/dist/NoteSender.d.ts +9 -0
  60. package/dist/NoteSender.d.ts.map +1 -0
  61. package/dist/NoteSender.js +15 -0
  62. package/dist/NoteStreamReceiver.d.ts +12 -0
  63. package/dist/NoteStreamReceiver.d.ts.map +1 -0
  64. package/dist/NoteStreamReceiver.js +23 -0
  65. package/dist/ParameterAdapterSet.d.ts +14 -0
  66. package/dist/ParameterAdapterSet.d.ts.map +1 -0
  67. package/dist/ParameterAdapterSet.js +27 -0
  68. package/dist/ParameterFieldAdapters.d.ts +11 -0
  69. package/dist/ParameterFieldAdapters.d.ts.map +1 -0
  70. package/dist/ParameterFieldAdapters.js +13 -0
  71. package/dist/PeakMeterProcessorOptions.d.ts +8 -0
  72. package/dist/PeakMeterProcessorOptions.d.ts.map +1 -0
  73. package/dist/PeakMeterProcessorOptions.js +1 -0
  74. package/dist/PianoModeAdapter.d.ts +15 -0
  75. package/dist/PianoModeAdapter.d.ts.map +1 -0
  76. package/dist/PianoModeAdapter.js +28 -0
  77. package/dist/ProjectDecoder.d.ts +13 -0
  78. package/dist/ProjectDecoder.d.ts.map +1 -0
  79. package/dist/ProjectDecoder.js +27 -0
  80. package/dist/RecordingProcessorOptions.d.ts +4 -0
  81. package/dist/RecordingProcessorOptions.d.ts.map +1 -0
  82. package/dist/RecordingProcessorOptions.js +1 -0
  83. package/dist/RingBuffer.d.ts +19 -0
  84. package/dist/RingBuffer.d.ts.map +1 -0
  85. package/dist/RingBuffer.js +92 -0
  86. package/dist/RootBoxAdapter.d.ts +30 -0
  87. package/dist/RootBoxAdapter.d.ts.map +1 -0
  88. package/dist/RootBoxAdapter.js +43 -0
  89. package/dist/SortedBoxAdapterCollection.d.ts +29 -0
  90. package/dist/SortedBoxAdapterCollection.d.ts.map +1 -0
  91. package/dist/SortedBoxAdapterCollection.js +100 -0
  92. package/dist/UnionAdapterTypes.d.ts +15 -0
  93. package/dist/UnionAdapterTypes.d.ts.map +1 -0
  94. package/dist/UnionAdapterTypes.js +5 -0
  95. package/dist/UpdateClockRate.d.ts +2 -0
  96. package/dist/UpdateClockRate.d.ts.map +1 -0
  97. package/dist/UpdateClockRate.js +2 -0
  98. package/dist/audio-unit/AudioBusBoxAdapter.d.ts +28 -0
  99. package/dist/audio-unit/AudioBusBoxAdapter.d.ts.map +1 -0
  100. package/dist/audio-unit/AudioBusBoxAdapter.js +33 -0
  101. package/dist/audio-unit/AudioUnitBoxAdapter.d.ts +55 -0
  102. package/dist/audio-unit/AudioUnitBoxAdapter.d.ts.map +1 -0
  103. package/dist/audio-unit/AudioUnitBoxAdapter.js +97 -0
  104. package/dist/audio-unit/AudioUnitInput.d.ts +21 -0
  105. package/dist/audio-unit/AudioUnitInput.d.ts.map +1 -0
  106. package/dist/audio-unit/AudioUnitInput.js +74 -0
  107. package/dist/audio-unit/AudioUnitInputAdapter.d.ts +4 -0
  108. package/dist/audio-unit/AudioUnitInputAdapter.d.ts.map +1 -0
  109. package/dist/audio-unit/AudioUnitInputAdapter.js +1 -0
  110. package/dist/audio-unit/AudioUnitOutput.d.ts +14 -0
  111. package/dist/audio-unit/AudioUnitOutput.d.ts.map +1 -0
  112. package/dist/audio-unit/AudioUnitOutput.js +42 -0
  113. package/dist/audio-unit/AudioUnitTracks.d.ts +21 -0
  114. package/dist/audio-unit/AudioUnitTracks.d.ts.map +1 -0
  115. package/dist/audio-unit/AudioUnitTracks.js +62 -0
  116. package/dist/audio-unit/AuxSendBoxAdapter.d.ts +23 -0
  117. package/dist/audio-unit/AuxSendBoxAdapter.d.ts.map +1 -0
  118. package/dist/audio-unit/AuxSendBoxAdapter.js +58 -0
  119. package/dist/devices/audio-effects/DelayDeviceBoxAdapter.d.ts +35 -0
  120. package/dist/devices/audio-effects/DelayDeviceBoxAdapter.d.ts.map +1 -0
  121. package/dist/devices/audio-effects/DelayDeviceBoxAdapter.js +50 -0
  122. package/dist/devices/audio-effects/ModularDeviceBoxAdapter.d.ts +31 -0
  123. package/dist/devices/audio-effects/ModularDeviceBoxAdapter.d.ts.map +1 -0
  124. package/dist/devices/audio-effects/ModularDeviceBoxAdapter.js +38 -0
  125. package/dist/devices/audio-effects/RevampDeviceBoxAdapter.d.ts +52 -0
  126. package/dist/devices/audio-effects/RevampDeviceBoxAdapter.d.ts.map +1 -0
  127. package/dist/devices/audio-effects/RevampDeviceBoxAdapter.js +66 -0
  128. package/dist/devices/audio-effects/ReverbDeviceBoxAdapter.d.ts +35 -0
  129. package/dist/devices/audio-effects/ReverbDeviceBoxAdapter.d.ts.map +1 -0
  130. package/dist/devices/audio-effects/ReverbDeviceBoxAdapter.js +44 -0
  131. package/dist/devices/audio-effects/StereoToolDeviceBoxAdapter.d.ts +33 -0
  132. package/dist/devices/audio-effects/StereoToolDeviceBoxAdapter.d.ts.map +1 -0
  133. package/dist/devices/audio-effects/StereoToolDeviceBoxAdapter.js +41 -0
  134. package/dist/devices/instruments/NanoDeviceBoxAdapter.d.ts +32 -0
  135. package/dist/devices/instruments/NanoDeviceBoxAdapter.d.ts.map +1 -0
  136. package/dist/devices/instruments/NanoDeviceBoxAdapter.js +40 -0
  137. package/dist/devices/instruments/Playfield/Gate.d.ts +6 -0
  138. package/dist/devices/instruments/Playfield/Gate.d.ts.map +1 -0
  139. package/dist/devices/instruments/Playfield/Gate.js +6 -0
  140. package/dist/devices/instruments/Playfield/PlayfieldSampleBoxAdapter.d.ts +63 -0
  141. package/dist/devices/instruments/Playfield/PlayfieldSampleBoxAdapter.d.ts.map +1 -0
  142. package/dist/devices/instruments/Playfield/PlayfieldSampleBoxAdapter.js +128 -0
  143. package/dist/devices/instruments/PlayfieldDeviceBoxAdapter.d.ts +35 -0
  144. package/dist/devices/instruments/PlayfieldDeviceBoxAdapter.d.ts.map +1 -0
  145. package/dist/devices/instruments/PlayfieldDeviceBoxAdapter.js +40 -0
  146. package/dist/devices/instruments/TapeDeviceBoxAdapter.d.ts +34 -0
  147. package/dist/devices/instruments/TapeDeviceBoxAdapter.d.ts.map +1 -0
  148. package/dist/devices/instruments/TapeDeviceBoxAdapter.js +42 -0
  149. package/dist/devices/instruments/VaporisateurDeviceBoxAdapter.d.ts +39 -0
  150. package/dist/devices/instruments/VaporisateurDeviceBoxAdapter.d.ts.map +1 -0
  151. package/dist/devices/instruments/VaporisateurDeviceBoxAdapter.js +47 -0
  152. package/dist/devices/midi-effects/ArpeggioDeviceBoxAdapter.d.ts +37 -0
  153. package/dist/devices/midi-effects/ArpeggioDeviceBoxAdapter.d.ts.map +1 -0
  154. package/dist/devices/midi-effects/ArpeggioDeviceBoxAdapter.js +51 -0
  155. package/dist/devices/midi-effects/PitchDeviceBoxAdapter.d.ts +32 -0
  156. package/dist/devices/midi-effects/PitchDeviceBoxAdapter.d.ts.map +1 -0
  157. package/dist/devices/midi-effects/PitchDeviceBoxAdapter.js +39 -0
  158. package/dist/devices/midi-effects/ZeitgeistDeviceBoxAdapter.d.ts +28 -0
  159. package/dist/devices/midi-effects/ZeitgeistDeviceBoxAdapter.d.ts.map +1 -0
  160. package/dist/devices/midi-effects/ZeitgeistDeviceBoxAdapter.js +35 -0
  161. package/dist/devices.d.ts +68 -0
  162. package/dist/devices.d.ts.map +1 -0
  163. package/dist/devices.js +55 -0
  164. package/dist/editing/UserEditing.d.ts +15 -0
  165. package/dist/editing/UserEditing.d.ts.map +1 -0
  166. package/dist/editing/UserEditing.js +39 -0
  167. package/dist/editing/UserEditingManager.d.ts +14 -0
  168. package/dist/editing/UserEditingManager.d.ts.map +1 -0
  169. package/dist/editing/UserEditingManager.js +23 -0
  170. package/dist/grooves/GrooveBoxAdapter.d.ts +10 -0
  171. package/dist/grooves/GrooveBoxAdapter.d.ts.map +1 -0
  172. package/dist/grooves/GrooveBoxAdapter.js +4 -0
  173. package/dist/grooves/GrooveShuffleBoxAdapter.d.ts +27 -0
  174. package/dist/grooves/GrooveShuffleBoxAdapter.d.ts.map +1 -0
  175. package/dist/grooves/GrooveShuffleBoxAdapter.js +43 -0
  176. package/dist/index.d.ts +98 -0
  177. package/dist/index.d.ts.map +1 -0
  178. package/dist/index.js +99 -0
  179. package/dist/modular/abstract.d.ts +30 -0
  180. package/dist/modular/abstract.d.ts.map +1 -0
  181. package/dist/modular/abstract.js +39 -0
  182. package/dist/modular/connection.d.ts +15 -0
  183. package/dist/modular/connection.d.ts.map +1 -0
  184. package/dist/modular/connection.js +12 -0
  185. package/dist/modular/connector.d.ts +21 -0
  186. package/dist/modular/connector.d.ts.map +1 -0
  187. package/dist/modular/connector.js +42 -0
  188. package/dist/modular/modular.d.ts +30 -0
  189. package/dist/modular/modular.d.ts.map +1 -0
  190. package/dist/modular/modular.js +68 -0
  191. package/dist/modular/module.d.ts +21 -0
  192. package/dist/modular/module.d.ts.map +1 -0
  193. package/dist/modular/module.js +23 -0
  194. package/dist/modular/modules/audio-input.d.ts +14 -0
  195. package/dist/modular/modules/audio-input.d.ts.map +1 -0
  196. package/dist/modular/modules/audio-input.js +17 -0
  197. package/dist/modular/modules/audio-output.d.ts +14 -0
  198. package/dist/modular/modules/audio-output.d.ts.map +1 -0
  199. package/dist/modular/modules/audio-output.js +17 -0
  200. package/dist/modular/modules/delay.d.ts +17 -0
  201. package/dist/modular/modules/delay.d.ts.map +1 -0
  202. package/dist/modular/modules/delay.js +23 -0
  203. package/dist/modular/modules/gain.d.ts +17 -0
  204. package/dist/modular/modules/gain.d.ts.map +1 -0
  205. package/dist/modular/modules/gain.js +23 -0
  206. package/dist/modular/modules/multiplier.d.ts +13 -0
  207. package/dist/modular/modules/multiplier.d.ts.map +1 -0
  208. package/dist/modular/modules/multiplier.js +19 -0
  209. package/dist/modular/user-interface.d.ts +21 -0
  210. package/dist/modular/user-interface.d.ts.map +1 -0
  211. package/dist/modular/user-interface.js +23 -0
  212. package/dist/protocols.d.ts +25 -0
  213. package/dist/protocols.d.ts.map +1 -0
  214. package/dist/protocols.js +1 -0
  215. package/dist/selection/FilteredSelection.d.ts +20 -0
  216. package/dist/selection/FilteredSelection.d.ts.map +1 -0
  217. package/dist/selection/FilteredSelection.js +58 -0
  218. package/dist/selection/SelectableVertex.d.ts +4 -0
  219. package/dist/selection/SelectableVertex.d.ts.map +1 -0
  220. package/dist/selection/SelectableVertex.js +1 -0
  221. package/dist/selection/SelectionEntry.d.ts +7 -0
  222. package/dist/selection/SelectionEntry.d.ts.map +1 -0
  223. package/dist/selection/SelectionEntry.js +1 -0
  224. package/dist/selection/VertexSelection.d.ts +29 -0
  225. package/dist/selection/VertexSelection.d.ts.map +1 -0
  226. package/dist/selection/VertexSelection.js +120 -0
  227. package/dist/selection/isVertexOfBox.d.ts +5 -0
  228. package/dist/selection/isVertexOfBox.d.ts.map +1 -0
  229. package/dist/selection/isVertexOfBox.js +1 -0
  230. package/dist/timeline/ClipBoxAdapter.d.ts +38 -0
  231. package/dist/timeline/ClipBoxAdapter.d.ts.map +1 -0
  232. package/dist/timeline/ClipBoxAdapter.js +11 -0
  233. package/dist/timeline/MarkerBoxAdapter.d.ts +24 -0
  234. package/dist/timeline/MarkerBoxAdapter.d.ts.map +1 -0
  235. package/dist/timeline/MarkerBoxAdapter.js +41 -0
  236. package/dist/timeline/MarkerTrackAdapter.d.ts +19 -0
  237. package/dist/timeline/MarkerTrackAdapter.d.ts.map +1 -0
  238. package/dist/timeline/MarkerTrackAdapter.js +45 -0
  239. package/dist/timeline/RegionBoxAdapter.d.ts +48 -0
  240. package/dist/timeline/RegionBoxAdapter.d.ts.map +1 -0
  241. package/dist/timeline/RegionBoxAdapter.js +12 -0
  242. package/dist/timeline/RegionEditing.d.ts +7 -0
  243. package/dist/timeline/RegionEditing.d.ts.map +1 -0
  244. package/dist/timeline/RegionEditing.js +40 -0
  245. package/dist/timeline/TimelineBoxAdapter.d.ts +16 -0
  246. package/dist/timeline/TimelineBoxAdapter.d.ts.map +1 -0
  247. package/dist/timeline/TimelineBoxAdapter.js +14 -0
  248. package/dist/timeline/TrackBoxAdapter.d.ts +32 -0
  249. package/dist/timeline/TrackBoxAdapter.d.ts.map +1 -0
  250. package/dist/timeline/TrackBoxAdapter.js +167 -0
  251. package/dist/timeline/TrackClips.d.ts +16 -0
  252. package/dist/timeline/TrackClips.d.ts.map +1 -0
  253. package/dist/timeline/TrackClips.js +26 -0
  254. package/dist/timeline/TrackRegions.d.ts +17 -0
  255. package/dist/timeline/TrackRegions.d.ts.map +1 -0
  256. package/dist/timeline/TrackRegions.js +41 -0
  257. package/dist/timeline/TrackType.d.ts +12 -0
  258. package/dist/timeline/TrackType.d.ts.map +1 -0
  259. package/dist/timeline/TrackType.js +37 -0
  260. package/dist/timeline/clip/AudioClipBoxAdapter.d.ts +39 -0
  261. package/dist/timeline/clip/AudioClipBoxAdapter.d.ts.map +1 -0
  262. package/dist/timeline/clip/AudioClipBoxAdapter.js +87 -0
  263. package/dist/timeline/clip/NoteClipBoxAdapter.d.ts +39 -0
  264. package/dist/timeline/clip/NoteClipBoxAdapter.d.ts.map +1 -0
  265. package/dist/timeline/clip/NoteClipBoxAdapter.js +92 -0
  266. package/dist/timeline/clip/ValueClipBoxAdapter.d.ts +40 -0
  267. package/dist/timeline/clip/ValueClipBoxAdapter.d.ts.map +1 -0
  268. package/dist/timeline/clip/ValueClipBoxAdapter.js +98 -0
  269. package/dist/timeline/collection/NoteEventCollectionBoxAdapter.d.ts +40 -0
  270. package/dist/timeline/collection/NoteEventCollectionBoxAdapter.d.ts.map +1 -0
  271. package/dist/timeline/collection/NoteEventCollectionBoxAdapter.js +136 -0
  272. package/dist/timeline/collection/ValueEventCollectionBoxAdapter.d.ts +33 -0
  273. package/dist/timeline/collection/ValueEventCollectionBoxAdapter.d.ts.map +1 -0
  274. package/dist/timeline/collection/ValueEventCollectionBoxAdapter.js +139 -0
  275. package/dist/timeline/event/InterpolationFieldAdapter.d.ts +8 -0
  276. package/dist/timeline/event/InterpolationFieldAdapter.d.ts.map +1 -0
  277. package/dist/timeline/event/InterpolationFieldAdapter.js +47 -0
  278. package/dist/timeline/event/NoteEventBoxAdapter.d.ts +45 -0
  279. package/dist/timeline/event/NoteEventBoxAdapter.d.ts.map +1 -0
  280. package/dist/timeline/event/NoteEventBoxAdapter.js +106 -0
  281. package/dist/timeline/event/ValueEventBoxAdapter.d.ts +39 -0
  282. package/dist/timeline/event/ValueEventBoxAdapter.d.ts.map +1 -0
  283. package/dist/timeline/event/ValueEventBoxAdapter.js +113 -0
  284. package/dist/timeline/region/AudioRegionBoxAdapter.d.ts +53 -0
  285. package/dist/timeline/region/AudioRegionBoxAdapter.d.ts.map +1 -0
  286. package/dist/timeline/region/AudioRegionBoxAdapter.js +143 -0
  287. package/dist/timeline/region/NoteRegionBoxAdapter.d.ts +53 -0
  288. package/dist/timeline/region/NoteRegionBoxAdapter.d.ts.map +1 -0
  289. package/dist/timeline/region/NoteRegionBoxAdapter.js +186 -0
  290. package/dist/timeline/region/ValueRegionBoxAdapter.d.ts +59 -0
  291. package/dist/timeline/region/ValueRegionBoxAdapter.d.ts.map +1 -0
  292. package/dist/timeline/region/ValueRegionBoxAdapter.js +193 -0
  293. package/dist/unions.d.ts +11 -0
  294. package/dist/unions.d.ts.map +1 -0
  295. package/dist/unions.js +17 -0
  296. package/package.json +38 -0
@@ -0,0 +1,52 @@
1
+ import { RevampDeviceBox } from "@opendaw/studio-boxes";
2
+ import { int, UUID } from "@opendaw/lib-std";
3
+ import { Address, BooleanField, FieldKeys, Int32Field, PointerField, StringField } from "@opendaw/lib-box";
4
+ import { Pointers } from "@opendaw/studio-enums";
5
+ import { AudioEffectDeviceBoxAdapter, DeviceHost } from "../../devices";
6
+ import { BoxAdaptersContext } from "../../BoxAdaptersContext";
7
+ import { AudioUnitBoxAdapter } from "../../audio-unit/AudioUnitBoxAdapter";
8
+ import { AutomatableParameterFieldAdapter } from "../../AutomatableParameterFieldAdapter";
9
+ export declare class RevampDeviceBoxAdapter implements AudioEffectDeviceBoxAdapter {
10
+ #private;
11
+ readonly type = "audio-effect";
12
+ readonly accepts = "audio";
13
+ readonly namedParameter: {
14
+ readonly highPass: PassParameters;
15
+ readonly lowShelf: ShelfParameters;
16
+ readonly lowBell: BellParameters;
17
+ readonly midBell: BellParameters;
18
+ readonly highBell: BellParameters;
19
+ readonly highShelf: ShelfParameters;
20
+ readonly lowPass: PassParameters;
21
+ };
22
+ constructor(context: BoxAdaptersContext, box: RevampDeviceBox);
23
+ get box(): RevampDeviceBox;
24
+ get uuid(): UUID.Format;
25
+ get address(): Address;
26
+ get indexField(): Int32Field;
27
+ get labelField(): StringField;
28
+ get enabledField(): BooleanField;
29
+ get minimizedField(): BooleanField;
30
+ get host(): PointerField<Pointers.AudioEffectHost>;
31
+ get spectrum(): Address;
32
+ deviceHost(): DeviceHost;
33
+ audioUnitBoxAdapter(): AudioUnitBoxAdapter;
34
+ parameterAt(fieldIndices: FieldKeys): AutomatableParameterFieldAdapter;
35
+ terminate(): void;
36
+ }
37
+ export type Parameters = {
38
+ enabled: AutomatableParameterFieldAdapter<boolean>;
39
+ frequency: AutomatableParameterFieldAdapter<number>;
40
+ };
41
+ export type PassParameters = Parameters & {
42
+ order: AutomatableParameterFieldAdapter<int>;
43
+ q: AutomatableParameterFieldAdapter<number>;
44
+ };
45
+ export type ShelfParameters = Parameters & {
46
+ gain: AutomatableParameterFieldAdapter<number>;
47
+ };
48
+ export type BellParameters = Parameters & {
49
+ q: AutomatableParameterFieldAdapter<number>;
50
+ gain: AutomatableParameterFieldAdapter<number>;
51
+ };
52
+ //# sourceMappingURL=RevampDeviceBoxAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RevampDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/audio-effects/RevampDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,eAAe,EAA0B,MAAM,uBAAuB,CAAA;AAC1F,OAAO,EAAC,GAAG,EAAiB,IAAI,EAAe,MAAM,kBAAkB,CAAA;AACvE,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AACxG,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,2BAA2B,EAAE,UAAU,EAAU,MAAM,eAAe,CAAA;AAC9E,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAE3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAC,gCAAgC,EAAC,MAAM,wCAAwC,CAAA;AAEvF,qBAAa,sBAAuB,YAAW,2BAA2B;;IACtE,QAAQ,CAAC,IAAI,kBAAiB;IAC9B,QAAQ,CAAC,OAAO,WAAU;IAK1B,QAAQ,CAAC,cAAc;;;;;;;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,eAAe;IAO7D,IAAI,GAAG,IAAI,eAAe,CAAmB;IAC7C,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAgC;IACvD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,UAAU,CAAyB;IACrD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAwB;IAC1E,IAAI,QAAQ,IAAI,OAAO,CAAyC;IAEhE,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAE1C,WAAW,CAAC,YAAY,EAAE,SAAS,GAAG,gCAAgC;IAEtE,SAAS,IAAI,IAAI;CAapB;AAED,MAAM,MAAM,UAAU,GAAG;IACrB,OAAO,EAAE,gCAAgC,CAAC,OAAO,CAAC,CAAA;IAClD,SAAS,EAAE,gCAAgC,CAAC,MAAM,CAAC,CAAA;CACtD,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG;IACtC,KAAK,EAAE,gCAAgC,CAAC,GAAG,CAAC,CAAA;IAC5C,CAAC,EAAE,gCAAgC,CAAC,MAAM,CAAC,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG;IACvC,IAAI,EAAE,gCAAgC,CAAC,MAAM,CAAC,CAAA;CACjD,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG;IACtC,CAAC,EAAE,gCAAgC,CAAC,MAAM,CAAC,CAAA;IAC3C,IAAI,EAAE,gCAAgC,CAAC,MAAM,CAAC,CAAA;CACjD,CAAA"}
@@ -0,0 +1,66 @@
1
+ import { StringMapping, ValueMapping } from "@opendaw/lib-std";
2
+ import { Devices } from "../../devices";
3
+ import { ParameterAdapterSet } from "../../ParameterAdapterSet";
4
+ export class RevampDeviceBoxAdapter {
5
+ type = "audio-effect";
6
+ accepts = "audio";
7
+ #context;
8
+ #box;
9
+ #parametric;
10
+ namedParameter; // let typescript infer the type
11
+ constructor(context, box) {
12
+ this.#context = context;
13
+ this.#box = box;
14
+ this.#parametric = new ParameterAdapterSet(this.#context);
15
+ this.namedParameter = this.#wrapParameters(box);
16
+ }
17
+ get box() { return this.#box; }
18
+ get uuid() { return this.#box.address.uuid; }
19
+ get address() { return this.#box.address; }
20
+ get indexField() { return this.#box.index; }
21
+ get labelField() { return this.#box.label; }
22
+ get enabledField() { return this.#box.enabled; }
23
+ get minimizedField() { return this.#box.minimized; }
24
+ get host() { return this.#box.host; }
25
+ get spectrum() { return this.#box.address.append(0xFFF); }
26
+ deviceHost() {
27
+ return this.#context.boxAdapters
28
+ .adapterFor(this.#box.host.targetVertex.unwrap("no device-host").box, Devices.isHost);
29
+ }
30
+ audioUnitBoxAdapter() { return this.deviceHost().audioUnitBoxAdapter(); }
31
+ parameterAt(fieldIndices) { return this.#parametric.parameterAt(fieldIndices); }
32
+ terminate() { this.#parametric.terminate(); }
33
+ #wrapParameters(box) {
34
+ return {
35
+ highPass: createPass(this.#parametric, box.highPass, "High-Pass"),
36
+ lowShelf: createShelf(this.#parametric, box.lowShelf, "Low-Shelf"),
37
+ lowBell: createBell(this.#parametric, box.lowBell, "Low-Bell"),
38
+ midBell: createBell(this.#parametric, box.midBell, "Mid-Bell"),
39
+ highBell: createBell(this.#parametric, box.highBell, "High-Bell"),
40
+ highShelf: createShelf(this.#parametric, box.highShelf, "High-Shelf"),
41
+ lowPass: createPass(this.#parametric, box.lowPass, "Low-Pass")
42
+ };
43
+ }
44
+ }
45
+ const FrequencyMapping = ValueMapping.exponential(20.0, 20_000.0);
46
+ const GainMapping = ValueMapping.linear(-24.0, 24.0);
47
+ const QMapping = ValueMapping.exponential(0.01, 10.0);
48
+ const createPass = (parametric, pass, name) => {
49
+ return ({
50
+ enabled: parametric.createParameter(pass.enabled, ValueMapping.bool, StringMapping.bool, "enabled"),
51
+ frequency: parametric.createParameter(pass.frequency, FrequencyMapping, StringMapping.numeric({ unit: "Hz", fractionDigits: 0 }), `${name} Freq`),
52
+ order: parametric.createParameter(pass.order, ValueMapping.linearInteger(1, 4), StringMapping.indices("db", ["12", "24", "36", "48"]), `${name} Order`),
53
+ q: parametric.createParameter(pass.q, QMapping, StringMapping.numeric({ unit: "", fractionDigits: 3 }), `${name} Q`)
54
+ });
55
+ };
56
+ const createShelf = (parametric, shelf, name) => ({
57
+ enabled: parametric.createParameter(shelf.enabled, ValueMapping.bool, StringMapping.bool, "enabled"),
58
+ frequency: parametric.createParameter(shelf.frequency, FrequencyMapping, StringMapping.numeric({ unit: "Hz", fractionDigits: 0 }), `${name} Freq`),
59
+ gain: parametric.createParameter(shelf.gain, GainMapping, StringMapping.numeric({ unit: "db", fractionDigits: 1, bipolar: true }), `${name} Gain`, 0.5)
60
+ });
61
+ const createBell = (parametric, bell, name) => ({
62
+ enabled: parametric.createParameter(bell.enabled, ValueMapping.bool, StringMapping.bool, "enabled"),
63
+ frequency: parametric.createParameter(bell.frequency, FrequencyMapping, StringMapping.numeric({ unit: "Hz", fractionDigits: 0 }), `${name} Freq`),
64
+ gain: parametric.createParameter(bell.gain, GainMapping, StringMapping.numeric({ unit: "db", fractionDigits: 1, bipolar: true }), `${name} Gain`, 0.5),
65
+ q: parametric.createParameter(bell.q, QMapping, StringMapping.numeric({ unit: "", fractionDigits: 3 }), `${name} Q`)
66
+ });
@@ -0,0 +1,35 @@
1
+ import { ReverbDeviceBox } from "@opendaw/studio-boxes";
2
+ import { UUID } from "@opendaw/lib-std";
3
+ import { Address, BooleanField, FieldKeys, Int32Field, PointerField, StringField } from "@opendaw/lib-box";
4
+ import { Pointers } from "@opendaw/studio-enums";
5
+ import { AudioEffectDeviceBoxAdapter, DeviceHost } from "../../devices";
6
+ import { BoxAdaptersContext } from "../../BoxAdaptersContext";
7
+ import { AudioUnitBoxAdapter } from "../../audio-unit/AudioUnitBoxAdapter";
8
+ import { AutomatableParameterFieldAdapter } from "../../AutomatableParameterFieldAdapter";
9
+ export declare class ReverbDeviceBoxAdapter implements AudioEffectDeviceBoxAdapter {
10
+ #private;
11
+ readonly type = "audio-effect";
12
+ readonly accepts = "audio";
13
+ readonly namedParameter: {
14
+ readonly decay: AutomatableParameterFieldAdapter<number>;
15
+ readonly preDelay: AutomatableParameterFieldAdapter<number>;
16
+ readonly damp: AutomatableParameterFieldAdapter<number>;
17
+ readonly filter: AutomatableParameterFieldAdapter<number>;
18
+ readonly dry: AutomatableParameterFieldAdapter<number>;
19
+ readonly wet: AutomatableParameterFieldAdapter<number>;
20
+ };
21
+ constructor(context: BoxAdaptersContext, box: ReverbDeviceBox);
22
+ get box(): ReverbDeviceBox;
23
+ get uuid(): UUID.Format;
24
+ get address(): Address;
25
+ get indexField(): Int32Field;
26
+ get labelField(): StringField;
27
+ get enabledField(): BooleanField;
28
+ get minimizedField(): BooleanField;
29
+ get host(): PointerField<Pointers.AudioEffectHost>;
30
+ deviceHost(): DeviceHost;
31
+ audioUnitBoxAdapter(): AudioUnitBoxAdapter;
32
+ parameterAt(fieldIndices: FieldKeys): AutomatableParameterFieldAdapter;
33
+ terminate(): void;
34
+ }
35
+ //# sourceMappingURL=ReverbDeviceBoxAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReverbDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/audio-effects/ReverbDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAgB,IAAI,EAAe,MAAM,kBAAkB,CAAA;AAClE,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AACxG,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,2BAA2B,EAAE,UAAU,EAAU,MAAM,eAAe,CAAA;AAC9E,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAE3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAC,gCAAgC,EAAC,MAAM,wCAAwC,CAAA;AAEvF,qBAAa,sBAAuB,YAAW,2BAA2B;;IACtE,QAAQ,CAAC,IAAI,kBAAiB;IAC9B,QAAQ,CAAC,OAAO,WAAU;IAK1B,QAAQ,CAAC,cAAc;;;;;;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,eAAe;IAO7D,IAAI,GAAG,IAAI,eAAe,CAAmB;IAC7C,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAgC;IACvD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,UAAU,CAAyB;IACrD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAwB;IAE1E,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAE1C,WAAW,CAAC,YAAY,EAAE,SAAS,GAAG,gCAAgC;IAEtE,SAAS,IAAI,IAAI;CAsCpB"}
@@ -0,0 +1,44 @@
1
+ import { StringMapping, ValueMapping } from "@opendaw/lib-std";
2
+ import { Devices } from "../../devices";
3
+ import { ParameterAdapterSet } from "../../ParameterAdapterSet";
4
+ export class ReverbDeviceBoxAdapter {
5
+ type = "audio-effect";
6
+ accepts = "audio";
7
+ #context;
8
+ #box;
9
+ #parametric;
10
+ namedParameter; // let typescript infer the type
11
+ constructor(context, box) {
12
+ this.#context = context;
13
+ this.#box = box;
14
+ this.#parametric = new ParameterAdapterSet(this.#context);
15
+ this.namedParameter = this.#wrapParameters(box);
16
+ }
17
+ get box() { return this.#box; }
18
+ get uuid() { return this.#box.address.uuid; }
19
+ get address() { return this.#box.address; }
20
+ get indexField() { return this.#box.index; }
21
+ get labelField() { return this.#box.label; }
22
+ get enabledField() { return this.#box.enabled; }
23
+ get minimizedField() { return this.#box.minimized; }
24
+ get host() { return this.#box.host; }
25
+ deviceHost() {
26
+ return this.#context.boxAdapters
27
+ .adapterFor(this.#box.host.targetVertex.unwrap("no device-host").box, Devices.isHost);
28
+ }
29
+ audioUnitBoxAdapter() { return this.deviceHost().audioUnitBoxAdapter(); }
30
+ parameterAt(fieldIndices) { return this.#parametric.parameterAt(fieldIndices); }
31
+ terminate() { this.#parametric.terminate(); }
32
+ #wrapParameters(box) {
33
+ return {
34
+ decay: this.#parametric.createParameter(box.decay, ValueMapping.unipolar(), StringMapping.numeric({ unit: "%", fractionDigits: 0 }), "Room-Size"),
35
+ preDelay: this.#parametric.createParameter(box.preDelay, ValueMapping.exponential(0.001, 0.500), StringMapping.numeric({
36
+ unit: "s", fractionDigits: 1, unitPrefix: true
37
+ }), "Pre-Delay"),
38
+ damp: this.#parametric.createParameter(box.damp, ValueMapping.unipolar(), StringMapping.numeric({ unit: "%", fractionDigits: 0 }), "damping"),
39
+ filter: this.#parametric.createParameter(box.filter, ValueMapping.bipolar(), StringMapping.numeric({ unit: "%", fractionDigits: 0 }), "filter"),
40
+ dry: this.#parametric.createParameter(box.dry, ValueMapping.DefaultDecibel, StringMapping.numeric({ unit: "db", fractionDigits: 1 }), "dry"),
41
+ wet: this.#parametric.createParameter(box.wet, ValueMapping.DefaultDecibel, StringMapping.numeric({ unit: "db", fractionDigits: 1 }), "wet")
42
+ };
43
+ }
44
+ }
@@ -0,0 +1,33 @@
1
+ import { UUID } from "@opendaw/lib-std";
2
+ import { Address, BooleanField, Int32Field, PointerField, StringField } from "@opendaw/lib-box";
3
+ import { StereoToolDeviceBox } from "@opendaw/studio-boxes";
4
+ import { Pointers } from "@opendaw/studio-enums";
5
+ import { AudioEffectDeviceBoxAdapter, DeviceHost } from "../../devices";
6
+ import { BoxAdaptersContext } from "../../BoxAdaptersContext";
7
+ import { AudioUnitBoxAdapter } from "../../audio-unit/AudioUnitBoxAdapter";
8
+ export declare class StereoToolDeviceBoxAdapter implements AudioEffectDeviceBoxAdapter {
9
+ #private;
10
+ readonly type = "audio-effect";
11
+ readonly accepts = "audio";
12
+ readonly namedParameter: {
13
+ readonly volume: import("../..").AutomatableParameterFieldAdapter<number>;
14
+ readonly panning: import("../..").AutomatableParameterFieldAdapter<number>;
15
+ readonly stereo: import("../..").AutomatableParameterFieldAdapter<number>;
16
+ readonly invertL: import("../..").AutomatableParameterFieldAdapter<boolean>;
17
+ readonly invertR: import("../..").AutomatableParameterFieldAdapter<boolean>;
18
+ readonly swap: import("../..").AutomatableParameterFieldAdapter<boolean>;
19
+ };
20
+ constructor(context: BoxAdaptersContext, box: StereoToolDeviceBox);
21
+ get box(): StereoToolDeviceBox;
22
+ get uuid(): UUID.Format;
23
+ get address(): Address;
24
+ get indexField(): Int32Field;
25
+ get labelField(): StringField;
26
+ get enabledField(): BooleanField;
27
+ get minimizedField(): BooleanField;
28
+ get host(): PointerField<Pointers.AudioEffectHost>;
29
+ deviceHost(): DeviceHost;
30
+ audioUnitBoxAdapter(): AudioUnitBoxAdapter;
31
+ terminate(): void;
32
+ }
33
+ //# sourceMappingURL=StereoToolDeviceBoxAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StereoToolDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/audio-effects/StereoToolDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,IAAI,EAAe,MAAM,kBAAkB,CAAA;AAClE,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC7F,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,2BAA2B,EAAE,UAAU,EAAU,MAAM,eAAe,CAAA;AAC9E,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAE3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AAExE,qBAAa,0BAA2B,YAAW,2BAA2B;;IAC1E,QAAQ,CAAC,IAAI,kBAAiB;IAC9B,QAAQ,CAAC,OAAO,WAAU;IAM1B,QAAQ,CAAC,cAAc;;;;;;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,mBAAmB;IAOjE,IAAI,GAAG,IAAI,mBAAmB,CAAmB;IACjD,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAgC;IACvD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,UAAU,CAAyB;IACrD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAwB;IAE1E,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAE1C,SAAS,IAAI,IAAI;CAmBpB"}
@@ -0,0 +1,41 @@
1
+ import { StringMapping, ValueMapping } from "@opendaw/lib-std";
2
+ import { Devices } from "../../devices";
3
+ import { ParameterAdapterSet } from "../../ParameterAdapterSet";
4
+ export class StereoToolDeviceBoxAdapter {
5
+ type = "audio-effect";
6
+ accepts = "audio";
7
+ #context;
8
+ #box;
9
+ #parametric;
10
+ namedParameter; // let typescript infer the type
11
+ constructor(context, box) {
12
+ this.#context = context;
13
+ this.#box = box;
14
+ this.#parametric = new ParameterAdapterSet(this.#context);
15
+ this.namedParameter = this.#wrapParameters(box);
16
+ }
17
+ get box() { return this.#box; }
18
+ get uuid() { return this.#box.address.uuid; }
19
+ get address() { return this.#box.address; }
20
+ get indexField() { return this.#box.index; }
21
+ get labelField() { return this.#box.label; }
22
+ get enabledField() { return this.#box.enabled; }
23
+ get minimizedField() { return this.#box.minimized; }
24
+ get host() { return this.#box.host; }
25
+ deviceHost() {
26
+ return this.#context.boxAdapters
27
+ .adapterFor(this.#box.host.targetVertex.unwrap("no device-host").box, Devices.isHost);
28
+ }
29
+ audioUnitBoxAdapter() { return this.deviceHost().audioUnitBoxAdapter(); }
30
+ terminate() { this.#parametric.terminate(); }
31
+ #wrapParameters(box) {
32
+ return {
33
+ volume: this.#parametric.createParameter(box.volume, ValueMapping.decibel(-72.0, 0.0, 12.0), StringMapping.numeric({ unit: "db", fractionDigits: 1 }), "Volume"),
34
+ panning: this.#parametric.createParameter(box.panning, ValueMapping.bipolar(), StringMapping.panning, "Panning", 0.5),
35
+ stereo: this.#parametric.createParameter(box.stereo, ValueMapping.bipolar(), StringMapping.numeric({ unit: "%", fractionDigits: 0 }), "stereo", 0.5),
36
+ invertL: this.#parametric.createParameter(box.invertL, ValueMapping.bool, StringMapping.bool, "Invert Left"),
37
+ invertR: this.#parametric.createParameter(box.invertR, ValueMapping.bool, StringMapping.bool, "Invert Right"),
38
+ swap: this.#parametric.createParameter(box.swap, ValueMapping.bool, StringMapping.bool, "Swap")
39
+ };
40
+ }
41
+ }
@@ -0,0 +1,32 @@
1
+ import { NanoDeviceBox } from "@opendaw/studio-boxes";
2
+ import { UUID } from "@opendaw/lib-std";
3
+ import { Address, BooleanField, FieldKeys, StringField } from "@opendaw/lib-box";
4
+ import { DeviceHost, InstrumentDeviceBoxAdapter } from "../../devices";
5
+ import { BoxAdaptersContext } from "../../BoxAdaptersContext";
6
+ import { TrackType } from "../../timeline/TrackType";
7
+ import { AudioUnitBoxAdapter } from "../../audio-unit/AudioUnitBoxAdapter";
8
+ import { AutomatableParameterFieldAdapter } from "../../AutomatableParameterFieldAdapter";
9
+ export declare class NanoDeviceBoxAdapter implements InstrumentDeviceBoxAdapter {
10
+ #private;
11
+ readonly type = "instrument";
12
+ readonly accepts = "midi";
13
+ readonly namedParameter: {
14
+ readonly volume: AutomatableParameterFieldAdapter<number>;
15
+ readonly release: AutomatableParameterFieldAdapter<number>;
16
+ };
17
+ constructor(context: BoxAdaptersContext, box: NanoDeviceBox);
18
+ get box(): NanoDeviceBox;
19
+ get uuid(): UUID.Format;
20
+ get address(): Address;
21
+ get labelField(): StringField;
22
+ get iconField(): StringField;
23
+ get defaultTrackType(): TrackType;
24
+ get enabledField(): BooleanField;
25
+ get minimizedField(): BooleanField;
26
+ get acceptsMidiEvents(): boolean;
27
+ deviceHost(): DeviceHost;
28
+ audioUnitBoxAdapter(): AudioUnitBoxAdapter;
29
+ parameterAt(fieldIndices: FieldKeys): AutomatableParameterFieldAdapter;
30
+ terminate(): void;
31
+ }
32
+ //# sourceMappingURL=NanoDeviceBoxAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NanoDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/instruments/NanoDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAgB,IAAI,EAAe,MAAM,kBAAkB,CAAA;AAClE,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC9E,OAAO,EAAC,UAAU,EAAW,0BAA0B,EAAC,MAAM,eAAe,CAAA;AAC7E,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAE3D,OAAO,EAAC,SAAS,EAAC,MAAM,0BAA0B,CAAA;AAClD,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAC,gCAAgC,EAAC,MAAM,wCAAwC,CAAA;AAEvF,qBAAa,oBAAqB,YAAW,0BAA0B;;IACnE,QAAQ,CAAC,IAAI,gBAAe;IAC5B,QAAQ,CAAC,OAAO,UAAS;IAMzB,QAAQ,CAAC,cAAc;;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,aAAa;IAO3D,IAAI,GAAG,IAAI,aAAa,CAAmB;IAC3C,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAgC;IACvD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,SAAS,IAAI,WAAW,CAAwB;IACpD,IAAI,gBAAgB,IAAI,SAAS,CAAyB;IAC1D,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,iBAAiB,IAAI,OAAO,CAAc;IAE9C,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAE1C,WAAW,CAAC,YAAY,EAAE,SAAS,GAAG,gCAAgC;IAEtE,SAAS,IAAI,IAAI;CAcpB"}
@@ -0,0 +1,40 @@
1
+ import { StringMapping, ValueMapping } from "@opendaw/lib-std";
2
+ import { Devices } from "../../devices";
3
+ import { ParameterAdapterSet } from "../../ParameterAdapterSet";
4
+ import { TrackType } from "../../timeline/TrackType";
5
+ export class NanoDeviceBoxAdapter {
6
+ type = "instrument";
7
+ accepts = "midi";
8
+ #context;
9
+ #box;
10
+ #parametric;
11
+ namedParameter; // let typescript infer the type
12
+ constructor(context, box) {
13
+ this.#context = context;
14
+ this.#box = box;
15
+ this.#parametric = new ParameterAdapterSet(this.#context);
16
+ this.namedParameter = this.#wrapParameters(box);
17
+ }
18
+ get box() { return this.#box; }
19
+ get uuid() { return this.#box.address.uuid; }
20
+ get address() { return this.#box.address; }
21
+ get labelField() { return this.#box.label; }
22
+ get iconField() { return this.#box.icon; }
23
+ get defaultTrackType() { return TrackType.Notes; }
24
+ get enabledField() { return this.#box.enabled; }
25
+ get minimizedField() { return this.#box.minimized; }
26
+ get acceptsMidiEvents() { return true; }
27
+ deviceHost() {
28
+ return this.#context.boxAdapters
29
+ .adapterFor(this.#box.host.targetVertex.unwrap("no device-host").box, Devices.isHost);
30
+ }
31
+ audioUnitBoxAdapter() { return this.deviceHost().audioUnitBoxAdapter(); }
32
+ parameterAt(fieldIndices) { return this.#parametric.parameterAt(fieldIndices); }
33
+ terminate() { this.#parametric.terminate(); }
34
+ #wrapParameters(box) {
35
+ return {
36
+ volume: this.#parametric.createParameter(box.volume, ValueMapping.DefaultDecibel, StringMapping.numeric({ unit: "db", fractionDigits: 1 }), "volume"),
37
+ release: this.#parametric.createParameter(box.release, ValueMapping.exponential(0.001, 8.0), StringMapping.numeric({ unit: "s", fractionDigits: 3 }), "release")
38
+ };
39
+ }
40
+ }
@@ -0,0 +1,6 @@
1
+ export declare enum Gate {
2
+ Off = 0,
3
+ On = 1,
4
+ Loop = 2
5
+ }
6
+ //# sourceMappingURL=Gate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Gate.d.ts","sourceRoot":"","sources":["../../../../src/devices/instruments/Playfield/Gate.ts"],"names":[],"mappings":"AAAA,oBAAY,IAAI;IACZ,GAAG,IAAA;IAAE,EAAE,IAAA;IAAE,IAAI,IAAA;CAChB"}
@@ -0,0 +1,6 @@
1
+ export var Gate;
2
+ (function (Gate) {
3
+ Gate[Gate["Off"] = 0] = "Off";
4
+ Gate[Gate["On"] = 1] = "On";
5
+ Gate[Gate["Loop"] = 2] = "Loop";
6
+ })(Gate || (Gate = {}));
@@ -0,0 +1,63 @@
1
+ import { Pointers } from "@opendaw/studio-enums";
2
+ import { PlayfieldSampleBox } from "@opendaw/studio-boxes";
3
+ import { int, Option, UUID } from "@opendaw/lib-std";
4
+ import { Address, BooleanField, Field, Int32Field, StringField } from "@opendaw/lib-box";
5
+ import { AudioEffectDeviceBoxAdapter, DeviceAccepts, DeviceHost, InstrumentDeviceBoxAdapter, MidiEffectDeviceAdapter } from "../../../devices";
6
+ import { IndexedBoxAdapter, SortedBoxAdapterCollection } from "../../../SortedBoxAdapterCollection";
7
+ import { BoxAdaptersContext } from "../../../BoxAdaptersContext";
8
+ import { AudioFileBoxAdapter } from "../../../AudioFileBoxAdapter";
9
+ import { Gate } from "./Gate";
10
+ import { TrackType } from "../../../timeline/TrackType";
11
+ import { AudioUnitInputAdapter } from "../../../audio-unit/AudioUnitInputAdapter";
12
+ import { AudioUnitBoxAdapter } from "../../../audio-unit/AudioUnitBoxAdapter";
13
+ import { PlayfieldDeviceBoxAdapter } from "../PlayfieldDeviceBoxAdapter";
14
+ export declare class PlayfieldSampleBoxAdapter implements DeviceHost, InstrumentDeviceBoxAdapter, IndexedBoxAdapter {
15
+ #private;
16
+ readonly class = "device-host";
17
+ readonly accepts: DeviceAccepts;
18
+ readonly type = "instrument";
19
+ readonly namedParameter: {
20
+ readonly gate: import("../../..").AutomatableParameterFieldAdapter<number>;
21
+ readonly mute: import("../../..").AutomatableParameterFieldAdapter<boolean>;
22
+ readonly solo: import("../../..").AutomatableParameterFieldAdapter<boolean>;
23
+ readonly polyphone: import("../../..").AutomatableParameterFieldAdapter<boolean>;
24
+ readonly exclude: import("../../..").AutomatableParameterFieldAdapter<boolean>;
25
+ readonly pitch: import("../../..").AutomatableParameterFieldAdapter<number>;
26
+ readonly sampleStart: import("../../..").AutomatableParameterFieldAdapter<number>;
27
+ readonly sampleEnd: import("../../..").AutomatableParameterFieldAdapter<number>;
28
+ readonly attack: import("../../..").AutomatableParameterFieldAdapter<number>;
29
+ readonly release: import("../../..").AutomatableParameterFieldAdapter<number>;
30
+ };
31
+ constructor(context: BoxAdaptersContext, box: PlayfieldSampleBox);
32
+ get box(): PlayfieldSampleBox;
33
+ get uuid(): UUID.Format;
34
+ get address(): Address;
35
+ get peakAddress(): Address;
36
+ get indexField(): Int32Field;
37
+ get gate(): Gate;
38
+ get exclude(): boolean;
39
+ get label(): string;
40
+ get iconField(): StringField;
41
+ get defaultTrackType(): TrackType;
42
+ get acceptsMidiEvents(): boolean;
43
+ get midiEffectsField(): Field<Pointers.MidiEffectHost>;
44
+ get inputField(): Field<Pointers.InstrumentHost | Pointers.AudioOutput>;
45
+ get audioEffectsField(): Field<Pointers.AudioEffectHost>;
46
+ get tracksField(): Field<Pointers.TrackCollection>;
47
+ get isAudioUnit(): boolean;
48
+ file(): Option<AudioFileBoxAdapter>;
49
+ fileUUID(): UUID.Format;
50
+ resetParameters(): void;
51
+ copyToIndex(index: int): void;
52
+ get midiEffects(): SortedBoxAdapterCollection<MidiEffectDeviceAdapter, Pointers.MidiEffectHost>;
53
+ get inputAdapter(): Option<AudioUnitInputAdapter>;
54
+ get audioEffects(): SortedBoxAdapterCollection<AudioEffectDeviceBoxAdapter, Pointers.AudioEffectHost>;
55
+ get labelField(): StringField;
56
+ get enabledField(): BooleanField;
57
+ get minimizedField(): BooleanField;
58
+ device(): PlayfieldDeviceBoxAdapter;
59
+ deviceHost(): DeviceHost;
60
+ audioUnitBoxAdapter(): AudioUnitBoxAdapter;
61
+ terminate(): void;
62
+ }
63
+ //# sourceMappingURL=PlayfieldSampleBoxAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlayfieldSampleBoxAdapter.d.ts","sourceRoot":"","sources":["../../../../src/devices/instruments/Playfield/PlayfieldSampleBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAC,GAAG,EAAE,MAAM,EAA6B,IAAI,EAAe,MAAM,kBAAkB,CAAA;AAC3F,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AACtF,OAAO,EACH,2BAA2B,EAC3B,aAAa,EACb,UAAU,EACV,0BAA0B,EAC1B,uBAAuB,EAC1B,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,iBAAiB,EAAE,0BAA0B,EAAC,MAAM,qCAAqC,CAAA;AACjG,OAAO,EAAC,kBAAkB,EAAC,MAAM,6BAA6B,CAAA;AAE9D,OAAO,EAAC,mBAAmB,EAAC,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAA;AAC3B,OAAO,EAAC,SAAS,EAAC,MAAM,6BAA6B,CAAA;AACrD,OAAO,EAAC,qBAAqB,EAAC,MAAM,2CAA2C,CAAA;AAC/E,OAAO,EAAC,mBAAmB,EAAC,MAAM,yCAAyC,CAAA;AAC3E,OAAO,EAAC,yBAAyB,EAAC,MAAM,8BAA8B,CAAA;AAEtE,qBAAa,yBAA0B,YAAW,UAAU,EAAE,0BAA0B,EAAE,iBAAiB;;IACvG,QAAQ,CAAC,KAAK,iBAAgB;IAC9B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAQ;IACvC,QAAQ,CAAC,IAAI,gBAAe;IAW5B,QAAQ,CAAC,cAAc;;;;;;;;;;;MAAA;gBAIX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,kBAAkB;IAkBhE,IAAI,GAAG,IAAI,kBAAkB,CAAmB;IAChD,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAgC;IACvD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,WAAW,IAAI,OAAO,CAAwC;IAClE,IAAI,UAAU,IAAI,UAAU,CAAyB;IAErD,IAAI,IAAI,IAAI,IAAI,CAAmC;IACnD,IAAI,OAAO,IAAI,OAAO,CAAsC;IAC5D,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,SAAS,IAAI,WAAW,CAAwB;IACpD,IAAI,gBAAgB,IAAI,SAAS,CAAyB;IAC1D,IAAI,iBAAiB,IAAI,OAAO,CAAc;IAC9C,IAAI,gBAAgB,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAA+B;IACrF,IAAI,UAAU,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,GAAG,QAAQ,CAAC,WAAW,CAAC,CAA8C;IACrH,IAAI,iBAAiB,IAAI,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAgC;IACxF,IAAI,WAAW,IAAI,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAA+C;IACjG,IAAI,WAAW,IAAI,OAAO,CAAe;IAEzC,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC;IACnC,QAAQ,IAAI,IAAI,CAAC,MAAM;IAEvB,eAAe,IAAI,IAAI;IAavB,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAkB7B,IAAI,WAAW,IAAI,0BAA0B,CAAC,uBAAuB,EAAE,QAAQ,CAAC,cAAc,CAAC,CAE9F;IACD,IAAI,YAAY,IAAI,MAAM,CAAC,qBAAqB,CAAC,CAEhD;IACD,IAAI,YAAY,IAAI,0BAA0B,CAAC,2BAA2B,EAAE,QAAQ,CAAC,eAAe,CAAC,CAEpG;IAED,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAE/D,MAAM,IAAI,yBAAyB;IAKnC,UAAU,IAAI,UAAU;IACxB,mBAAmB,IAAI,mBAAmB;IAE1C,SAAS,IAAI,IAAI;CA4BpB"}
@@ -0,0 +1,128 @@
1
+ import { Pointers } from "@opendaw/studio-enums";
2
+ import { PlayfieldSampleBox } from "@opendaw/studio-boxes";
3
+ import { Option, StringMapping, Terminator, UUID, ValueMapping } from "@opendaw/lib-std";
4
+ import { Devices } from "../../../devices";
5
+ import { SortedBoxAdapterCollection } from "../../../SortedBoxAdapterCollection";
6
+ import { ParameterAdapterSet } from "../../../ParameterAdapterSet";
7
+ import { AudioFileBoxAdapter } from "../../../AudioFileBoxAdapter";
8
+ import { TrackType } from "../../../timeline/TrackType";
9
+ import { PlayfieldDeviceBoxAdapter } from "../PlayfieldDeviceBoxAdapter";
10
+ export class PlayfieldSampleBoxAdapter {
11
+ class = "device-host";
12
+ accepts = false;
13
+ type = "instrument";
14
+ #terminator = new Terminator();
15
+ #context;
16
+ #box;
17
+ #midiEffects;
18
+ #audioEffects;
19
+ #parametric;
20
+ namedParameter; // let typescript infer the type
21
+ #file = Option.None;
22
+ constructor(context, box) {
23
+ this.#context = context;
24
+ this.#box = box;
25
+ this.#midiEffects = this.#terminator.own(SortedBoxAdapterCollection.create(this.#box.midiEffects, box => this.#context.boxAdapters.adapterFor(box, Devices.isMidiEffect), Pointers.MidiEffectHost));
26
+ this.#audioEffects = this.#terminator.own(SortedBoxAdapterCollection.create(this.#box.audioEffects, box => this.#context.boxAdapters.adapterFor(box, Devices.isAudioEffect), Pointers.AudioEffectHost));
27
+ this.#parametric = this.#terminator.own(new ParameterAdapterSet(this.#context));
28
+ this.namedParameter = this.#wrapParameters(box);
29
+ this.#terminator.own(this.#box.file.catchupAndSubscribe(pointer => {
30
+ this.#file = pointer.targetVertex.map(({ box }) => this.#context.boxAdapters.adapterFor(box, AudioFileBoxAdapter));
31
+ this.#file.unwrapOrNull()?.getOrCreateAudioLoader(); // triggers preloading file if available
32
+ }));
33
+ }
34
+ get box() { return this.#box; }
35
+ get uuid() { return this.#box.address.uuid; }
36
+ get address() { return this.#box.address; }
37
+ get peakAddress() { return this.#box.address.append(1001); }
38
+ get indexField() { return this.#box.index; }
39
+ get gate() { return this.#box.gate.getValue(); }
40
+ get exclude() { return this.#box.exclude.getValue(); }
41
+ get label() {
42
+ return `${this.device().labelField.getValue()} > ${this.#file.mapOr(file => file.box.fileName.getValue(), "No file")}`;
43
+ }
44
+ get iconField() { return this.#box.icon; }
45
+ get defaultTrackType() { return TrackType.Notes; }
46
+ get acceptsMidiEvents() { return true; }
47
+ get midiEffectsField() { return this.#box.midiEffects; }
48
+ get inputField() { return this.audioUnitBoxAdapter().box.input; }
49
+ get audioEffectsField() { return this.#box.audioEffects; }
50
+ get tracksField() { return this.audioUnitBoxAdapter().box.tracks; }
51
+ get isAudioUnit() { return false; }
52
+ file() { return this.#file; }
53
+ fileUUID() { return this.#box.file.targetAddress.unwrap().uuid; }
54
+ resetParameters() {
55
+ this.#box.mute.reset();
56
+ this.#box.solo.reset();
57
+ this.#box.exclude.reset();
58
+ this.#box.polyphone.reset();
59
+ this.#box.pitch.reset();
60
+ this.#box.attack.reset();
61
+ this.#box.release.reset();
62
+ this.#box.sampleStart.reset();
63
+ this.#box.sampleEnd.reset();
64
+ this.#box.gate.reset();
65
+ }
66
+ copyToIndex(index) {
67
+ PlayfieldSampleBox.create(this.#box.graph, UUID.generate(), box => {
68
+ box.file.refer(this.#box.file.targetVertex.unwrap());
69
+ box.device.refer(this.#box.device.targetVertex.unwrap());
70
+ box.index.setValue(index);
71
+ box.mute.setValue(this.#box.mute.getValue());
72
+ box.solo.setValue(this.#box.solo.getValue());
73
+ box.sampleStart.setValue(this.#box.sampleStart.getValue());
74
+ box.sampleEnd.setValue(this.#box.sampleEnd.getValue());
75
+ box.attack.setValue(this.#box.attack.getValue());
76
+ box.release.setValue(this.#box.release.getValue());
77
+ box.pitch.setValue(this.#box.pitch.getValue());
78
+ box.exclude.setValue(this.#box.exclude.getValue());
79
+ box.gate.setValue(this.#box.gate.getValue());
80
+ // TODO Copy effects?
81
+ });
82
+ }
83
+ get midiEffects() {
84
+ return this.#midiEffects;
85
+ }
86
+ get inputAdapter() {
87
+ return Option.wrap(this);
88
+ }
89
+ get audioEffects() {
90
+ return this.#audioEffects;
91
+ }
92
+ get labelField() { return this.#box.label; }
93
+ get enabledField() { return this.#box.enabled; }
94
+ get minimizedField() { return this.#box.minimized; }
95
+ device() {
96
+ return this.#context.boxAdapters
97
+ .adapterFor(this.#box.device.targetVertex.unwrap().box, PlayfieldDeviceBoxAdapter);
98
+ }
99
+ deviceHost() { return this.device().deviceHost(); }
100
+ audioUnitBoxAdapter() { return this.deviceHost().audioUnitBoxAdapter(); }
101
+ terminate() { this.#terminator.terminate(); }
102
+ #wrapParameters(box) {
103
+ return {
104
+ gate: this.#parametric.createParameter(box.gate, ValueMapping.linearInteger(0, 2), StringMapping.indices("", ["Off", "On", "Loop"]), "Gate"),
105
+ mute: this.#parametric.createParameter(box.mute, ValueMapping.bool, StringMapping.bool, "Mute"),
106
+ solo: this.#parametric.createParameter(box.solo, ValueMapping.bool, StringMapping.bool, "Solo"),
107
+ polyphone: this.#parametric.createParameter(box.polyphone, ValueMapping.bool, StringMapping.bool, "Polyphone"),
108
+ exclude: this.#parametric.createParameter(box.exclude, ValueMapping.bool, StringMapping.bool, "Exclude"),
109
+ pitch: this.#parametric.createParameter(box.pitch, ValueMapping.linear(-1200, 1200), StringMapping.numeric({
110
+ unit: "cents",
111
+ bipolar: true,
112
+ fractionDigits: 0
113
+ }), "Pitch", 0.0),
114
+ sampleStart: this.#parametric.createParameter(box.sampleStart, ValueMapping.unipolar(), StringMapping.percent(), "Start", 0.0),
115
+ sampleEnd: this.#parametric.createParameter(box.sampleEnd, ValueMapping.unipolar(), StringMapping.percent(), "End", 1.0),
116
+ attack: this.#parametric.createParameter(box.attack, ValueMapping.exponential(0.001, 5.0), StringMapping.numeric({
117
+ unit: "s",
118
+ unitPrefix: true,
119
+ fractionDigits: 1
120
+ }), "Attack"),
121
+ release: this.#parametric.createParameter(box.release, ValueMapping.exponential(0.001, 5.0), StringMapping.numeric({
122
+ unit: "s",
123
+ unitPrefix: true,
124
+ fractionDigits: 1
125
+ }), "Release")
126
+ };
127
+ }
128
+ }
@@ -0,0 +1,35 @@
1
+ import { PlayfieldDeviceBox } from "@opendaw/studio-boxes";
2
+ import { Address, BooleanField, FieldKeys, StringField } from "@opendaw/lib-box";
3
+ import { Pointers } from "@opendaw/studio-enums";
4
+ import { UUID } from "@opendaw/lib-std";
5
+ import { DeviceHost, InstrumentDeviceBoxAdapter } from "../../devices";
6
+ import { BoxAdaptersContext } from "../../BoxAdaptersContext";
7
+ import { SortedBoxAdapterCollection } from "../../SortedBoxAdapterCollection";
8
+ import { PlayfieldSampleBoxAdapter } from "./Playfield/PlayfieldSampleBoxAdapter";
9
+ import { TrackType } from "../../timeline/TrackType";
10
+ import { AudioUnitBoxAdapter } from "../../audio-unit/AudioUnitBoxAdapter";
11
+ import { AutomatableParameterFieldAdapter } from "../../AutomatableParameterFieldAdapter";
12
+ export declare class PlayfieldDeviceBoxAdapter implements InstrumentDeviceBoxAdapter {
13
+ #private;
14
+ readonly type = "instrument";
15
+ readonly accepts = "midi";
16
+ constructor(context: BoxAdaptersContext, box: PlayfieldDeviceBox);
17
+ reset(): void;
18
+ get box(): PlayfieldDeviceBox;
19
+ get uuid(): UUID.Format;
20
+ get address(): Address;
21
+ get notesAddress(): Address;
22
+ get labelField(): StringField;
23
+ get iconField(): StringField;
24
+ get defaultTrackType(): TrackType;
25
+ get enabledField(): BooleanField;
26
+ get minimizedField(): BooleanField;
27
+ get acceptsMidiEvents(): boolean;
28
+ get samples(): SortedBoxAdapterCollection<PlayfieldSampleBoxAdapter, Pointers.Sample>;
29
+ get context(): BoxAdaptersContext;
30
+ deviceHost(): DeviceHost;
31
+ audioUnitBoxAdapter(): AudioUnitBoxAdapter;
32
+ parameterAt(fieldIndices: FieldKeys): AutomatableParameterFieldAdapter;
33
+ terminate(): void;
34
+ }
35
+ //# sourceMappingURL=PlayfieldDeviceBoxAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlayfieldDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/instruments/PlayfieldDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC9E,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAA;AACrC,OAAO,EAAC,UAAU,EAAW,0BAA0B,EAAC,MAAM,eAAe,CAAA;AAC7E,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAC,0BAA0B,EAAC,MAAM,kCAAkC,CAAA;AAC3E,OAAO,EAAC,yBAAyB,EAAC,MAAM,uCAAuC,CAAA;AAE/E,OAAO,EAAC,SAAS,EAAC,MAAM,0BAA0B,CAAA;AAClD,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAC,gCAAgC,EAAC,MAAM,wCAAwC,CAAA;AAEvF,qBAAa,yBAA0B,YAAW,0BAA0B;;IACxE,QAAQ,CAAC,IAAI,gBAAe;IAC5B,QAAQ,CAAC,OAAO,UAAS;gBAQb,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,kBAAkB;IAShE,KAAK,IAAI,IAAI;IAEb,IAAI,GAAG,IAAI,kBAAkB,CAAmB;IAChD,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAgC;IACvD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,YAAY,IAAI,OAAO,CAAwC;IACnE,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,SAAS,IAAI,WAAW,CAAwB;IACpD,IAAI,gBAAgB,IAAI,SAAS,CAAyB;IAC1D,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,iBAAiB,IAAI,OAAO,CAAc;IAC9C,IAAI,OAAO,IAAI,0BAA0B,CAAC,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAuB;IAC5G,IAAI,OAAO,IAAI,kBAAkB,CAAuB;IAExD,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAE1C,WAAW,CAAC,YAAY,EAAE,SAAS,GAAG,gCAAgC;IAEtE,SAAS,IAAI,IAAI;CACpB"}