nodeskini 1.0.5 → 1.0.7

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 (179) hide show
  1. package/blocklySkini/blocklySkini.html +5 -1
  2. package/blocklySkini/scripts/hiphop_blocks.js +5 -6
  3. package/client/clientListe/clientListe.js +11 -0
  4. package/client/clientListe/clientListebundle.js +1755 -1909
  5. package/client/controleurHH/controleurHH.html +4 -0
  6. package/client/queueViewer/queue.html +34 -0
  7. package/client/queueViewer/queue.js +187 -0
  8. package/client/queueViewer/style.css +26 -0
  9. package/client/score/parto1.js +14 -11
  10. package/client/score/parto1bundle.js +55 -33
  11. package/client/score/score.html +8 -7
  12. package/doc/Doc Skini Node english.pdf +0 -0
  13. package/doc/Mode d'emploi Skini Node.pdf +0 -0
  14. package/doc/Tuto Skini.pdf +0 -0
  15. package/doc/quickstart.pdf +0 -0
  16. package/myReact/orchestrationHH.hh.js +147 -1843
  17. package/myReact/orchestrationHH.mjs +50 -231
  18. package/myReact/orchestrationHH.mjs.map +1 -1
  19. package/package.json +11 -8
  20. package/pieces/tutos/demoAbleton.csv +21 -0
  21. package/pieces/tutos/demoAbleton.js +100 -0
  22. package/pieces/tutos/demoAbleton.xml +180 -0
  23. package/pieces/tutos/demoHH.js +99 -0
  24. package/pieces/tutos/demoHH.xml +184 -0
  25. package/pieces/tutos/demoHHwait.js +100 -0
  26. package/pieces/tutos/demoHHwait.xml +175 -0
  27. package/pieces/tutos/tuto.csv +10 -0
  28. package/pieces/tutos/tuto.csv.good +1 -0
  29. package/pieces/tutos/tuto1.js +105 -0
  30. package/pieces/tutos/tuto1.xml +147 -0
  31. package/pieces/tutos/tuto10.back.js +106 -0
  32. package/pieces/tutos/tuto10.js +107 -0
  33. package/pieces/tutos/tuto10.xml +199 -0
  34. package/pieces/tutos/tuto11.js +111 -0
  35. package/pieces/tutos/tuto11.xml +124 -0
  36. package/pieces/tutos/tuto12.js +91 -0
  37. package/pieces/tutos/tuto12.xml +258 -0
  38. package/pieces/tutos/tuto2.back.js +106 -0
  39. package/pieces/tutos/tuto2.js +95 -0
  40. package/pieces/tutos/tuto2.xml +94 -0
  41. package/pieces/tutos/tuto3-2.js +105 -0
  42. package/pieces/tutos/tuto3-2.xml +96 -0
  43. package/pieces/tutos/tuto3.js +97 -0
  44. package/pieces/tutos/tuto3.xml +49 -0
  45. package/pieces/tutos/tuto4.js +107 -0
  46. package/pieces/tutos/tuto4.xml +106 -0
  47. package/pieces/tutos/tuto5.js +109 -0
  48. package/pieces/tutos/tuto5.xml +42 -0
  49. package/pieces/tutos/tuto6.js +105 -0
  50. package/pieces/tutos/tuto6.xml +26 -0
  51. package/pieces/tutos/tuto7.js +107 -0
  52. package/pieces/tutos/tuto7.xml +65 -0
  53. package/pieces/tutos/tuto8.js +105 -0
  54. package/pieces/tutos/tuto8.xml +76 -0
  55. package/pieces/tutos/tuto9.js +107 -0
  56. package/pieces/tutos/tuto9.xml +90 -0
  57. package/pieces/tutos/tutoAwait.js +111 -0
  58. package/pieces/tutos/tutoAwait.xml +171 -0
  59. package/pieces/tutos/tutoDoubleEmission.js +93 -0
  60. package/pieces/tutos/tutoDoubleEmission.xml +65 -0
  61. package/pieces/tutos/tutoESP32.js +104 -0
  62. package/pieces/tutos/tutoESP32.xml +246 -0
  63. package/pieces/tutos/tutoGame.js +126 -0
  64. package/pieces/tutos/tutoGame.xml +109 -0
  65. package/pieces/tutos/tutoGroups1.js +111 -0
  66. package/pieces/tutos/tutoGroups1.xml +137 -0
  67. package/pieces/tutos/tutoGroups2.js +97 -0
  68. package/pieces/tutos/tutoGroups2.xml +103 -0
  69. package/pieces/tutos/tutoGroups3.js +111 -0
  70. package/pieces/tutos/tutoGroups3.xml +128 -0
  71. package/pieces/tutos/tutoGroups4.js +111 -0
  72. package/pieces/tutos/tutoGroups4.xml +84 -0
  73. package/pieces/tutos/tutoIZ.js +95 -0
  74. package/pieces/tutos/tutoIZ.xml +135 -0
  75. package/pieces/tutos/tutoIf.js +111 -0
  76. package/pieces/tutos/tutoIf.xml +126 -0
  77. package/pieces/tutos/tutoMidi.js +126 -0
  78. package/pieces/tutos/tutoMidi.xml +62 -0
  79. package/pieces/tutos/tutoOS.js +121 -0
  80. package/pieces/tutos/tutoOSC.js +109 -0
  81. package/pieces/tutos/tutoOSC.xml +223 -0
  82. package/pieces/tutos/tutoOSCJonathan.js +94 -0
  83. package/pieces/tutos/tutoOSCJonathan.xml +312 -0
  84. package/pieces/tutos/tutoPatternInGroup.js +109 -0
  85. package/pieces/tutos/tutoPatternInGroup.xml +116 -0
  86. package/pieces/tutos/tutoRandomBlock.js +129 -0
  87. package/pieces/tutos/tutoRandomBlock.xml +194 -0
  88. package/pieces/tutos/tutoSuspend.js +107 -0
  89. package/pieces/tutos/tutoSuspend.xml +139 -0
  90. package/pieces/tutos/tutoSustain.js +107 -0
  91. package/pieces/tutos/tutoSustain.xml +109 -0
  92. package/pieces/tutos/tutoTank.csv +9 -0
  93. package/pieces/tutos/tutoTank.js +100 -0
  94. package/pieces/tutos/tutoTank.xml +326 -0
  95. package/pieces/tutos/tutoTestAll.csv +11 -0
  96. package/pieces/tutos/tutoTestAll.hh.js +401 -0
  97. package/pieces/tutos/tutoTestAll.js +101 -0
  98. package/pieces/tutos/tutoTestAll.xml +866 -0
  99. package/serveur/OSCandMidi.mjs +27 -3
  100. package/serveur/controleDAW.mjs +2 -1
  101. package/serveur/groupeClientsSons.mjs +27 -3
  102. package/serveur/ipConfig.json +2 -2
  103. package/serveur/skiniParametres.js +55 -10
  104. package/serveur/utilsSkini.mjs +1 -1
  105. package/serveur/websocketServer.mjs +14 -4
  106. package/skini.mjs +4 -0
  107. package/blocklySkini/archive/blocklyControleur.js +0 -87
  108. package/blocklySkini/archive/blocklySkini.js +0 -84
  109. package/blocklySkini/archive/blocklyhop.js +0 -75
  110. package/blocklySkini/archive/clientControleurBlocly.js +0 -170
  111. package/blocklySkini/archive/index.html +0 -76
  112. package/blocklySkini/archive/testHHsuspend.txt +0 -89
  113. package/blocklySkini/archive/testHHtrap.txt +0 -262
  114. package/blocklySkini/archive/testOrchestration.txt +0 -177
  115. package/blocklySkini/archive/testOrchestration.xml +0 -447
  116. package/blocklySkini/archive/testOrchestration2.xml +0 -456
  117. package/blocklySkini/scripts/hiphop_blocks.old.js +0 -3010
  118. package/blocklySkini/scripts/hiphop_blocks11-2025.js +0 -6104
  119. package/myReact/archive/Nodeemitvaluedlocal1.hh.js +0 -52
  120. package/myReact/archive/abort-parNode.js +0 -79
  121. package/myReact/archive/abroNode.js +0 -169
  122. package/myReact/archive/abroNode2.js +0 -80
  123. package/myReact/archive/atom.compile.hh.js +0 -52
  124. package/myReact/archive/await-countNode.js +0 -67
  125. package/myReact/archive/await-nowvalNode.js +0 -44
  126. package/myReact/archive/callHH.js +0 -96
  127. package/myReact/archive/emit-if2.hh.compiled.js +0 -113
  128. package/myReact/archive/every1Node.js +0 -35
  129. package/myReact/archive/if-runNode.js +0 -74
  130. package/myReact/archive/if1Node.js +0 -43
  131. package/myReact/archive/makeawait.js +0 -0
  132. package/myReact/archive/myReact.old.js +0 -684
  133. package/myReact/archive/orchestration.js +0 -281
  134. package/myReact/archive/orchestration1.js +0 -132
  135. package/myReact/archive/orchestration1.xml +0 -465
  136. package/myReact/archive/orchestration2.js +0 -161
  137. package/myReact/archive/orchestrationHH.mano.js +0 -280
  138. package/myReact/archive/orchestrationHHTest.js +0 -428
  139. package/myReact/archive/orchestrationHHTest.xml +0 -234
  140. package/myReact/archive/orchestrationHHTestRun.js +0 -104
  141. package/myReact/archive/orchestrationHHTestRun.xml +0 -34
  142. package/myReact/archive/orchestrationTest0.js +0 -178
  143. package/myReact/archive/orchestrationTest1.js +0 -181
  144. package/myReact/archive/orchestrationTest2.js +0 -281
  145. package/myReact/archive/run3pointsNode.js +0 -59
  146. package/myReact/archive/runNode.js +0 -123
  147. package/myReact/archive/runNode2.js +0 -91
  148. package/myReact/archive/testAwait1.js +0 -141
  149. package/myReact/archive/testAwait1.xml +0 -86
  150. package/myReact/archive/testEvery1.js +0 -122
  151. package/myReact/archive/testEvery1.xml +0 -79
  152. package/myReact/archive/testHH1.js +0 -135
  153. package/myReact/archive/testHH1.xml +0 -86
  154. package/myReact/archive/testHH1revu.js +0 -104
  155. package/myReact/archive/testHH2.js +0 -122
  156. package/myReact/archive/testHH2.xml +0 -79
  157. package/myReact/archive/testHH3.js +0 -130
  158. package/myReact/archive/testHH3.xml +0 -86
  159. package/myReact/archive/testHHabort.js +0 -121
  160. package/myReact/archive/testHHabort.xml +0 -83
  161. package/myReact/archive/testMakeawait.js +0 -202
  162. package/myReact/archive/testRun1.js +0 -168
  163. package/myReact/archive/testRun1.xml +0 -142
  164. package/myReact/archive/titi.js +0 -28
  165. package/myReact/archive/titi.xml +0 -110
  166. package/myReact/archive/toto.js +0 -73
  167. package/myReact/archive/toto.xml +0 -198
  168. package/myReact/archive/trap-await-parallelNode.js +0 -123
  169. package/myReact/inutiles/hiver2022.xml +0 -804
  170. package/myReact/inutiles/hopeNode.xml +0 -459
  171. package/myReact/inutiles/mars2022.xml +0 -871
  172. package/myReact/inutiles/mystique1.xml +0 -318
  173. package/myReact/inutiles/mystiqueOSC.xml +0 -277
  174. package/myReact/inutiles/opus5Node.xml +0 -1271
  175. package/myReact/inutiles/opus5NodeLinux.xml +0 -1241
  176. package/myReact/inutiles/orchestrationHH.xml +0 -541
  177. package/myReact/inutiles/orchestrationHH2.xml +0 -547
  178. package/myReact/inutiles/testHH.xml +0 -95
  179. package/myReact/inutiles/trouveLaPercuTenor.xml +0 -349
@@ -1,181 +0,0 @@
1
- // Programme en myReact
2
-
3
- var violon1, violon2, violon3, tick, stopTankViolon, groupePercuON, stopTankPiano, groupeTrompetteON, groupeTrompetteOFF, groupePercuOFF, tankViolon, tankPiano, piano1, piano2, piano3;
4
-
5
- var mr = require("./myReact.js");
6
- var gcs = require("../serveur/autocontroleur/groupeClientsSons.js");
7
-
8
- var debug1 = true;
9
- var debug = false;
10
-
11
- // A mettre dans Blockly
12
- var skini;
13
- function setSkini(skiniMaster){
14
- skini = skiniMaster;
15
- //console.log("******* orchestration: setSkini:", skini);
16
- }
17
- exports.setSkini = setSkini;
18
-
19
- mr.createSignal("stopTankViolon", 0);
20
- mr.createSignal("stopTankPiano", 0);
21
-
22
- // A mettre dans Blockly
23
- mr.createSignal("tick", 0);
24
- mr.createSignal("DAWON", 0);
25
-
26
- // Debut de module
27
- tankViolon = [
28
- // Debut de abort
29
- mr._abort("stopTankViolon",1,
30
- [
31
- mr._atom( ()=> {console.log('Attend Percu1');} ),
32
- mr._await("Percu1", 1),
33
-
34
- mr._atom( ()=> {console.log('Attend Percu2');} ),
35
- mr._await("Percu2", 1),
36
-
37
- mr._atom( ()=> {console.log('Attend Percu3');} ),
38
- mr._await("Percu3", 1),
39
- ]
40
- ),
41
- mr._atom( ()=> {console.log('Tank Violon tué !');} ),
42
- ];
43
-
44
- // Debut de module
45
- tankPiano = [
46
- // Debut de abort
47
- mr._abort("stopTankPiano",1,
48
- [
49
- mr._atom( ()=> {console.log('Attend Percu4');} ),
50
- mr._await("Percu4", 1),
51
-
52
- mr._atom( ()=> {console.log('Attend Percu5');} ),
53
- mr._await("Percu5", 1),
54
-
55
- mr._atom( ()=> {console.log('Attend Percu6');} ),
56
- mr._await("Percu6", 1),
57
- ]
58
- ),
59
- mr._atom( ()=> {console.log('Tank Piano tué !');} ),
60
- ];
61
-
62
-
63
- var instructions = [
64
- mr._atom( ()=> { gcs.setComputeScorePolicy(2); } ),
65
- mr._atom( ()=> { gcs.setComputeScoreClass(1); } ),
66
-
67
- mr._abort("stop",1,
68
- [
69
- mr._await("start", 1),
70
- mr._par(
71
- [
72
- mr._every("tick",1,
73
- [
74
- mr._atom( ()=> {console.log('orchestration: tick 1');} ),
75
- ]
76
- ),
77
- mr._seq(
78
- [
79
- mr._atom( ()=> {console.log('Début orchestration 1');} ),
80
- mr._emit("groupe1OUT", [true, 255]),
81
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(255,"groupe1",true);}),
82
- mr._await("tick", 5),
83
- mr._atom( ()=> {console.log('Après 5 ticks');} ),
84
-
85
- // Debut de par
86
- mr._par(
87
- [
88
- // Debut de par
89
- mr._par(
90
- [
91
- // Debut de run module
92
- mr._run(tankViolon),
93
-
94
- // Debut de seq
95
- mr._seq(
96
- [
97
- mr._await("tick", 5),
98
- mr._atom( ()=> {console.log('Après 5 ticks violon');} ),
99
- mr._emit("stopTankViolon",0),
100
- ]
101
- ),
102
- ]
103
- ),
104
-
105
- // Debut de par
106
- mr._par(
107
- [
108
- // Debut de run module
109
- mr._run(tankPiano),
110
- // Debut de seq
111
- mr._seq(
112
- [
113
- mr._await("tick", 5),
114
- mr._atom( ()=> {console.log('Après 5 ticks piano');} ),
115
- mr._emit("stopTankPiano",0),
116
- ]
117
- ),
118
- ]
119
- ),
120
- ]
121
- ),
122
-
123
- mr._emit("groupe1OUT",[false, 255]),
124
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(255,"groupe1",false);}),
125
-
126
- mr._emit("groupe2OUT",[true, 255]),
127
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(255,"groupe2",true);}),
128
-
129
- mr._await("tick", 5),
130
-
131
- mr._emit("groupe2OUT",[false, 255]),
132
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(255,"groupe2",false);}),
133
-
134
- mr._atom( ()=> {console.log('Fin orchestration');} ),
135
- mr._atom( ()=> { gcs.cleanChoiceList(255); } ),
136
- mr._atom( ()=> { gcs.alertInfoScoreON('Fin orchestration'); } ),
137
- ]
138
- ),
139
- mr._every("tick",1,
140
- [
141
- mr._atom( ()=> {console.log('orchestration: tick 2');} ),
142
- ]
143
- ),
144
- mr._every("groupe1OUT",1,
145
- [
146
- mr._atom( ()=> {console.log('orchestration: groupe1OUT 2');} ),
147
- ]
148
- ),
149
- ]
150
- ),
151
- ]
152
- ),
153
- mr._atom( ()=> {console.log('Orchestration Stop');} ),
154
- mr._atom( ()=> { gcs.cleanChoiceList(255); } ),
155
- mr._atom( ()=> { gcs.alertInfoScoreON('Orchestration Stop'); } ),
156
- ];
157
-
158
- // A mettre dans Blockly
159
- var prog = mr.createModule(instructions);
160
-
161
- // A mettre dans Blockly
162
- function runProg(){
163
- // mr.printProgram(prog, false);
164
- mr.runProg(prog);
165
- //skini.test1("**** depuis orchestration");
166
- }
167
- exports.runProg = runProg;
168
-
169
- // A mettre dans Blockly
170
- function createListener(signal, action){
171
- if(debug) console.log("orchestration: createListener: ", signal);
172
- mr.createSignal(signal, 0);
173
- mr.addEventListener(signal, action);
174
- }
175
- exports.createListener = createListener;
176
-
177
- // A mettre dans Blockly
178
- function activateSignal(signal, val){
179
- mr.activateSignal(signal, val);
180
- }
181
- exports.activateSignal = activateSignal;
@@ -1,281 +0,0 @@
1
- 'use strict'
2
- // Programme en myReact
3
-
4
- var violon1, violon2, violon3, tick, stopTankViolon, groupePercuON, stopTankPiano, groupeTrompetteON, groupeTrompetteOFF, groupePercuOFF, tankViolon, tankPiano, piano1, piano2, piano3;
5
-
6
- var mr = require("./myReact.js");
7
- var gcs = require("../serveur/autocontroleur/groupeClientsSons.js");
8
-
9
- var debug1 = true;
10
- var debug = false;
11
-
12
- // A mettre dans Blockly pour des retours de l'orchestration
13
- // mais il est mieux de passer par gcs ou atom
14
- var skini;
15
- function setSkini(skiniMaster){
16
- skini = skiniMaster;
17
- }
18
- exports.setSkini = setSkini;
19
-
20
- // A mettre dans Blockly pour les signaux locaux
21
- mr.createSignal("tick", 0);
22
- mr.createSignal("startTimer", 0);
23
- mr.createSignal("stopTimer", 0);
24
-
25
- // On utilise un loop pour que timer reste actif
26
- // le run au sens HH n'existe pas, quand on appelle
27
- // un module c'est toujours le même et pas un nouvel objet
28
- // Le module ici n'est qu'une facilité de présentation du code.
29
- var timer = [
30
- mr._loop([
31
- mr._seq([
32
- mr._await("startTimer", 1),
33
- mr._atom( ()=> { gcs.alertInfoScoreON('Il reste 10s pour jouer'); } ),
34
- mr._atom( ()=> {console.log('Début timer');} ),
35
- mr._await("tick", 2),
36
- mr._atom( ()=> { gcs.alertInfoScoreON('8s pour jouer'); } ),
37
- mr._await("tick", 2),
38
- mr._atom( ()=> { gcs.alertInfoScoreON('6s pour jouer'); } ),
39
- mr._await("tick", 2),
40
- mr._atom( ()=> { gcs.alertInfoScoreON('4s pour jouer'); } ),
41
- mr._await("tick", 2),
42
- mr._atom( ()=> { gcs.alertInfoScoreON('2s pour jouer'); } ),
43
- mr._await("tick", 2),
44
- mr._atom( ()=> { gcs.alertInfoScoreOFF(); } ),
45
- mr._emit("stopTimer", 0),
46
- ]),
47
- ]),
48
- ];
49
-
50
- var timeCounter = 0;
51
-
52
- var instructions = [
53
- mr._abort("stop",1,
54
- [
55
- mr._par(
56
- [
57
- mr._every("tick", 1,
58
- [
59
- mr._atom( ()=> {
60
- timeCounter++;
61
- gcs.setTickOnControler(timeCounter);
62
- }
63
- ),
64
- ]
65
- ),
66
- mr._run(timer),
67
- mr._seq(
68
- [
69
- mr._await("start", 1),
70
-
71
- mr._atom( ()=> { gcs.setTimerDivision(2); } ),
72
- mr._atom( ()=> { gcs.setpatternListLength([5, 255]); } ),
73
-
74
- mr._atom( ()=> { gcs.alertInfoScoreON('Duel trouve la percu'); } ),
75
- mr._await("tick", 4),
76
-
77
- mr._atom( ()=> { gcs.alertInfoScoreOFF(); } ),
78
- mr._atom( ()=> { gcs.setComputeScorePolicy(2); } ),
79
-
80
- // djembé ---------------------------------------
81
- mr._atom( ()=> { gcs.setComputeScoreClass(5); } ),
82
-
83
- mr._emit("djembeOUT", [true, 2]),
84
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(2,"djembeOUT",true);}),
85
-
86
- // Séquence djembé pour groupe 0
87
- mr._atom( ()=> { gcs.alertInfoScoreON(' Djembe pour groupe Skini 0 '); } ),
88
-
89
- mr._emit("groupe5OUT", [true, 0]),
90
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(0,"groupe5OUT",true);}),
91
-
92
- mr._await("groupe5IN", 1),
93
- mr._atom( ()=> { console.log("groupe5IN djembé"); } ),
94
-
95
- /* mr._emit("startTimer", 0),
96
- mr._abort("stopTimer", 1 ,
97
- [
98
- mr._loop(
99
- [
100
- mr._await("groupe5IN", 1),
101
- mr._atom( ()=> { console.log("groupe5IN"); } ),
102
- ]
103
- ),
104
- ]
105
- ),*/
106
-
107
- mr._emit("startTimer", 0),
108
- mr._await("stopTimer", 1),
109
-
110
- mr._emit("groupe5OUT", [false, 0]),
111
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(0,"groupe5OUT",false);}),
112
-
113
- mr._atom( ()=> { gcs.cleanChoiceList(0); } ),
114
-
115
- // Séquence djembé pour groupe 1
116
- mr._atom( ()=> { gcs.alertInfoScoreON(' Djembe pour groupe Skini 1 '); } ),
117
-
118
- mr._emit("groupe6OUT", [true, 1]),
119
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(1,"groupe6OUT",true);}),
120
-
121
- mr._await("groupe6IN", 1),
122
- mr._atom( ()=> { console.log("groupe6IN djembé"); } ),
123
-
124
- /* mr._emit("startTimer", 0),
125
- mr._abort("stopTimer", 1 ,
126
- [
127
- mr._loop(
128
- [
129
- mr._await("groupe5IN", 1),
130
- mr._atom( ()=> { console.log("groupe5IN"); } ),
131
- ]
132
- ),
133
- ]
134
- ),
135
- */
136
- mr._emit("startTimer", 0),
137
- mr._await("stopTimer", 1),
138
-
139
- mr._emit("groupe6OUT", [false, 1]),
140
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(1,"groupe6OUT",false);}),
141
-
142
- mr._atom( ()=> { gcs.cleanChoiceList(1); } ),
143
-
144
- // Fin djembé
145
- mr._emit("djembeOUT", [false, 2]),
146
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(2,"djembeOUT",false);}),
147
- mr._atom( ()=> { gcs.cleanQueues(); } ),
148
-
149
- // derwish -------------------------------------------
150
- mr._atom( ()=> { gcs.setComputeScoreClass(1); } ),
151
-
152
- mr._emit("derwishOUT", [true, 2]),
153
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(2,"derwishOUT",true);}),
154
-
155
- // Séquence derwish pour groupe 0
156
- mr._atom( ()=> { gcs.alertInfoScoreON(' derwish pour groupe Skini 0 '); } ),
157
-
158
- mr._emit("groupe1OUT", [true, 0]),
159
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(0,"groupe1OUT",true);}),
160
-
161
- mr._await("groupe1IN", 1),
162
- mr._atom( ()=> { console.log("groupe1IN derwish"); } ),
163
-
164
- mr._emit("startTimer", 0),
165
- mr._await("stopTimer", 1),
166
-
167
- mr._emit("groupe1OUT", [false, 0]),
168
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(0,"groupe1OUT",false);}),
169
-
170
- mr._atom( ()=> { gcs.cleanChoiceList(0); } ),
171
-
172
- // Séquence derwish pour groupe 1
173
- mr._atom( ()=> { gcs.alertInfoScoreON(' derwish pour groupe Skini 1 '); } ),
174
-
175
- mr._emit("groupe2OUT", [true, 1]),
176
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(1,"groupe1OUT",true);}),
177
-
178
- mr._await("groupe2IN", 1),
179
- mr._atom( ()=> { console.log("groupe1IN derwish 2"); } ),
180
-
181
- mr._emit("startTimer", 0),
182
- mr._await("stopTimer", 1),
183
-
184
- mr._emit("groupe2OUT", [false, 1]),
185
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(1,"groupe1OUT",false);}),
186
-
187
- mr._atom( ()=> { gcs.cleanChoiceList(1); } ),
188
-
189
- // Fin derwish
190
- mr._emit("derwishOUT", [false, 2]),
191
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(2,"derwishOUT",false);}),
192
- mr._atom( ()=> { gcs.cleanQueues(); } ),
193
-
194
- // Latino -------------------------------------------
195
- mr._atom( ()=> { gcs.setComputeScoreClass(7); } ),
196
-
197
- mr._emit("pianoOUT", [true, 2]),
198
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(2,"pianoOUT",true);}),
199
-
200
- // Séquence derwish pour groupe 0
201
- mr._atom( ()=> { gcs.alertInfoScoreON(' Latino pour groupe Skini 0 '); } ),
202
-
203
- mr._emit("groupe7OUT", [true, 0]),
204
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(0,"groupe7OUT",true);}),
205
-
206
- mr._await("groupe7IN", 1),
207
- mr._atom( ()=> { console.log("groupe7IN latino"); } ),
208
-
209
- mr._emit("startTimer", 0),
210
- mr._await("stopTimer", 1),
211
-
212
- mr._emit("groupe7OUT", [false, 0]),
213
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(0,"groupe7OUT",false);}),
214
-
215
- mr._atom( ()=> { gcs.cleanChoiceList(0); } ),
216
-
217
- // Séquence Latino pour groupe 1
218
- mr._atom( ()=> { gcs.alertInfoScoreON(' Latino pour groupe Skini 1 '); } ),
219
-
220
- mr._emit("groupe3OUT", [true, 1]),
221
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(1,"groupe7OUT",true);}),
222
-
223
- mr._await("groupe3IN", 1),
224
- mr._atom( ()=> { console.log("groupe7IN latino 2"); } ),
225
-
226
- mr._emit("startTimer", 0),
227
- mr._await("stopTimer", 1),
228
-
229
- mr._emit("groupe3OUT", [false, 1]),
230
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(1,"groupe7OUT",false);}),
231
-
232
- mr._atom( ()=> { gcs.cleanChoiceList(1); } ),
233
-
234
- // Fin Latino
235
- mr._emit("pianoOUT", [false, 2]),
236
- mr._atom( ()=> { gcs.informSelecteurOnMenuChange(2,"pianoOUT",false);}),
237
- mr._atom( ()=> { gcs.cleanQueues(); } ),
238
-
239
- // Pour finir ----------------------------------------------------------
240
- mr._await("tick", 20),
241
- mr._atom( ()=> { gcs.alertInfoScoreON('Jeu terminé'); } ),
242
- ]
243
- ),
244
- ],
245
- ),
246
- ]
247
- ),
248
- mr._atom( ()=> {console.log('Orchestration Stop');} ),
249
- mr._atom( ()=> { gcs.resetMatrice(); } ),
250
- mr._atom( ()=> { gcs.cleanQueues(); } ),
251
-
252
- ];
253
-
254
- //mr.addEventListener("startTimer", function(val) {console.log("*** emit startTimer")});
255
-
256
- // A mettre dans Blockly
257
- var prog = mr.createModule(instructions);
258
-
259
- //mr.printProgram(prog, false);
260
-
261
- // A mettre dans Blockly
262
- function runProg(){
263
- // mr.printProgram(prog, false);
264
- mr.runProg(prog);
265
- //skini.test1("**** depuis orchestration");
266
- }
267
- exports.runProg = runProg;
268
-
269
- // A mettre dans Blockly
270
- function createListener(signal, action){
271
- if(debug) console.log("orchestration: createListener: ", signal);
272
- mr.createSignal(signal, 0);
273
- mr.addEventListener(signal, action);
274
- }
275
- exports.createListener = createListener;
276
-
277
- // A mettre dans Blockly
278
- function activateSignal(signal, val){
279
- mr.activateSignal(signal, val);
280
- }
281
- exports.activateSignal = activateSignal;
@@ -1,59 +0,0 @@
1
- /*"use hiphop";
2
- "use hopscript";
3
-
4
- var hh = require( "hiphop" );
5
-
6
- hiphop module sub( S, U, A, B ) {
7
- fork {
8
- if( S.now ) emit A();
9
- } par {
10
- if( U.now ) emit B();
11
- }
12
- }
13
-
14
- hiphop module main( in S, in U, A, B ) {
15
- run sub( ... );
16
- }
17
-
18
- exports.prg = new hh.ReactiveMachine( main, "run2" );
19
- */
20
-
21
-
22
- "use strict";
23
- var hh;
24
- var __hh_module;
25
- let sub;
26
- let main;
27
- hh=require("hiphop");
28
- __hh_module=require("hiphop");
29
-
30
- sub=__hh_module.MODULE({"id":"sub","%location":{"filename":"run.3points.hh.js","pos":70},"%tag":"module"},
31
- __hh_module.SIGNAL({"%location":{"filename":"run.3points.hh.js","pos":82},"direction":"INOUT","name":"S"}),
32
- __hh_module.SIGNAL({"%location":{"filename":"run.3points.hh.js","pos":85},"direction":"INOUT","name":"U"}),
33
- __hh_module.SIGNAL({"%location":{"filename":"run.3points.hh.js","pos":88},"direction":"INOUT","name":"A"}),
34
- __hh_module.SIGNAL({"%location":{"filename":"run.3points.hh.js","pos":91},"direction":"INOUT","name":"B"}),
35
- __hh_module.FORK({"%location":{"filename":"run.3points.hh.js","pos":100},"%tag":"fork"},
36
- __hh_module.SEQUENCE({"%location":{"filename":"run.3points.hh.js","pos":100},"%tag":"fork"},
37
- __hh_module.IF({"%location":{"filename":"run.3points.hh.js","pos":113},"%tag":"if",
38
- "apply":function (){return ((() => {const S=this["S"];return S.now;})());}
39
- },
40
- __hh_module.SIGACCESS({"signame":"S","pre":false,"val":false,"cnt":false}),
41
- __hh_module.EMIT({"%location":{"filename":"run.3points.hh.js","pos":130},"%tag":"emit","A":"A"}))),__hh_module.SEQUENCE({"%location":{"filename":"run.3points.hh.js","pos":140},"%tag":"par"},__hh_module.IF({"%location":{"filename":"run.3points.hh.js","pos":152},"%tag":"if","apply":function (){return ((() => {const U=this["U"];return U.now;})());}
42
- },
43
- __hh_module.SIGACCESS({"signame":"U","pre":false,"val":false,"cnt":false}),
44
- __hh_module.EMIT({"%location":{"filename":"run.3points.hh.js","pos":169},"%tag":"emit","B":"B"})))));
45
-
46
- __hh_module=require("hiphop");
47
-
48
- main=__hh_module.MODULE({"id":"main","%location":{"filename":"run.3points.hh.js","pos":189},"%tag":"module"},
49
- __hh_module.SIGNAL({"%location":{"filename":"run.3points.hh.js","pos":202},"direction":"IN","name":"S"}),
50
- __hh_module.SIGNAL({"%location":{"filename":"run.3points.hh.js","pos":208},"direction":"IN","name":"U"}),
51
- __hh_module.SIGNAL({"%location":{"filename":"run.3points.hh.js","pos":214},"direction":"INOUT","name":"A"}),
52
- __hh_module.SIGNAL({"%location":{"filename":"run.3points.hh.js","pos":217},"direction":"INOUT","name":"B"}),
53
-
54
- __hh_module.RUN({"%location":{"filename":"run.3points.hh.js","pos":226},"%tag":"run","module":
55
- __hh_module.getModule("sub",{"filename":"run.3points.hh.js","pos":230}),"autocomplete":true}
56
- )
57
- );
58
-
59
- exports.prg=new hh.ReactiveMachine(main,"run2");
@@ -1,123 +0,0 @@
1
- /*"use hiphop";
2
- "use hopscript";
3
-
4
- var hh = require( "hiphop" );
5
-
6
- hiphop module sub( S, U, W, Z ) {
7
- fork {
8
- if( S.now ) emit W();
9
- } par {
10
- if( U.now ) emit Z();
11
- }
12
- }
13
-
14
- hiphop module main( in S, in U, A, B ) {
15
- run sub( S, U, W as A, Z as B );
16
- }
17
-
18
- exports.prg = new hh.ReactiveMachine( main, "run2" );*/
19
-
20
-
21
- "use strict";
22
-
23
- var hh = require("../hiphop/hiphop.js");
24
- const decache = require('decache');
25
-
26
- var sub = hh.MODULE(
27
- {
28
- "id":"sub",
29
- "%location":{},
30
- "%tag":"module"
31
- },
32
- hh.SIGNAL({"%location":{"filename":"run.hh.js","pos":82},"direction":"INOUT","name":"S"}),
33
- hh.SIGNAL({"%location":{"filename":"run.hh.js","pos":85},"direction":"INOUT","name":"U"}),
34
- hh.SIGNAL({"%location":{"filename":"run.hh.js","pos":88},"direction":"INOUT","name":"W"}),
35
- hh.SIGNAL({"%location":{"filename":"run.hh.js","pos":91},"direction":"INOUT","name":"Z"}),
36
-
37
- hh.FORK(
38
- {"%location":{"filename":"run.hh.js","pos":100},"%tag":"fork"},
39
- hh.SEQUENCE(
40
- {"%location":{"filename":"run.hh.js","pos":100},"%tag":"fork"},
41
- hh.ATOM(
42
- {
43
- "%location":{},
44
- "%tag":"node",
45
- "apply":function () {console.log('message serveur 1');}
46
- }),
47
- hh.IF(
48
- {"%location":{"filename":"run.hh.js","pos":113},"%tag":"if","apply":function (){return ((() => {const S=this["S"];return S.now;})());}
49
- },
50
- hh.SIGACCESS({"signame":"S","pre":false,"val":false,"cnt":false}),
51
-
52
- hh.EMIT({"%location":{"filename":"run.hh.js","pos":130},"%tag":"emit","W":"W"}))
53
- ),
54
- hh.SEQUENCE(
55
- {"%location":{"filename":"run.hh.js","pos":140},"%tag":"par"},
56
- hh.ATOM(
57
- {
58
- "%location":{},
59
- "%tag":"node",
60
- "apply":function () {console.log('message serveur 2');}
61
- }),
62
- hh.IF({"%location":{"filename":"run.hh.js","pos":152},"%tag":"if","apply":function (){return ((() => {const U=this["U"];return U.now;})());}
63
- },
64
- hh.SIGACCESS({"signame":"U","pre":false,"val":false,"cnt":false}),
65
-
66
- hh.EMIT({"%location":{"filename":"run.hh.js","pos":169},"%tag":"emit","Z":"Z"}))
67
- )
68
- )
69
- );
70
-
71
- var main = hh.MODULE({"id":"main","%location":{"filename":"run.hh.js","pos":189},"%tag":"module"},
72
- hh.SIGNAL({"%location":{"filename":"run.hh.js","pos":202},"direction":"IN","name":"S"}),
73
- hh.SIGNAL({"%location":{"filename":"run.hh.js","pos":208},"direction":"IN","name":"U"}),
74
- hh.SIGNAL({"%location":{"filename":"run.hh.js","pos":214},"direction":"INOUT","name":"A"}),
75
- hh.SIGNAL({"%location":{"filename":"run.hh.js","pos":217},"direction":"INOUT","name":"B"}),
76
-
77
- hh.RUN({
78
- "%location":{"filename":"run.hh.js","pos":226},
79
- "%tag":"run",
80
- "module": hh.getModule("sub", {"filename":"run.hh.js","pos":230}),
81
- "S":"",
82
- "U":"",
83
- "W":"A",
84
- "Z":"B"
85
- })
86
- );
87
-
88
- var prg = new hh.ReactiveMachine(main,"run2");
89
- exports.prg = prg;
90
-
91
- function callReact(sig){
92
- if(sig !== undefined){
93
- prg.react(sig);
94
- }else{
95
- prg.react();
96
- }
97
- }
98
- exports.callReact = callReact;
99
-
100
- function setListener(sig, func){
101
- prg.addEventListener(sig, func );
102
- }
103
- exports.setListener = setListener;
104
-
105
- prg.addEventListener("A", ()=> console.log("A") );
106
- prg.addEventListener("B", ()=> console.log("B") );
107
-
108
- prg.react();
109
- prg.input("S");
110
- prg.react();
111
- prg.react("A");
112
- prg.react("B");
113
- console.log("--");
114
- prg.react();
115
- console.log("--");
116
- prg.react();
117
- console.log("--");
118
- prg.react();
119
- console.log("--");
120
- prg.react();
121
- console.log("--");
122
- prg.react();
123
- console.log("--");