# HG changeset patch # User Giulio Moro # Date 1463840551 -3600 # Node ID cb9a800401502786cb85df2b85268868892c0a91 # Parent ac8eb07afcf547cf50b95a71e0819cebe594fee6 Updated heavy render to latest Heavy API diff -r ac8eb07afcf5 -r cb9a80040150 projects/heavy/pd/hello-midi/_main.pd --- a/projects/heavy/pd/hello-midi/_main.pd Tue May 17 15:40:16 2016 +0100 +++ b/projects/heavy/pd/hello-midi/_main.pd Sat May 21 15:22:31 2016 +0100 @@ -7,9 +7,9 @@ #X text 202 438 @krighxz / BELA / heavy / 12/2015; #X text 226 457 beaglert.cc / enzienaudio.com; #X obj 39 132 mtof; -#X floatatom 79 59 5 0 0 0 - - -; -#X floatatom 122 59 5 0 0 0 - - -; -#X floatatom 41 63 5 0 0 0 - - -; +#X floatatom 79 59 5 0 0 0 - - -, f 5; +#X floatatom 122 59 5 0 0 0 - - -, f 5; +#X floatatom 41 63 5 0 0 0 - - -, f 5; #X obj 26 170 phasor~ 440; #X text 100 363 (the harsh sound of success); #X obj 260 83 * 20; @@ -36,12 +36,13 @@ #X obj 40 28 bela_notein 0; #X obj 260 60 bela_ctlin 5 0; #X obj 220 151 bela_ctlin 6 0; -#X obj 408 121 bela_pgmin 3; #X text 537 58 [ctlin]; #X text 332 27 [notein]; #X text 140 29 <== the bela equivalent of ==>; #X text 349 59 <== the bela equivalent of ==>; #X text 483 121 <== the bela equivalent of ==>; +#X obj 405 175 print pgmin; +#X obj 408 121 bela_pgmin 0; #X connect 3 0 0 1; #X connect 3 0 0 0; #X connect 7 0 11 0; @@ -77,3 +78,4 @@ #X connect 33 2 9 0; #X connect 34 0 13 0; #X connect 35 0 19 0; +#X connect 42 0 41 0; diff -r ac8eb07afcf5 -r cb9a80040150 scripts/hvresources/render.cpp --- a/scripts/hvresources/render.cpp Tue May 17 15:40:16 2016 +0100 +++ b/scripts/hvresources/render.cpp Sat May 21 15:22:31 2016 +0100 @@ -117,6 +117,10 @@ //hv_vscheduleMessageForReceiver(gHeavyContext, "bbb_bang", 0.0f, "b"); { int num; + unsigned int hvHashes[3]; + hvHashes[0] = hv_stringToHash("bela_notein"); + hvHashes[1] = hv_stringToHash("bela_ctlin"); + hvHashes[2] = hv_stringToHash("bela_pgmin"); while((num = midi.getParser()->numAvailableMessages()) > 0){ static MidiChannelMessage message; message = midi.getParser()->getNextChannelMessage(); @@ -127,16 +131,16 @@ float velocity = message.getDataByte(1); float channel = message.getChannel(); // rt_printf("message: noteNumber: %f, velocity: %f, channel: %f\n", noteNumber, velocity, channel); - hv_vscheduleMessageForReceiver(gHeavyContext, "bela_notein", 0, "fff", noteNumber, velocity, channel); + hv_vscheduleMessageForReceiver(gHeavyContext, hvHashes[0], 0, "fff", noteNumber, velocity, channel); } break; case kmmControlChange: { - hv_vscheduleMessageForReceiver(gHeavyContext, "bela_ctlin", 0, "fff", + hv_vscheduleMessageForReceiver(gHeavyContext, hvHashes[1], 0, "fff", (float)message.getDataByte(1), (float)message.getDataByte(0), (float)message.getChannel()); } break; case kmmProgramChange: - hv_vscheduleMessageForReceiver(gHeavyContext, "bela_pgmin", 0, "ff", + hv_vscheduleMessageForReceiver(gHeavyContext, hvHashes[2], 0, "ff", (float)message.getDataByte(0), (float)message.getChannel()); break; }