diff --git a/example.maxpat b/example.maxpat index e979f4d..1501ad7 100644 --- a/example.maxpat +++ b/example.maxpat @@ -10,7 +10,7 @@ } , "classnamespace" : "box", - "rect" : [ 34.0, 100.0, 1444.0, 787.0 ], + "rect" : [ 100.0, 100.0, 996.0, 787.0 ], "bglocked" : 0, "openinpresentation" : 1, "default_fontsize" : 12.0, @@ -39,12 +39,96 @@ "subpatcher_template" : "", "assistshowspatchername" : 0, "boxes" : [ { + "box" : { + "id" : "obj-57", + "maxclass" : "newobj", + "numinlets" : 1, + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 397.0, 145.0, 95.0, 22.0 ], + "text" : "prepend readfile" + } + + } +, { + "box" : { + "id" : "obj-44", + "maxclass" : "message", + "numinlets" : 2, + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 397.0, 82.0, 63.0, 22.0 ], + "text" : "lfogui.html" + } + + } +, { + "box" : { + "id" : "obj-32", + "maxclass" : "newobj", + "numinlets" : 1, + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 397.0, 113.0, 77.0, 22.0 ], + "text" : "absolutepath" + } + + } +, { + "box" : { + "id" : "obj-31", + "maxclass" : "newobj", + "numinlets" : 2, + "numoutlets" : 2, + "outlettype" : [ "", "" ], + "patching_rect" : [ 447.0, 667.0, 73.0, 22.0 ], + "text" : "route debug" + } + + } +, { + "box" : { + "id" : "obj-19", + "linecount" : 7, + "maxclass" : "message", + "numinlets" : 2, + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 330.0, 1659.0, 332.0, 102.0 ], + "text" : "userFunction 2 0. 9. 18. 28. 37. 46. 55. 65. 74. 83. 92. 100. 99. 98. 96. 95. 94. 93. 92. 91. 90. 89. 87. 86. 85. 84. 83. 82. 81. 80. 79. 77. 76. 75. 74. 73. 72. 71. 70. 68. 67. 66. 65. 64. 63. 62. 61. 59. 58. 57. 56. 55. 54. 53. 52. 50. 49. 48. 47. 46. 45. 44. 43. 42. 40. 39. 38. 37. 36. 35. 34. 33. 31. 30. 29. 28. 27. 26. 25. 24. 22. 21. 20. 19. 18. 17. 16. 15. 13. 12. 11. 10. 9. 8. 7. 6. 4. 3. 2. 1. 0." + } + + } +, { + "box" : { + "id" : "obj-1", + "maxclass" : "newobj", + "numinlets" : 1, + "numoutlets" : 0, + "patching_rect" : [ 447.0, 696.0, 69.0, 22.0 ], + "text" : "print debug" + } + + } +, { + "box" : { + "id" : "obj-28", + "maxclass" : "message", + "numinlets" : 2, + "numoutlets" : 1, + "outlettype" : [ "" ], + "patching_rect" : [ 727.0, 1373.0, 119.0, 22.0 ], + "text" : "userDefinedType 4 0" + } + + } +, { "box" : { "id" : "obj-165", "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 446.5, 1115.0, 91.0, 20.0 ], + "patching_rect" : [ 447.0, 1145.0, 91.0, 20.0 ], "presentation" : 1, "presentation_rect" : [ 192.0, 126.0, 91.0, 20.0 ], "text" : "Custom wave 4" @@ -57,7 +141,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 355.5, 1115.0, 91.0, 20.0 ], + "patching_rect" : [ 356.0, 1145.0, 91.0, 20.0 ], "presentation" : 1, "presentation_rect" : [ 16.0, 126.0, 91.0, 20.0 ], "text" : "Custom wave 3" @@ -70,7 +154,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 446.5, 1093.0, 91.0, 20.0 ], + "patching_rect" : [ 447.0, 1123.0, 91.0, 20.0 ], "presentation" : 1, "presentation_rect" : [ 192.0, 14.0, 91.0, 20.0 ], "text" : "Custom wave 2" @@ -83,7 +167,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 355.5, 1093.0, 91.0, 20.0 ], + "patching_rect" : [ 356.0, 1123.0, 91.0, 20.0 ], "presentation" : 1, "presentation_rect" : [ 16.0, 14.0, 91.0, 20.0 ], "text" : "Custom wave 1" @@ -96,7 +180,7 @@ "maxclass" : "newobj", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 144.0, 1352.0, 57.0, 22.0 ], + "patching_rect" : [ 144.0, 1382.0, 57.0, 22.0 ], "text" : "s to-jweb" } @@ -108,7 +192,7 @@ "numinlets" : 0, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 397.0, 121.0, 55.0, 22.0 ], + "patching_rect" : [ 346.0, 159.0, 55.0, 22.0 ], "text" : "r to-jweb" } @@ -119,7 +203,7 @@ "maxclass" : "newobj", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 82.0, 1638.0, 57.0, 22.0 ], + "patching_rect" : [ 82.0, 1668.0, 57.0, 22.0 ], "text" : "s to-jweb" } @@ -308,7 +392,7 @@ ] } , - "patching_rect" : [ 724.0, 1411.0, 95.0, 22.0 ], + "patching_rect" : [ 724.0, 1441.0, 95.0, 22.0 ], "saved_object_attributes" : { "description" : "", "digest" : "", @@ -327,7 +411,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 724.0, 1512.0, 49.0, 22.0 ], + "patching_rect" : [ 724.0, 1542.0, 49.0, 22.0 ], "text" : "round 1" } @@ -339,7 +423,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 724.0, 1589.0, 135.0, 22.0 ], + "patching_rect" : [ 724.0, 1619.0, 135.0, 22.0 ], "text" : "prepend userFunction 4" } @@ -351,7 +435,7 @@ "numinlets" : 2, "numoutlets" : 2, "outlettype" : [ "", "" ], - "patching_rect" : [ 724.0, 1554.0, 75.0, 22.0 ], + "patching_rect" : [ 724.0, 1584.0, 75.0, 22.0 ], "text" : "zl.group 101" } @@ -368,7 +452,7 @@ "outlettype" : [ "float", "", "", "bang" ], "outputmode" : 1, "parameter_enable" : 0, - "patching_rect" : [ 724.0, 1449.0, 159.5, 52.0 ], + "patching_rect" : [ 724.0, 1479.0, 159.5, 52.0 ], "presentation" : 1, "presentation_rect" : [ 193.0, 172.0, 159.5, 52.0 ], "range" : [ 0.0, 100.0 ], @@ -560,7 +644,7 @@ ] } , - "patching_rect" : [ 510.0, 1411.0, 95.0, 22.0 ], + "patching_rect" : [ 510.0, 1441.0, 95.0, 22.0 ], "saved_object_attributes" : { "description" : "", "digest" : "", @@ -579,7 +663,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 510.0, 1512.0, 49.0, 22.0 ], + "patching_rect" : [ 510.0, 1542.0, 49.0, 22.0 ], "text" : "round 1" } @@ -591,7 +675,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 510.0, 1589.0, 135.0, 22.0 ], + "patching_rect" : [ 510.0, 1619.0, 135.0, 22.0 ], "text" : "prepend userFunction 3" } @@ -603,14 +687,14 @@ "numinlets" : 2, "numoutlets" : 2, "outlettype" : [ "", "" ], - "patching_rect" : [ 510.0, 1554.0, 75.0, 22.0 ], + "patching_rect" : [ 510.0, 1584.0, 75.0, 22.0 ], "text" : "zl.group 101" } } , { "box" : { - "addpoints" : [ 0.0, 0.0, 0, 390.95744680851061, 0.0, 0, 390.95744680851061, 82.666666666666671, 0, 613.342617737485966, 100.0, 0, 881.355932203389784, 51.851851851851855, 0 ], + "addpoints" : [ 0.0, 0.0, 0, 390.95744680851061, 0.0, 0, 390.95744680851061, 82.666666666666671, 0, 638.418079096045176, 100.0, 0, 881.355932203389784, 51.851851851851855, 0 ], "classic_curve" : 1, "id" : "obj-148", "maxclass" : "function", @@ -619,9 +703,9 @@ "outlettype" : [ "float", "", "", "bang" ], "outputmode" : 1, "parameter_enable" : 0, - "patching_rect" : [ 510.0, 1449.0, 159.5, 52.0 ], + "patching_rect" : [ 510.0, 1479.0, 159.5, 52.0 ], "presentation" : 1, - "presentation_rect" : [ 17.0, 172.0, 159.5, 52.0 ], + "presentation_rect" : [ 16.5, 172.0, 161.0, 52.0 ], "range" : [ 0.0, 100.0 ], "varname" : "userFunction3" } @@ -811,7 +895,7 @@ ] } , - "patching_rect" : [ 296.0, 1411.0, 95.0, 22.0 ], + "patching_rect" : [ 296.0, 1441.0, 95.0, 22.0 ], "saved_object_attributes" : { "description" : "", "digest" : "", @@ -830,7 +914,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 296.0, 1512.0, 49.0, 22.0 ], + "patching_rect" : [ 296.0, 1542.0, 49.0, 22.0 ], "text" : "round 1" } @@ -842,7 +926,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 296.0, 1589.0, 135.0, 22.0 ], + "patching_rect" : [ 296.0, 1619.0, 135.0, 22.0 ], "text" : "prepend userFunction 2" } @@ -854,14 +938,14 @@ "numinlets" : 2, "numoutlets" : 2, "outlettype" : [ "", "" ], - "patching_rect" : [ 296.0, 1554.0, 75.0, 22.0 ], + "patching_rect" : [ 296.0, 1584.0, 75.0, 22.0 ], "text" : "zl.group 101" } } , { "box" : { - "addpoints" : [ 0.0, 62.666666666666664, 0, 230.363894333230689, 0.0, 0, 390.95744680851061, 82.666666666666671, 0, 549.512830503443411, 0.0, 0, 613.342617737485966, 100.0, 0, 859.042553191489333, 0.0, 0, 916.534107099188191, 100.0, 0, 1000.0, 62.666666666666664, 0 ], + "addpoints" : [ 0.0, 0.0, 0, 108.474576271186436, 100.0, 0, 108.474576271186436, 100.0, 0, 1000.0, 0.0, 0 ], "classic_curve" : 1, "id" : "obj-143", "maxclass" : "function", @@ -870,7 +954,7 @@ "outlettype" : [ "float", "", "", "bang" ], "outputmode" : 1, "parameter_enable" : 0, - "patching_rect" : [ 296.0, 1449.0, 159.5, 52.0 ], + "patching_rect" : [ 296.0, 1479.0, 159.5, 52.0 ], "presentation" : 1, "presentation_rect" : [ 193.0, 60.0, 159.5, 52.0 ], "range" : [ 0.0, 100.0 ], @@ -886,7 +970,7 @@ "numoutlets" : 1, "outlettype" : [ "bang" ], "parameter_enable" : 0, - "patching_rect" : [ 58.0, 1377.0, 24.0, 24.0 ] + "patching_rect" : [ 58.0, 1407.0, 24.0, 24.0 ] } } @@ -1074,7 +1158,7 @@ ] } , - "patching_rect" : [ 82.0, 1411.0, 95.0, 22.0 ], + "patching_rect" : [ 82.0, 1441.0, 95.0, 22.0 ], "saved_object_attributes" : { "description" : "", "digest" : "", @@ -1093,7 +1177,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 320.0, 1309.0, 119.0, 22.0 ], + "patching_rect" : [ 320.0, 1339.0, 119.0, 22.0 ], "text" : "prepend userWave 4" } @@ -1114,7 +1198,7 @@ "numoutlets" : 2, "outlettype" : [ "", "" ], "parameter_enable" : 0, - "patching_rect" : [ 320.0, 1252.0, 162.0, 52.0 ], + "patching_rect" : [ 320.0, 1282.0, 162.0, 52.0 ], "peakcolor" : [ 0.498039, 0.498039, 0.498039, 1.0 ], "presentation" : 1, "presentation_rect" : [ 192.0, 172.0, 162.0, 52.0 ], @@ -1132,7 +1216,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 320.0, 1215.0, 119.0, 22.0 ], + "patching_rect" : [ 320.0, 1245.0, 119.0, 22.0 ], "text" : "prepend userWave 3" } @@ -1154,7 +1238,7 @@ "numoutlets" : 2, "outlettype" : [ "", "" ], "parameter_enable" : 0, - "patching_rect" : [ 320.0, 1155.0, 162.0, 52.0 ], + "patching_rect" : [ 320.0, 1185.0, 162.0, 52.0 ], "peakcolor" : [ 0.498039, 0.498039, 0.498039, 1.0 ], "presentation" : 1, "presentation_rect" : [ 16.0, 172.0, 162.0, 52.0 ], @@ -1172,7 +1256,7 @@ "numinlets" : 2, "numoutlets" : 2, "outlettype" : [ "", "" ], - "patching_rect" : [ 735.0, 1276.0, 45.0, 22.0 ], + "patching_rect" : [ 735.0, 1306.0, 45.0, 22.0 ], "text" : "zl.rot 1" } @@ -1183,7 +1267,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 787.0, 1277.0, 133.0, 20.0 ], + "patching_rect" : [ 787.0, 1307.0, 133.0, 20.0 ], "text" : "send chosen type to JS" } @@ -1194,7 +1278,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 517.0, 1303.0, 192.0, 20.0 ], + "patching_rect" : [ 517.0, 1333.0, 192.0, 20.0 ], "text" : "hide/show wave or function in Max" } @@ -1206,7 +1290,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 735.0, 1302.0, 147.0, 22.0 ], + "patching_rect" : [ 735.0, 1332.0, 147.0, 22.0 ], "text" : "prepend userDefinedType" } @@ -1218,7 +1302,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 844.0, 1191.0, 50.0, 22.0 ], + "patching_rect" : [ 844.0, 1221.0, 50.0, 22.0 ], "text" : "pack i 4" } @@ -1232,7 +1316,7 @@ "numoutlets" : 3, "outlettype" : [ "int", "", "" ], "parameter_enable" : 0, - "patching_rect" : [ 844.0, 1155.0, 106.0, 22.0 ], + "patching_rect" : [ 844.0, 1185.0, 106.0, 22.0 ], "presentation" : 1, "presentation_rect" : [ 192.0, 148.0, 106.0, 22.0 ] } @@ -1245,7 +1329,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 735.0, 1191.0, 50.0, 22.0 ], + "patching_rect" : [ 735.0, 1221.0, 50.0, 22.0 ], "text" : "pack i 3" } @@ -1259,7 +1343,7 @@ "numoutlets" : 3, "outlettype" : [ "int", "", "" ], "parameter_enable" : 0, - "patching_rect" : [ 735.0, 1155.0, 106.0, 22.0 ], + "patching_rect" : [ 735.0, 1185.0, 106.0, 22.0 ], "presentation" : 1, "presentation_rect" : [ 16.0, 148.0, 106.0, 22.0 ] } @@ -1272,7 +1356,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 626.0, 1191.0, 50.0, 22.0 ], + "patching_rect" : [ 626.0, 1221.0, 50.0, 22.0 ], "text" : "pack i 2" } @@ -1286,7 +1370,7 @@ "numoutlets" : 3, "outlettype" : [ "int", "", "" ], "parameter_enable" : 0, - "patching_rect" : [ 626.0, 1155.0, 106.0, 22.0 ], + "patching_rect" : [ 626.0, 1185.0, 106.0, 22.0 ], "presentation" : 1, "presentation_rect" : [ 192.0, 36.0, 106.0, 22.0 ] } @@ -1299,7 +1383,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 517.0, 1191.0, 50.0, 22.0 ], + "patching_rect" : [ 517.0, 1221.0, 50.0, 22.0 ], "text" : "pack i 1" } @@ -1617,7 +1701,7 @@ ] } , - "patching_rect" : [ 517.0, 1237.0, 129.0, 22.0 ], + "patching_rect" : [ 517.0, 1267.0, 129.0, 22.0 ], "saved_object_attributes" : { "description" : "", "digest" : "", @@ -1636,7 +1720,7 @@ "numinlets" : 1, "numoutlets" : 2, "outlettype" : [ "", "" ], - "patching_rect" : [ 517.0, 1267.0, 67.0, 22.0 ], + "patching_rect" : [ 517.0, 1297.0, 67.0, 22.0 ], "save" : [ "#N", "thispatcher", ";", "#Q", "end", ";" ], "text" : "thispatcher" } @@ -1651,7 +1735,7 @@ "numoutlets" : 3, "outlettype" : [ "int", "", "" ], "parameter_enable" : 0, - "patching_rect" : [ 517.0, 1155.0, 106.0, 22.0 ], + "patching_rect" : [ 517.0, 1185.0, 106.0, 22.0 ], "presentation" : 1, "presentation_rect" : [ 16.0, 36.0, 106.0, 22.0 ] } @@ -1664,7 +1748,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 82.0, 1512.0, 49.0, 22.0 ], + "patching_rect" : [ 82.0, 1542.0, 49.0, 22.0 ], "text" : "round 1" } @@ -1676,7 +1760,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 82.0, 1589.0, 135.0, 22.0 ], + "patching_rect" : [ 82.0, 1619.0, 135.0, 22.0 ], "text" : "prepend userFunction 1" } @@ -1688,7 +1772,7 @@ "numinlets" : 2, "numoutlets" : 2, "outlettype" : [ "", "" ], - "patching_rect" : [ 82.0, 1554.0, 75.0, 22.0 ], + "patching_rect" : [ 82.0, 1584.0, 75.0, 22.0 ], "text" : "zl.group 101" } @@ -1699,7 +1783,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 189.0, 1425.0, 93.0, 20.0 ], + "patching_rect" : [ 189.0, 1455.0, 93.0, 20.0 ], "text" : "outputmode list!" } @@ -1711,16 +1795,15 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 411.0, 935.0, 251.0, 47.0 ], + "patching_rect" : [ 411.0, 965.0, 251.0, 47.0 ], "text" : "on opening on new computer, nothing is loaded. start with template dictionary with basic buttons etc available" } } , { "box" : { - "addpoints" : [ 0.0, 62.666666666666664, 0, 230.363894333230689, 0.0, 0, 390.95744680851061, 82.666666666666671, 0, 549.512830503443411, 0.0, 0, 613.342617737485966, 100.0, 0, 859.042553191489333, 0.0, 0, 916.534107099188191, 100.0, 0, 1000.0, 62.666666666666664, 0 ], + "addpoints" : [ 0.0, 0.0, 0, 128.81355932203391, 100.0, 0, 230.363894333230689, 0.0, 0, 390.95744680851061, 82.666666666666671, 0, 549.512830503443411, 0.0, 0, 613.342617737485966, 100.0, 0, 859.042553191489333, 0.0, 0, 916.534107099188191, 100.0, 0, 1000.0, 62.666666666666664, 0 ], "classic_curve" : 1, - "hidden" : 1, "id" : "obj-7", "maxclass" : "function", "numinlets" : 1, @@ -1728,7 +1811,7 @@ "outlettype" : [ "float", "", "", "bang" ], "outputmode" : 1, "parameter_enable" : 0, - "patching_rect" : [ 82.0, 1449.0, 159.5, 52.0 ], + "patching_rect" : [ 82.0, 1479.0, 159.5, 52.0 ], "presentation" : 1, "presentation_rect" : [ 17.0, 60.0, 159.5, 52.0 ], "range" : [ 0.0, 100.0 ], @@ -1743,7 +1826,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 1160.0, 140.0, 95.0, 33.0 ], + "patching_rect" : [ 1160.0, 170.0, 95.0, 33.0 ], "text" : "Lock/unlock for NN usage" } @@ -1755,7 +1838,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 666.0, 15.0, 150.0, 47.0 ], + "patching_rect" : [ 666.0, 45.0, 150.0, 47.0 ], "text" : "If the global transport isn't running, meter based modulators will not move" } @@ -1766,7 +1849,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 411.0, 834.0, 251.0, 20.0 ], + "patching_rect" : [ 411.0, 864.0, 251.0, 20.0 ], "text" : "TODO:" } @@ -1778,7 +1861,7 @@ "numinlets" : 1, "numoutlets" : 5, "outlettype" : [ "preset", "int", "preset", "int", "" ], - "patching_rect" : [ 1044.5, 12.0, 100.0, 40.0 ], + "patching_rect" : [ 1045.0, 42.0, 100.0, 40.0 ], "pattrstorage" : "myStorage", "presentation" : 1, "presentation_rect" : [ 469.0, 178.0, 100.0, 40.0 ] @@ -1792,7 +1875,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 1148.0, 11.5, 134.0, 22.0 ], + "patching_rect" : [ 1148.0, 42.0, 134.0, 22.0 ], "saved_object_attributes" : { "client_rect" : [ 100, 172, 454, 300 ], "parameter_enable" : 0, @@ -1812,12 +1895,12 @@ "numinlets" : 1, "numoutlets" : 3, "outlettype" : [ "", "", "" ], - "patching_rect" : [ 819.0, 748.0, 61.0, 22.0 ], + "patching_rect" : [ 819.0, 778.0, 61.0, 22.0 ], "restore" : [ { "data" : { "enumArrays" : [ [ 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "1", "1", "4", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "2", "2", "2", 2, "2", "2", "2", "2", "2", "2" ], [ "attenuation", "attenuation", "meter", "NONE", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation" ] ], "enumMats" : [ [ [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ "0", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ -0.5, 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] ], [ [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "4 4", "3 4", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ] ] ], - "modArrays" : [ [ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "Noise", "Noise", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO" ], [ "1", "4", "4", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "SawDown", "Custom_1", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine" ], [ "Rand", "Rand", "Rand", "Rand", "Rand", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int." ], [ "metriclarity", "event_length", "meter", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE" ], [ "2s", "4.3hz", "1.3.0", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz" ], [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ "3", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ 0.373500000000035, 0.670100000000275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0.940101725945271, 0.380044180801662, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0.358160652437382, 0.449149571083022, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ] ] + "modArrays" : [ [ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "Noise", "Noise", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO" ], [ "1", "4", "4", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "SawDown", "Custom_1", "Custom_3", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine" ], [ "Rand", "Rand", "Rand", "Rand", "Rand", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int." ], [ "metriclarity", "event_length", "pulse_length", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE" ], [ "2s", "4.3hz", "5s", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz" ], [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ "3", "1", "1.5", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ 0.501999999999999, 0.517199999999974, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0.698985982223206, 0.806437435585266, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0.327266857513609, 0.735965365669296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ] ] } } @@ -1839,7 +1922,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 411.0, 900.0, 252.0, 33.0 ], + "patching_rect" : [ 411.0, 930.0, 252.0, 33.0 ], "text" : "make automatic saving, make automatic load on changing snapshot" } @@ -1851,7 +1934,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 189.0, 1101.0, 150.0, 33.0 ], + "patching_rect" : [ 189.0, 1131.0, 150.0, 33.0 ], "text" : "user definted LFO shape, up to 4 of them" } @@ -1863,7 +1946,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 144.0, 1309.0, 119.0, 22.0 ], + "patching_rect" : [ 144.0, 1339.0, 119.0, 22.0 ], "text" : "prepend userWave 2" } @@ -1885,7 +1968,7 @@ "numoutlets" : 2, "outlettype" : [ "", "" ], "parameter_enable" : 0, - "patching_rect" : [ 144.0, 1252.0, 162.0, 52.0 ], + "patching_rect" : [ 144.0, 1282.0, 162.0, 52.0 ], "peakcolor" : [ 0.498039, 0.498039, 0.498039, 1.0 ], "presentation" : 1, "presentation_rect" : [ 192.0, 60.0, 162.0, 52.0 ], @@ -1902,7 +1985,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 411.0, 878.0, 251.0, 20.0 ], + "patching_rect" : [ 411.0, 908.0, 251.0, 20.0 ], "text" : "add function object support" } @@ -1913,7 +1996,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 411.0, 860.0, 251.0, 20.0 ], + "patching_rect" : [ 411.0, 890.0, 251.0, 20.0 ], "text" : "add random walk" } @@ -1924,7 +2007,7 @@ "maxclass" : "newobj", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 493.0, 59.0, 124.0, 22.0 ], + "patching_rect" : [ 493.0, 89.0, 124.0, 22.0 ], "text" : "s djster-param-values" } @@ -1936,7 +2019,7 @@ "numinlets" : 0, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 22.0, 159.0, 109.0, 22.0 ], + "patching_rect" : [ 22.0, 189.0, 109.0, 22.0 ], "text" : "r djster-param-vals" } @@ -2108,7 +2191,7 @@ ] } , - "patching_rect" : [ 619.0, 59.0, 66.0, 22.0 ], + "patching_rect" : [ 619.0, 89.0, 66.0, 22.0 ], "saved_object_attributes" : { "description" : "", "digest" : "", @@ -2128,7 +2211,7 @@ "numoutlets" : 1, "outlettype" : [ "bang" ], "parameter_enable" : 0, - "patching_rect" : [ 144.0, 1110.0, 24.0, 24.0 ] + "patching_rect" : [ 144.0, 1140.0, 24.0, 24.0 ] } } @@ -2139,7 +2222,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 457.5, 121.0, 56.0, 22.0 ], + "patching_rect" : [ 469.0, 170.0, 56.0, 22.0 ], "text" : "dumpNN" } @@ -2151,7 +2234,7 @@ "numinlets" : 0, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 82.0, 1111.0, 49.0, 22.0 ], + "patching_rect" : [ 82.0, 1141.0, 49.0, 22.0 ], "text" : "r reload" } @@ -2163,7 +2246,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 144.0, 1215.0, 119.0, 22.0 ], + "patching_rect" : [ 144.0, 1245.0, 119.0, 22.0 ], "text" : "prepend userWave 1" } @@ -2178,13 +2261,14 @@ "candicane7" : [ 0.878431, 0.243137, 0.145098, 1.0 ], "candicane8" : [ 0.027451, 0.447059, 0.501961, 1.0 ], "contdata" : 1, + "hidden" : 1, "id" : "obj-33", "maxclass" : "multislider", "numinlets" : 1, "numoutlets" : 2, "outlettype" : [ "", "" ], "parameter_enable" : 0, - "patching_rect" : [ 144.0, 1155.0, 162.0, 52.0 ], + "patching_rect" : [ 144.0, 1185.0, 162.0, 52.0 ], "peakcolor" : [ 0.498039, 0.498039, 0.498039, 1.0 ], "presentation" : 1, "presentation_rect" : [ 16.0, 60.0, 162.0, 52.0 ], @@ -2202,7 +2286,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 22.0, 298.0, 115.0, 22.0 ], + "patching_rect" : [ 22.0, 328.0, 115.0, 22.0 ], "text" : "param 4 meter \"3 4\"" } @@ -2215,7 +2299,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 654.333333333333371, 692.0, 89.0, 35.0 ], + "patching_rect" : [ 654.0, 722.0, 89.0, 35.0 ], "text" : "harmoniclarity 0.503142" } @@ -2228,7 +2312,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 573.666666666666629, 692.0, 85.0, 35.0 ], + "patching_rect" : [ 574.0, 722.0, 85.0, 35.0 ], "text" : "event_length param" } @@ -2241,8 +2325,8 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 490.0, 692.0, 84.0, 35.0 ], - "text" : "metriclarity 41.750827" + "patching_rect" : [ 490.0, 722.0, 84.0, 35.0 ], + "text" : "metriclarity 1.169025" } } @@ -2253,7 +2337,7 @@ "numinlets" : 4, "numoutlets" : 4, "outlettype" : [ "", "", "", "" ], - "patching_rect" : [ 555.0, 659.0, 273.0, 22.0 ], + "patching_rect" : [ 555.0, 689.0, 273.0, 22.0 ], "text" : "routepass metriclarity event_length harmoniclarity" } @@ -2265,7 +2349,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 689.815790414810181, 114.5, 86.0, 114.0 ], + "patching_rect" : [ 690.0, 145.0, 86.0, 114.0 ], "text" : "You can use Hz, seconds, ms, hh:mm:ss, or bars.beats.ticks for the period/frequency" } @@ -2277,7 +2361,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 777.815790414810181, 113.0, 81.0, 114.0 ], + "patching_rect" : [ 778.0, 143.0, 81.0, 114.0 ], "text" : "Min and max must be ADDED to the center value to determine the true bounds. " } @@ -2289,7 +2373,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 934.0, 121.0, 95.0, 114.0 ], + "patching_rect" : [ 934.0, 151.0, 95.0, 114.0 ], "text" : "center values are read only, they must be configured by an upstream value OR loaded from the dictionary" } @@ -2303,7 +2387,7 @@ "numinlets" : 5, "numoutlets" : 5, "outlettype" : [ "", "", "", "", "" ], - "patching_rect" : [ 555.0, 625.0, 81.0, 23.0 ], + "patching_rect" : [ 555.0, 655.0, 81.0, 23.0 ], "text" : "route 1 2 3 4" } @@ -2315,7 +2399,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "bang" ], - "patching_rect" : [ 493.0, 31.0, 55.0, 22.0 ], + "patching_rect" : [ 493.0, 61.0, 55.0, 22.0 ], "text" : "del 1000" } @@ -2327,7 +2411,7 @@ "numinlets" : 0, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 537.0, 104.0, 49.0, 22.0 ], + "patching_rect" : [ 537.0, 134.0, 49.0, 22.0 ], "text" : "r reload" } @@ -2338,7 +2422,7 @@ "maxclass" : "newobj", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 1065.0, 59.0, 51.0, 22.0 ], + "patching_rect" : [ 1065.0, 89.0, 51.0, 22.0 ], "text" : "s reload" } @@ -2349,7 +2433,7 @@ "data" : { "enumArrays" : [ [ 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "1", "1", "4", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "2", "2", "2", 2, "2", "2", "2", "2", "2", "2" ], [ "attenuation", "attenuation", "meter", "NONE", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation" ] ], "enumMats" : [ [ [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ "0", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ -0.5, 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] ], [ [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "4 4", "3 4", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ] ] ], - "modArrays" : [ [ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "Noise", "Noise", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO" ], [ "1", "4", "4", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "SawDown", "Custom_1", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine" ], [ "Rand", "Rand", "Rand", "Rand", "Rand", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int." ], [ "metriclarity", "event_length", "meter", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE" ], [ "2s", "4.3hz", "1.3.0", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz" ], [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ "3", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ 0.373500000000035, 0.670100000000275, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0.940101725945271, 0.380044180801662, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0.358160652437382, 0.449149571083022, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ] ] + "modArrays" : [ [ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "Noise", "Noise", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO" ], [ "1", "4", "4", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "SawDown", "Custom_1", "Custom_3", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine" ], [ "Rand", "Rand", "Rand", "Rand", "Rand", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int." ], [ "metriclarity", "event_length", "pulse_length", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE" ], [ "2s", "4.3hz", "5s", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz" ], [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ "3", "1", "1.5", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ 0.501999999999999, 0.517199999999974, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0.698985982223206, 0.806437435585266, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0.327266857513609, 0.735965365669296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ] ] } } @@ -2359,7 +2443,7 @@ "numinlets" : 2, "numoutlets" : 5, "outlettype" : [ "dictionary", "", "", "", "" ], - "patching_rect" : [ 840.0, 777.0, 166.0, 22.0 ], + "patching_rect" : [ 840.0, 807.0, 166.0, 22.0 ], "saved_attribute_attributes" : { "valueof" : { "parameter_invisible" : 1, @@ -2390,7 +2474,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "bang" ], - "patching_rect" : [ 840.0, 659.0, 22.0, 22.0 ], + "patching_rect" : [ 840.0, 689.0, 22.0, 22.0 ], "text" : "t b" } @@ -2401,7 +2485,7 @@ "maxclass" : "dict.view", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 1015.0, 571.0, 263.0, 384.0 ] + "patching_rect" : [ 1015.0, 601.0, 263.0, 384.0 ] } } @@ -2413,7 +2497,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 29.0, 353.0, 246.0, 64.0 ], + "patching_rect" : [ 29.0, 383.0, 246.0, 64.0 ], "text" : "this param is sent in its already enumerated form, so it will first be turned into a number halfway between the enumeration boundaries" } @@ -2425,7 +2509,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 34.0, 257.0, 115.0, 22.0 ], + "patching_rect" : [ 34.0, 287.0, 115.0, 22.0 ], "text" : "param 4 meter \"4 4\"" } @@ -2437,8 +2521,8 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 598.0, 736.0, 156.0, 22.0 ], - "text" : "meter 3 4" + "patching_rect" : [ 598.0, 766.0, 156.0, 22.0 ], + "text" : "pulse_length 0" } } @@ -2449,7 +2533,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 504.0, 772.0, 101.0, 22.0 ], + "patching_rect" : [ 504.0, 802.0, 101.0, 22.0 ], "text" : "attenuation 200" } @@ -2461,7 +2545,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 432.5, 736.0, 157.0, 22.0 ], + "patching_rect" : [ 433.0, 766.0, 157.0, 22.0 ], "text" : "attenuation 0.783634" } @@ -2473,7 +2557,7 @@ "numinlets" : 4, "numoutlets" : 4, "outlettype" : [ "", "", "", "" ], - "patching_rect" : [ 397.0, 589.0, 177.0, 22.0 ], + "patching_rect" : [ 397.0, 619.0, 177.0, 22.0 ], "text" : "routepass saved NNdata debug" } @@ -2485,7 +2569,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 504.0, 546.5, 268.0, 33.0 ], + "patching_rect" : [ 504.0, 577.0, 268.0, 33.0 ], "text" : "we can only output symbols from jweb, so this turns them into lists" } @@ -2497,7 +2581,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 397.0, 557.5, 71.0, 22.0 ], + "patching_rect" : [ 397.0, 588.0, 71.0, 22.0 ], "text" : "fromsymbol" } @@ -2509,7 +2593,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 858.0, 114.5, 78.0, 100.0 ], + "patching_rect" : [ 858.0, 145.0, 78.0, 100.0 ], "text" : "You can use the `phase` control to phase offset two LFOs of the same frequency" } @@ -2522,7 +2606,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 168.0, 226.0, 217.0, 64.0 ], + "patching_rect" : [ 168.0, 256.0, 217.0, 64.0 ], "text" : "This parameter is not defined by either the Modulators or Enumerators, so it will be passed directly to the output" } @@ -2535,7 +2619,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 168.0, 171.0, 197.0, 64.0 ], + "patching_rect" : [ 168.0, 201.0, 197.0, 64.0 ], "text" : "This parameter is defined in the modulators, and when sent will act as the center value for that LFO" } @@ -2547,7 +2631,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 689.315790414810181, 942.0, 254.0, 154.0 ], + "patching_rect" : [ 689.0, 972.0, 254.0, 154.0 ], "text" : "The operation runs\n\nInput > Denumeration > Modulators > Enumerators > Output\n\nA parameter from the input not established by a Modulator will be passed directly to the Enumerators\n\nLikewise, the Enumerators will pass not established parameters" } @@ -2559,7 +2643,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 31.0, 192.0, 131.0, 22.0 ], + "patching_rect" : [ 31.0, 222.0, 131.0, 22.0 ], "text" : "param 1 metriclarity 40" } @@ -2571,7 +2655,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 22.0, 226.0, 139.0, 22.0 ], + "patching_rect" : [ 22.0, 256.0, 139.0, 22.0 ], "text" : "param 3 attenuation 200" } @@ -2583,7 +2667,7 @@ "numinlets" : 2, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 537.0, 140.0, 108.0, 22.0 ], + "patching_rect" : [ 537.0, 170.0, 108.0, 22.0 ], "text" : "load localStorage2" } @@ -2595,7 +2679,7 @@ "numinlets" : 2, "numoutlets" : 5, "outlettype" : [ "dictionary", "", "", "", "" ], - "patching_rect" : [ 840.0, 683.0, 97.0, 22.0 ], + "patching_rect" : [ 840.0, 713.0, 97.0, 22.0 ], "saved_object_attributes" : { "embed" : 0, "legacy" : 1, @@ -2614,7 +2698,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 384.0, 6.0, 150.0, 33.0 ], + "patching_rect" : [ 467.0, 19.0, 150.0, 33.0 ], "text" : "required due to the asynchronous operation" } @@ -2626,7 +2710,7 @@ "maxclass" : "comment", "numinlets" : 1, "numoutlets" : 0, - "patching_rect" : [ 836.0, 819.0, 150.0, 114.0 ], + "patching_rect" : [ 836.0, 849.0, 150.0, 114.0 ], "text" : "Storage for the matrix. Unfortunately, jsweb dictionary handling isn't great, so we can't use it like a native dict object and need to do this wild hack for usage with pattrstorage" } @@ -2638,22 +2722,10 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "bang" ], - "patching_rect" : [ 397.0, 22.0, 58.0, 22.0 ], + "patching_rect" : [ 397.0, 19.0, 58.0, 22.0 ], "text" : "loadbang" } - } -, { - "box" : { - "id" : "obj-18", - "maxclass" : "message", - "numinlets" : 2, - "numoutlets" : 1, - "outlettype" : [ "" ], - "patching_rect" : [ 397.0, 85.0, 106.0, 22.0 ], - "text" : "readfile lfogui.html" - } - } , { "box" : { @@ -2662,7 +2734,7 @@ "numinlets" : 1, "numoutlets" : 1, "outlettype" : [ "" ], - "patching_rect" : [ 397.0, 180.0, 838.631580829620361, 368.0 ], + "patching_rect" : [ 397.0, 210.0, 838.631580829620361, 368.0 ], "presentation" : 1, "presentation_rect" : [ 16.0, 247.0, 838.631580829620361, 368.0 ], "rendermode" : 0, @@ -2681,6 +2753,15 @@ , { "patchline" : { "destination" : [ "obj-156", 0 ], + "order" : 1, + "source" : [ "obj-101", 0 ] + } + + } +, { + "patchline" : { + "destination" : [ "obj-28", 1 ], + "order" : 0, "source" : [ "obj-101", 0 ] } @@ -2744,7 +2825,7 @@ , { "patchline" : { "destination" : [ "obj-119", 0 ], - "midpoints" : [ 167.5, 1434.0, 69.0, 1434.0, 69.0, 1541.0, 91.5, 1541.0 ], + "midpoints" : [ 167.5, 1464.0, 69.0, 1464.0, 69.0, 1571.0, 91.5, 1571.0 ], "source" : [ "obj-124", 1 ] } @@ -2773,7 +2854,7 @@ , { "patchline" : { "destination" : [ "obj-142", 0 ], - "midpoints" : [ 381.5, 1434.0, 283.0, 1434.0, 283.0, 1541.0, 305.5, 1541.0 ], + "midpoints" : [ 381.5, 1464.0, 283.0, 1464.0, 283.0, 1571.0, 305.5, 1571.0 ], "source" : [ "obj-139", 1 ] } @@ -2795,6 +2876,15 @@ , { "patchline" : { "destination" : [ "obj-154", 0 ], + "order" : 1, + "source" : [ "obj-141", 0 ] + } + + } +, { + "patchline" : { + "destination" : [ "obj-19", 1 ], + "order" : 0, "source" : [ "obj-141", 0 ] } @@ -2823,7 +2913,7 @@ , { "patchline" : { "destination" : [ "obj-147", 0 ], - "midpoints" : [ 595.5, 1434.0, 497.0, 1434.0, 497.0, 1541.0, 519.5, 1541.0 ], + "midpoints" : [ 595.5, 1464.0, 497.0, 1464.0, 497.0, 1571.0, 519.5, 1571.0 ], "source" : [ "obj-144", 1 ] } @@ -2873,7 +2963,7 @@ , { "patchline" : { "destination" : [ "obj-152", 0 ], - "midpoints" : [ 809.5, 1434.0, 711.0, 1434.0, 711.0, 1541.0, 733.5, 1541.0 ], + "midpoints" : [ 809.5, 1464.0, 711.0, 1464.0, 711.0, 1571.0, 733.5, 1571.0 ], "source" : [ "obj-149", 1 ] } @@ -2940,13 +3030,6 @@ "source" : [ "obj-16", 0 ] } - } -, { - "patchline" : { - "destination" : [ "obj-2", 0 ], - "source" : [ "obj-18", 0 ] - } - } , { "patchline" : { @@ -2957,16 +3040,16 @@ } , { "patchline" : { - "destination" : [ "obj-18", 0 ], - "order" : 1, + "destination" : [ "obj-37", 0 ], + "order" : 0, "source" : [ "obj-20", 0 ] } } , { "patchline" : { - "destination" : [ "obj-37", 0 ], - "order" : 0, + "destination" : [ "obj-44", 0 ], + "order" : 1, "source" : [ "obj-20", 0 ] } @@ -2984,6 +3067,13 @@ "source" : [ "obj-26", 1 ] } + } +, { + "patchline" : { + "destination" : [ "obj-31", 0 ], + "source" : [ "obj-27", 2 ] + } + } , { "patchline" : { @@ -3005,6 +3095,20 @@ "source" : [ "obj-3", 0 ] } + } +, { + "patchline" : { + "destination" : [ "obj-1", 0 ], + "source" : [ "obj-31", 0 ] + } + + } +, { + "patchline" : { + "destination" : [ "obj-57", 0 ], + "source" : [ "obj-32", 0 ] + } + } , { "patchline" : { @@ -3073,6 +3177,13 @@ "source" : [ "obj-43", 0 ] } + } +, { + "patchline" : { + "destination" : [ "obj-32", 0 ], + "source" : [ "obj-44", 0 ] + } + } , { "patchline" : { @@ -3154,7 +3265,7 @@ , { "patchline" : { "destination" : [ "obj-139", 0 ], - "midpoints" : [ 91.5, 1362.0, 129.0, 1362.0, 129.0, 1398.0, 305.5, 1398.0 ], + "midpoints" : [ 91.5, 1392.0, 129.0, 1392.0, 129.0, 1428.0, 305.5, 1428.0 ], "order" : 8, "source" : [ "obj-54", 0 ] } @@ -3163,7 +3274,7 @@ , { "patchline" : { "destination" : [ "obj-144", 0 ], - "midpoints" : [ 91.5, 1362.0, 129.0, 1362.0, 129.0, 1398.0, 519.5, 1398.0 ], + "midpoints" : [ 91.5, 1392.0, 129.0, 1392.0, 129.0, 1428.0, 519.5, 1428.0 ], "order" : 5, "source" : [ "obj-54", 0 ] } @@ -3172,7 +3283,7 @@ , { "patchline" : { "destination" : [ "obj-149", 0 ], - "midpoints" : [ 91.5, 1362.0, 129.0, 1362.0, 129.0, 1398.0, 733.5, 1398.0 ], + "midpoints" : [ 91.5, 1392.0, 129.0, 1392.0, 129.0, 1428.0, 733.5, 1428.0 ], "order" : 2, "source" : [ "obj-54", 0 ] } @@ -3225,6 +3336,13 @@ "source" : [ "obj-54", 0 ] } + } +, { + "patchline" : { + "destination" : [ "obj-2", 0 ], + "source" : [ "obj-57", 0 ] + } + } , { "patchline" : { @@ -3424,7 +3542,14 @@ "inherited_shortname" : 1 } , - "dependency_cache" : [ ], + "dependency_cache" : [ { + "name" : "myStorage.json", + "bootpath" : "~/Documents/Max 8/Library/max-mod-enum", + "patcherrelativepath" : ".", + "type" : "JSON", + "implicit" : 1 + } + ], "autosave" : 0 } diff --git a/lfogui.js b/lfogui.js index 87172c9..c14bb67 100644 --- a/lfogui.js +++ b/lfogui.js @@ -87,11 +87,9 @@ function MasterLfoHandler(){ for (let i=0; i { //list of 101 points between 0-100 let data = {points, index}; diff --git a/modulators.js b/modulators.js index bf53a6f..fb7c844 100644 --- a/modulators.js +++ b/modulators.js @@ -65,12 +65,12 @@ function indexUserWave(phase, index, userDefinedWaves){ return parseFloat(userDefinedWaves[index][Math.floor(phase * 50)]) / 127; } -//add +//TODO doesn't work well yet function indexUserFunction(phase, index, userDefinedFunctions){ - return parseFloat(userDefinedFunctions[index][Math.floor(phase * 110)]) / 127; + return parseFloat(userDefinedFunctions[index][Math.floor(phase * 101)]) / 127; } -function indexWave(type, phase, userDefinedWaves){ +function indexWave(type, phase, userDefinedWaves, userDefinedFunctions, userDefinedTypes){ switch (type){ case "Sine": return (Math.sin(phase * Math.PI * 2) / 2) + 0.5; @@ -82,15 +82,14 @@ function indexWave(type, phase, userDefinedWaves){ return phase > 0.5? (1-phase) * 2 : phase * 2; case "Square": return +(phase > 0.5); - //TODO in Max, user chooses whether to use freedraw (wave, 0) or function (1) case "Custom_1": - return indexUserDefinedTypes[0] == 0 ? indexUserWave(phase, 1, userDefinedWaves) : indexUserFunction(phase, 1, userDefinedFunctions); + return userDefinedTypes[0] == 0 ? indexUserWave(phase, 1, userDefinedWaves) : indexUserFunction(phase, 1, userDefinedFunctions); case "Custom_2": - return indexUserDefinedTypes[1] == 0 ? indexUserWave(phase, 2, userDefinedWaves) : indexUserFunction(phase, 2, userDefinedFunctions); + return userDefinedTypes[1] == 0 ? indexUserWave(phase, 2, userDefinedWaves) : indexUserFunction(phase, 2, userDefinedFunctions); case "Custom_3": - return indexUserDefinedTypes[2] == 0 ? indexUserWave(phase, 3, userDefinedWaves) : indexUserFunction(phase, 3, userDefinedFunctions); + return userDefinedTypes[2] == 0 ? indexUserWave(phase, 3, userDefinedWaves) : indexUserFunction(phase, 3, userDefinedFunctions); case "Custom_4": - return indexUserDefinedTypes[3] == 0 ? indexUserWave(phase, 4, userDefinedWaves) : indexUserFunction(phase, 4, userDefinedFunctions); + return userDefinedTypes[3] == 0 ? indexUserWave(phase, 4, userDefinedWaves) : indexUserFunction(phase, 4, userDefinedFunctions); } } @@ -129,8 +128,7 @@ function operateLFO(center, inst, timeBaseStr, min, max, waveType, phaseArr, pha phase = (currTime * timeBase + parseFloat(phaseArr[phaseIndex])) % 1.00; else if (phaseType === PhaseTypes.MUSICAL) phase = (maxTicks % timeBase) / timeBase; - //TODO check if freedraw wave or function is used... - let unscaled = indexWave(waveType, phase, userDefinedWaves); + let unscaled = indexWave(waveType, phase, userDefinedWaves, userDefinedFunctions, userDefinedTypes); syncDisplay(inst, name, unscaled); return unscaled * amp + center + parseFloat(min); @@ -158,9 +156,6 @@ function operateNoise(center, inst, timeBaseStr, min, max, waveType, phaseArr, i phase = (currTime * timeBase + parseFloat(phaseArr[index])) % 1.00; else if (phaseType === PhaseTypes.MUSICAL) phase = (maxTicks % timeBase) / timeBase; - - - if (noiseData.cachedNoiseValueArr1[index] == 0 || noiseData.lastPhaseArr[index] > phase){ // occurs if the phase reset to 0 or at the very start @@ -175,13 +170,11 @@ function operateNoise(center, inst, timeBaseStr, min, max, waveType, phaseArr, i noiseData.lastPhaseArr[index] = phase; noiseData.setLastPhaseArr(noiseData.lastPhaseArr); - //let unscaled = (noiseData.cachedNoiseValueArr[index][1] - noiseData.cachedNoiseValueArr[index][0]) * sinePhase + noiseData.cachedNoiseValueArr[index][0]; let unscaled = interpolateNoise(noiseType, noiseData.cachedNoiseValueArr1[index], noiseData.cachedNoiseValueArr2[index], phase); syncDisplay(inst, name, unscaled); return unscaled * amp + center + parseFloat(min); - } function interpolateNoise(type, cachedVal1, cachedVal2, phase){ diff --git a/myStorage.json b/myStorage.json new file mode 100644 index 0000000..f17a7f7 --- /dev/null +++ b/myStorage.json @@ -0,0 +1,25 @@ +{ + "pattrstorage" : { + "name" : "myStorage", + "slots" : { + "1" : { + "id" : 1, + "data" : { + "dicto" : [ { + "data" : { + "enumArrays" : [ [ 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "1", "1", "4", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "2", "2", "2", 2, "2", "2", "2", "2", "2", "2" ], [ "attenuation", "attenuation", "meter", "NONE", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation", "attenuation" ] ], + "enumMats" : [ [ [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ "0", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ -0.5, 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ], [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] ], [ [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "4 4", "3 4", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ], [ "param", "param", "param", "param", "param", "param", "param", "param", "param", "param" ] ] ], + "modArrays" : [ [ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ "Noise", "Noise", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO", "LFO" ], [ "1", "4", "4", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "SawDown", "Custom_1", "Custom_3", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine", "Sine" ], [ "Rand", "Rand", "Rand", "Rand", "Rand", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int.", "Sine Int." ], [ "metriclarity", "event_length", "pulse_length", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE", "NONE" ], [ "2s", "4.3hz", "4.8hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz", "1hz" ], [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ "3", "1", "1.5", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1" ], [ "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0" ], [ 0.600000000000001, 0.160000000000025, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0.954455089059444, 0.525043204441318, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ], [ 0.060893203710041, 0.221410648105745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ] ] + } + + } + ] + } + + } + + } + + } + +}