Actually, for managing the sources of data, I've got quite an elegant system that uses something I call "Controller sources"<div><br></div><div>Typically you use it like this:</div><div><br></div><div><div><span class="Apple-tab-span" style="white-space:pre">         </span>Channel *c=ControllerService::Instance()->GetChannel("midi:all:0:cc:14") ;</div>
<div><span class="Apple-tab-span" style="white-space:pre">              </span>assert(c) ;</div><div><span class="Apple-tab-span" style="white-space:pre">          </span>synth_.AttachParameter(SQ_OSC_START,c) ;</div><div><br></div><div>the string is simply describing the source of the data. Can be joystick, midi, keyboard, osc.. pretty much anything. It's also very handy to be able to design variable mapping, midi learn etc :)</div>
<div><br></div><div><br><div class="gmail_quote">2011/8/29 Joost Schuttelaar <span dir="ltr"><<a href="mailto:joost@joostschuttelaar.nl">joost@joostschuttelaar.nl</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">On Aug 29, 2011, at 16:35 , Marc Nostromo [M-.-n] wrote:<br>
<br>
> My biggest challenge (beside writing the modules of course) left is to tackle parameter access. First of all module can have a large set of them but then the "synth" might want to expose only some of them to map to MIDI for example. I haven't really spent the time to do a proper desing for that.<br>

<br>
</div>I've struggled with this one too. My model is something like below:<br>
<br>
MGEPiggyOsc implements Tweakable {<br>
<br>
        void oscFloatMessage(char * message, float value); // values in 'real-world'<br>
        void midiMessage(int param, byte val); // values mapped nicely to MIDI bytes where 0 makes sonic sense and 127 too<br>
        void midiFloatMessage(int param, float val); // values mapped to real-world again, can be very non-musical<br>
        void char * describe(); // returns an xml description of parameters/values<br>
}<br>
<font color="#888888"><br>
--<br>
<br>
Joost Schuttelaar<br>
The Hague, NL<br>
</font><div><div></div><div class="h5"><br>
_______________________________________________<br>
music-bar mailing list<br>
<a href="mailto:music-bar@lists.music-bar.org">music-bar@lists.music-bar.org</a><br>
<a href="http://lists.music-bar.org/cgi-bin/mailman/listinfo/music-bar" target="_blank">http://lists.music-bar.org/cgi-bin/mailman/listinfo/music-bar</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><a href="http://nostromo.noisepages.com">http://nostromo.noisepages.com</a><br>
</div></div>