Yeah, the "detail" for me is included in the classes structure:<div><br></div><div>On EG module declares a certain amount of parameters (that's C)</div><div>When a "synth" instanciates it it gives it a name 'FilterEG"</div>
<div>The synth exposes the parameter "FilterEG/attack" using some external name that the synth's "user" code can play with. Mapping it to the original instance of the class.</div><div><br></div><div>
/M<br><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">So you've got three levels of detail:<br>
<br>
A) General details - a list of *all possible* parameters for all possible modules<br>
B) Specific detail - a list of parameters, explicitly described for the purposes of the module the user has *actively in front of them*<br>
C) Common details - what modules have common, similar (but not necessarily identical) paramter types.  Filter EG and Amp EG both have ADSR parameters, Filter Module A and B both share "resonance and cutoff" as parameters, etc.<br>

<br></blockquote></div>
</div>