Hi, I was wondering how to deal with arguments or NamedControl’s in Ndef’s that are not numbers.
Like audio inputs or buffers.
For example, NdefPreset’s (JITLibExtensions) .morp complains when there is no Spec for an audio input.
So. what kind of Spec do I need to apply?
And is there a way to remove or hide arguments or NamedControl’s ?
(
s.waitForBoot({
Ndef(\source,{ WhiteNoise.ar; });
Ndef(\source) <>> Ndef(\fx);
Ndef(\fx,{
var sig = \in.ar(0);
\test.kr(1);
DC.ar(0);
});
// Ndef(\fx).addSpec(\in, ControlSpec( 0, 0) );
Ndef(\fx).addSpec(\test, ControlSpec( 0, 1, \lin) );
})
)
(
~presets = NdefPreset(Ndef(\fx));
NdefPresetGui(~presets,Ndef(\fx).controlKeys.size+1);
)
with presets:
~presets.morph(1.0.rand,~presets.getSetNames[0],~presets.getSetNames[1])
results in:
ProxyPreset:unmapSet: no spec for in!
ProxyPreset:unmapSet: no spec for in!
ERROR: Message 'map' not understood.
RECEIVER:
nil
ARGS:
nil
CALL STACK:
DoesNotUnderstandError:reportError
arg this = <instance of DoesNotUnderstandError>
Nil:handleError
arg this = nil
arg error = <instance of DoesNotUnderstandError>
Thread:handleError
arg this = <instance of Thread>
arg error = <instance of DoesNotUnderstandError>
Object:throw
arg this = <instance of DoesNotUnderstandError>
Object:doesNotUnderstand
arg this = nil
arg selector = 'map'
arg args = [*1]
< FunctionDef in Method ProxyPreset:mapSet >
arg pair = [*0]
< FunctionDef in Method Collection:collectAs >
arg elem = [*0]
arg i = 0
ArrayedCollection:do
arg this = [*2]
arg function = <instance of Function>
var i = 0
Collection:collectAs
arg this = [*2]
arg function = <instance of Function>
arg class = <instance of Meta_Array>
var res = [*0]
ProxyPreset:morph
arg this = <instance of NdefPreset>
arg blend = 0.53378772735596
arg name1 = 'curr'
arg name2 = 'set_2'
arg mapped = true
Interpreter:interpretPrintCmdLine
arg this = <instance of Interpreter>
var res = nil
var func = <instance of Function>
var code = "~presets.morph(1.0.rand,~pre..."
var doc = nil
var ideClass = <instance of Meta_ScIDE>
Process:interpretPrintCmdLine
arg this = <instance of Main>
^^ ERROR: Message 'map' not understood.
RECEIVER: nil
thank you