cwtest/cfg/test/ref/* : Initial commit

This commit is contained in:
kevin 2024-07-03 14:19:48 -04:00
parent 3dbc8afca9
commit 63858e4002
34 changed files with 922 additions and 0 deletions

View File

@ -0,0 +1,593 @@
{
module_args: {
proc_cfg_fname: "~/src/cwtest/src/libcw/flow/proc_dict.cfg",
subnet_cfg_fname:"~/src/cwtest/src/libcw/flow/subnet_dict.cfg",
},
cases: {
test_0: {
maxCycleCount:3750, // 5 seconds
network: {
procs: {
osc: { class: sine_tone },
afout: { class: audio_file_out, in: { in:osc.out } args:{ fname:"$/audio_flow_out.wav"}
}
}
}
}
test_1: {
maxCycleCount: 1500,
printNetworkFl: false, // print the network instance
network: {
procs: {
lfo: { class: sine_tone, args:{ hz:3, dc:440, gain:110 }}
sh: { class: sample_hold, in:{ in:lfo.out } }
osc: { class: sine_tone, in:{ hz:sh.out } },
afout: { class: audio_file_out, in: { in:osc.out } args:{ fname:"$/audio_flow_out.wav"} }
}
presets: {
a: { lfo:a220, osc: { gain:0.8 } },
b: { lfo:{ dc:220, gain:25 }, osc: { gain:0.5 } }
}
}
}
test_2: {
maxCycleCount: 7500,
network: {
procs: {
srate: { class: number, log:{out:0} args:{ in:48000.0f } },
tmr: { class: timer, in: { srate:srate.out}, log:{out:0} args:{ period_ms:1000.0 } },
cnt: { class: counter, in: { trigger:tmr.out }, log:{out:0} args:{ min:0, max:3, inc:1, init:0, mode:clip, out_type:uint, repeat_fl:false } },
list: { class: list, in: { in:cnt.out }, log:{out:0} args:{ list:[a,b,c,d] }}
}
}
}
test_3: {
maxCycleCount: 7500,
network: {
procs: {
srate: { class: number, log:{out:0} args:{ in:48000f } },
tmr: { class: timer, in: { srate:srate.out}, log:{out:0} args:{ period_ms:1000.0 } },
cnt: { class: counter, in: { trigger:tmr.out }, log:{out:0} args:{ min:0, max:3, inc:1, init:0, mode:clip, repeat_fl:false, out_type:uint } },
x0v: { class: number, log:{out:0} args:{ in:2 }},
x1v: { class: number, log:{out:0} args:{ in:3 }},
add: { class: add, in: { in0:x0v.out, in1:x1v.out, in2:cnt.out }, log:{out:0} args:{ otype:int }}
}
}
}
test_4: {
maxCycleCount: 15000,
printNetworkFl: false,
network: {
procs: {
srate: { class: number, log:{in:0} args:{ in:48000.0f} },
tmr: { class: timer, in: { srate:srate.out } log:{srate:0} args:{ period_ms:2000 } },
cnt: { class: counter, in: { trigger:tmr.out }, args:{ min:0, max:2, inc:1, init:0, mode:clip, out_type:uint }}
list: { class: list, in: { in:cnt.out }, args:{ list:[ a,b,c ] }},
ps: { class: preset, in: { in:list.out } }
lfo: { class: sine_tone, in:{ srate:srate.out }, log:{srate:0} args: { hz:3, dc:440, gain:110 }}
sh: { class: sample_hold, in:{ in:lfo.out } }
osc: { class: sine_tone, in:{ hz:sh.out, srate:srate.out }}
afout: { class: audio_file_out, in:{ in:osc.out } args:{ fname:"$/audio_flow_out.wav"} }
}
presets: {
a: { lfo: { hz:1.0, dc:880 }, osc: { gain:0.95 } },
b: { lfo: { hz:2.0, dc:220 }, osc: { gain:0.75 } },
c: { lfo: a220 }
}
}
}
// Same as test_4 but using the system sample rate
test_5: {
maxCycleCount: 15000,
sample_rate: 48000,
network: {
procs: {
tmr: { class: timer, log:{srate:0}, args:{ period_ms:2000 } },
cnt: { class: counter, in: { trigger:tmr.out }, args:{ min:0, max:2, inc:1, init:0, mode:clip, out_type:uint }}
list: { class: list, in: { in:cnt.out }, args:{ list:[ a,b,c ] }},
ps: { class: preset, in: { in:list.out } }
lfo: { class: sine_tone, log:{srate:0} args: { chCnt:1, hz:3, dc:440, gain:110 }}
sh: { class: sample_hold, in:{ in:lfo.out } }
osc: { class: sine_tone, in:{ hz:sh.out } log:{srate:0} }
afout: { class: audio_file_out, in: { in:osc.out } args:{ fname:"$/audio_flow_out.wav"} }
}
presets: {
a: { lfo: { hz:1, dc:880 }, osc: { gain:0.95 } },
b: { lfo: { hz:2, dc:220 }, osc: { gain:0.75 } },
c: { lfo: a220 },
}
}
}
// Simple poly
test_6: {
maxCycleCount: 7500,
sample_rate: 48000,
printNetworkFl: false, // print the network instance
printClassDictFl: false, // print the class description dictionary
network: {
procs: {
osc_poly: {
class: poly,
args: { count:3 }
network: {
procs: {
lfo: { class: sine_tone, args: { chCnt:1, hz:3, dc:440, gain:110 }}
sh: { class: sample_hold, in:{ in:lfo.out }}
osc: { class: sine_tone, in:{ hz: sh.out }}
}
// Note the use of the trailing underscore to create matching presets
// on all poly channels. Without the underscore the presets would only
// be applied to poly channel 0.
presets: {
a: { lfo_: { hz:1, dc:880 }, osc_: { gain:0.95 } },
b: { lfo_: { hz:2, dc:220 }, osc_: { gain:0.75 } },
c: { lfo_: a220 },
}
}
}
poly_merge: { class: audio_merge, in:{ in_:osc_poly.osc_.out}, args:{ gain:1, out_gain:0.5 }},
afout: { class: audio_file_out, in: { in:poly_merge.out } args:{ fname:"$/audio_flow_out.wav"} }
}
presets: {
}
}
}
// Test using xfade_ctl to cross-fade and assign presets.
test_7: {
maxCycleCount: 7500,
sample_rate: 48000,
printNetworkFl: false, // print the network instance
printClassDictFl: false, // print the class description dictionary
network: {
procs: {
tmr: { class: timer, args:{ period_ms:2000 } },
cnt: { class: counter, in: { trigger:tmr.out }, args:{ min:0, max:2, inc:1, init:0, mode:reverse, out_type:uint }}
list: { class: list, in: { in:cnt.out }, args:{ list:[ a,b,c ] }},
osc_poly: {
class: poly,
args: { count:3 }
network: {
procs: {
lfo: { class: sine_tone, args: { chCnt:1, hz:3, dc:440, gain:110 }}
sh: { class: sample_hold, in:{ in:lfo.out }}
osc: { class: sine_tone, in:{ hz: sh.out }}
}
// Note the use of the trailing underscore to create matching presets
// on all poly channels. Without the underscore the presets would only
// be applied to poly channel 0.
presets: {
a: { lfo_: { hz:1, dc:880 }, osc_: { gain:0.95 } },
b: { lfo_: { hz:2, dc:220 }, osc_: { gain:0.75 } },
c: { lfo_: a220 },
}
}
}
xfade_ctl: { class: xfade_ctl, in:{ srateSrc:osc_poly.osc.out, preset:list.out, trigger:list.out },
log:{trigger:0},
args:{ net:osc_poly, durMs:1000, preset:a }} ,
poly_merge: { class: audio_merge, in:{ in_:osc_poly.osc_.out, gain_:xfade_ctl.gain_ },
args:{ out_gain:0.5 }},
afout: { class: audio_file_out, in:{ in:poly_merge.out }
args:{ fname:"$/audio_flow_out.wav"} }
}
presets: {
}
}
}
// Test using xfade_ctl to assign presets and connecting poly procs
// to non-poly procs using the poly index to select sources.
// See `in:{ lfo_.dc:dc_list.value_}`
test_8: {
maxCycleCount: 7500,
sample_rate: 48000,
printNetworkFl: false, // print the network instance
printClassDictFl: false, // print the class description dictionary
network: {
procs: {
tmr: { class: timer, args:{ period_ms:2000 } },
cnt: { class: counter, in: { trigger:tmr.out }, args:{ min:0, max:2, inc:1, init:0, mode:reverse, out_type:uint }}
list: { class: list, in: { in:cnt.out }, args:{ list:[ a,b,c ] }},
dc_list: { class: list, args: { in:0, list:[ 110f,220f,440f ]}}
osc_poly: {
class: poly,
args: { count:3 }
network: {
procs: {
lfo: { class: sine_tone, in:{ _.dc:_.dc_list.value_}, args: { chCnt:1, hz:3, gain:110 }}
sh: { class: sample_hold, in:{ in:lfo.out }}
osc: { class: sine_tone, in:{ hz: sh.out }}
}
// Note the use of the trailing underscore to create matching presets
// on all poly channels. Without the underscore the presets would only
// be applied to poly channel 0.
presets: {
a: { lfo_: { hz:1 }, osc_: { gain:0.95 } },
b: { lfo_: { hz:2 }, osc_: { gain:0.75 } },
c: { lfo_: a220 },
}
}
}
xfade_ctl: { class: xfade_ctl, in:{ srateSrc:osc_poly.osc.out, preset:list.out, trigger:list.out },
log:{trigger:0},
args:{ net:osc_poly, durMs:1000, preset:a }},
poly_merge: { class: audio_merge, in:{ in_:osc_poly.osc_.out, gain_:xfade_ctl.gain_ },
args:{ out_gain:0.5 }},
afout: { class: audio_file_out, in:{ in:poly_merge.out }
args:{ fname:"$/audio_flow_out.wav"} }
}
presets: {
}
}
}
// Test using a subnet.
test_9 : {
maxCycleCount: 7500,
sample_rate: 48000,
printNetworkFl: false, // print the network instance
printClassDictFl: false, // print the class description dictionary
network: {
procs: {
sub_osc: { class: mod_osc args:{ hz:220, hz_mod_hz:3, hz_mod_depth:55, amp_mod_hz:2, amp_mod_depth:0.5 }},
afout: { class: audio_file_out, in:{ in:sub_osc.mo_out }
args:{ fname:"$/audio_flow_out.wav"}}
}
}
}
// Testing using proc instances with explicit suffix ids.
// See: list0 and list1
test_10: {
maxCycleCount: 15000,
network: {
procs: {
tmr: { class: timer, args:{ period_ms:1000.0 }},
cnt: { class: counter, in: { trigger:tmr.out }, log:{out:0}, args:{ min:0, max:2, inc:1, init:0, mode:clip, repeat_fl:false, out_type:uint }},
list0: { class: list, args:{ in:2 list:[1,2,3] }},
list1: { class: list, args:{ in:0, list:[10,20,30] }},
add: { class: add, in: { in0:list0.out, in1:list1.out, in2:cnt.out }, log:{out:0} args:{ otype:int }}
}
}
},
// Test with no exec cycles.
// This network only runs the initialization pass.
test_11: {
maxCycleCount: 0,
network: {
procs: {
a: { class: number, log:{out:0}, args:{ in:1 }},
b: { class: number, log:{out:0}, args:{ in:2 }},
add: { class: add, in: { in0:a.out, in1:b.out }, log:{out:0}, args:{ otype:int }}
}
}
},
/*
This test is broken because the only time that 'add' outputs a value
is when one of it's inputs changes value, and in this case that is
that only occurs when 'add' is being constructed - prior to the
feedback connection being created.
// Test the 'out' statement to set feedback connections.
test_12: {
maxCycleCount: 10,
network: {
procs: {
a: { class: number, log:{out:0}, args:{ in:1 }},
b: { class: number, log:{out:0}, args:{ in0:0, in1:2 }},
add: { class: add, in: { in0:a.out, in1:b.out }, out: { out:b.in0 },
log:{out:0}, args:{ otype:int }}
}
}
},
*/
// Same as test_4 but with a dual-preset. See preset 'd'.
test_13: {
maxCycleCount: 15000,
printNetworkFl: false,
network: {
procs: {
srate: { class: number, log:{out:0} args:{ in:48000.0f }} ,
tmr: { class: timer, in: { srate:srate.out } log:{srate:0} args:{ period_ms:2000 }},
cnt: { class: counter, in: { trigger:tmr.out }, args:{ min:0, max:3, inc:1, init:0, mode:clip, out_type:uint }}
list: { class: list, in: { in:cnt.out }, args:{ list:[ a,b,c,d ] }},
ps: { class: preset, in: { in:list.out } }
lfo: { class: sine_tone, in:{ srate:srate.out }, log:{srate:0,hz:0,dc:0} args: { hz:3, dc:440, gain:110 }}
sh: { class: sample_hold, in:{ in:lfo.out }}
osc: { class: sine_tone, in:{ hz:sh.out, srate:srate.out }}
afout: { class: audio_file_out, in:{ in:osc.out } args:{ fname:"$/audio_flow_out.wav"} }
}
presets: {
a: { lfo: { hz:1.0, dc:880 }, osc: { gain:0.95 } },
b: { lfo: { hz:2.0, dc:220 }, osc: { gain:0.75 } },
c: { lfo: a220 },
d: [ a,b,0.5 ]
}
}
}
test_14: {
maxCycleCount: 3750,
network {
procs: {
tmr: { class: timer, args:{ period_ms:1000.0 }},
cnt: { class: counter, in: { trigger:tmr.out }, args:{ min:0, max:3, inc:1, init:0, mode:clip, out_type:uint }}
add: { class: add, in: { in0:cnt.out, in1:cnt.out }, }
log: { class: print, in: { in0:cnt.out, in1:add.out, eol_fl:add.out }, args:{ text:["a","b","c"] }}
}
}
}
//------------------ caw example test cases
// Demonstrate a simple two processor network.
demo_01_sine_file: {
durLimitSecs:5.0,
network: {
procs: {
osc: { class: sine_tone },
af: { class: audio_file_out, in: { in:osc.out } args:{ fname:"$/out.wav"} }
}
}
}
// Demonstrate simple signal processing and how to apply a processor class prefix.
demo_02_mod_sine: {
durLimitSecs:5.0,
network: {
procs: {
lfo: { class: sine_tone, args:{ hz:3, dc:440, gain:110 }}
sh: { class: sample_hold, in:{ in:lfo.out } }
osc: { class: sine_tone, preset:mono, in:{ hz:sh.out } },
af: { class: audio_file_out, in: { in:osc.out } args:{ fname:"$/out.wav"} }
}
}
}
// Demonstrate applying a preset at initialization time.
demo_03_presets: {
durLimitSecs:5.0,
preset: "a",
network: {
procs: {
lfo: { class: sine_tone, args:{ hz:3, dc:440, gain:110 }}
sh: { class: sample_hold, in:{ in:lfo.out } }
osc: { class: sine_tone, in:{ hz:sh.out } },
af: { class: audio_file_out, in: { in:osc.out } args:{ fname:"$/out.wav"} }
}
presets:
{
a: { lfo: { hz:1.0, dc:880 }, osc: { gain:0.95 } },
b: { lfo: { hz:2.0, dc:220 }, osc: { gain:0.75 } },
c: { lfo: a880 },
d: [ a,b,0.5 ]
}
}
}
// Demonstrate the `print` processor and event programming.
demo_04_program: {
durLimitSecs: 10.0,
network {
procs: {
tmr: { class: timer, args:{ period_ms:1000.0 }},
cnt: { class: counter, in: { trigger:tmr.out }, args:{ min:0, max:3, inc:1, init:0, mode:modulo } },
print: { class: print, in: { in:cnt.out, eol_fl:cnt.out }, args:{ text:["my","count"] }}
}
}
}
// Demonstrate 'mult' inputs.
demo_05_mult_inputs: {
durLimitSecs: 10.0,
network: {
procs: {
tmr: { class: timer, args:{ period_ms:1000.0 }},
cnt: { class: counter, in: { trigger:tmr.out }, args:{ min:0, max:3, inc:1, init:0, mode:modulo } },
numb: { class: number, args:{ in:3 }},
sum: { class: add, in: { in0:cnt.out, in1:numb.out } },
print: { class: print, in: { in0:cnt.out, in1:sum.out, eol_fl:sum.out }, args:{ text:["cnt","add","count"] }}
}
}
}
// Demonstrate different forms of the in-stmt
demo_06_mult_conn: {
durLimitSecs: 5.0,
network: {
procs: {
osc: { class: sine_tone, args: { chCnt:6, hz:[110,220,440,880,1760, 3520] }},
split: { class: audio_split, in:{ in:osc.out }, args: { select:[ 0,0, 1,1, 2,2 ] } },
// Create merge.in0,in1,in2 by iterating across all outputs of 'split'.
merge_a: { class: audio_merge, in:{ in_:split.out_ } },
af_a: { class: audio_file_out, in:{ in:merge_a.out }, args:{ fname:"$/out_a.wav" }}
// Create merge.in0,in1 and connect them to split.out0 and split.out1
merge_b: { class: audio_merge, in:{ in_:split.out0_2 } },
af_b: { class: audio_file_out, in:{ in:merge_b.out }, args:{ fname:"$/out_b.wav" }}
// Create merge.in0,in1 and connect them both to split.out1
merge_c: { class: audio_merge, in:{ in0_2:split.out1 } },
af_c: { class: audio_file_out, in:{ in:merge_c.out }, args:{ fname:"$/out_c.wav" }}
}
}
}
// Demonstrate creating processors with explicit sfx-ids and connecting to them with a single in-stmt.
demo_07_proc_suffix: {
durLimitSecs: 5.0,
network: {
procs: {
osc: { class: sine_tone, args: { chCnt:6, hz:[110,220,440,880,1760, 3520] }},
split: { class: audio_split, in:{ in:osc.out }, args: { select:[ 0,0, 1,1, 2,2 ] } },
// Create 3 audio gain controls with explicit sfx-ids
g0: { class:audio_gain, in:{ in:split0.out0 }, args:{ gain:0.9} },
g1: { class:audio_gain, in:{ in:split0.out1 }, args:{ gain:0.5} },
g2: { class:audio_gain, in:{ in:split0.out2 }, args:{ gain:0.1} },
// Create audio-merge inputs and connect them to 3 consecutive gain controls
// by iterating the in-stmt over the source proc sfx-id.
merge: { class: audio_merge, in:{ in_:g_.out } },
af: { class: audio_file_out, in:{ in:merge.out }, args:{ fname:"$/out_a.wav" }}
}
}
}
// Demonstrate instantiating 'mult' variables from the an 'args' statement.
demo_08_mix: {
durLimitSecs:5.0,
network: {
procs: {
osc_a: { class: sine_tone, args: { hz:110 } },
osc_b: { class: sine_tone, args: { hz:220 } },
// Instantiate gain:0 and gain:1 to control the input gain of in:0 and in:1.
mix: { class: audio_mix, in: { in0:osc_a.out, in1:osc_b.out }, args:{ igain0:[0.8, 0], igain1:[0, 0.2] } },
af: { class: audio_file_out, in: { in:mix.out } args:{ fname:"$/out.wav"} }
}
}
}
// Demonstrate a network with a polyphonic subnet.
demo_09_simple_poly: {
durLimitSecs: 5.0,
network: {
procs: {
g_list: { class: list, args: { in:0, list:[ 110f,220f,440f ]}},
dc_list: { class: list, args: { in:0, list:[ 220f,440f,880f ]}},
osc_poly: {
class: poly,
args: { count:3 }, // Create 3 instances of 'network'.
network: {
procs: {
lfo: { class: sine_tone, in:{ _.dc:_.dc_list.value_, _.gain:_.g_list.value_ } args: { chCnt:1, hz:3 }},
sh: { class: sample_hold, in:{ in:lfo.out }},
osc: { class: sine_tone, in:{ hz: sh.out }},
}
}
}
// Iterate over the instances of `osc_poly.osc_.out` to create one `audio_merge`
// input for every output from the polyphonic network.
merge: { class: audio_merge, in:{ in_:osc_poly.osc_.out}, args:{ gain:1, out_gain:0.5 }},
af: { class: audio_file_out, in:{ in:merge.out } args:{ fname:"$/out.wav"} }
}
}
}
}
}

View File

@ -0,0 +1 @@
: 0.000000 : 1.000000 : 2.000000 : 3.000000 : 4.000000 : 5.000000 : 6.000000 : 7.000000 : 8.000000 : 9.000000 : 10.000000 : 11.000000 : 12.000000 : 13.000000 : 14.000000 : 15.000000 : 16.000000 : 17.000000 : 18.000000 : 19.000000 : 20.000000 : 21.000000 : 22.000000 : 23.000000 : 24.000000 : 25.000000 : 26.000000 : 27.000000 : 28.000000 : 29.000000 : 30.000000 : 31.000000 : 32.000000 : 33.000000 : 34.000000 : 35.000000 : 36.000000 : 37.000000 : 38.000000 : 39.000000 : 40.000000 : 41.000000 : 42.000000 : 43.000000 : 44.000000 : 45.000000 : 46.000000 : 47.000000 : 48.000000 : 49.000000 : 50.000000 : 51.000000 : 52.000000 : 53.000000 : 54.000000 : 55.000000 : 56.000000 : 57.000000 : 58.000000 : 59.000000 : 60.000000 : 61.000000 : 62.000000 : 63.000000 : 64.000000 : 65.000000 : 66.000000 : 67.000000 : 68.000000 : 69.000000 : 70.000000 : 71.000000 : 72.000000 : 73.000000 : 74.000000 : 75.000000 : 76.000000 : 77.000000 : 78.000000 : 79.000000 : 80.000000 : 81.000000 : 82.000000 : 83.000000 : 84.000000 : 85.000000 : 86.000000 : 87.000000 : 88.000000 : 89.000000 : 90.000000 : 91.000000 : 92.000000 : 93.000000 : 94.000000 : 95.000000 : 96.000000 : 97.000000 : 98.000000 : 99.000000 : 100.000000 : 101.000000 : 102.000000 : 103.000000 : 104.000000 : 105.000000 : 106.000000 : 107.000000 : 108.000000 : 109.000000 : 110.000000 : 111.000000 : 112.000000 : 113.000000 : 114.000000 : 115.000000 : 116.000000 : 117.000000 : 118.000000 : 119.000000 : 120.000000 : 121.000000 : 122.000000 : 123.000000 : 124.000000 : 125.000000 : 126.000000 : 127.000000 : 128.000000 : 129.000000 : 130.000000 : 131.000000 : 132.000000 : 133.000000 : 134.000000 : 135.000000 : 136.000000 : 137.000000 : 138.000000 : 139.000000 : 0.000000 : 0.000000 : 0.000000 : 0.000000 : 0.000000 : 0.000000 : 0.000000 : 0.000000 : 0.000000 : 0.000000 :

View File

@ -0,0 +1 @@
: dir:../../../src/libcw: fn: cwFileSys: ext:cpp: fn: ../../../src/libcw/cwFileSys.cpp: ~/src/foo /home/kevin/src/foo

View File

@ -0,0 +1,2 @@
info: : Entering runtime.
info: : 'maxCycleCnt' reached: 3750. Shutting down flow.

View File

@ -0,0 +1,2 @@
info: : Entering runtime.
info: : 'maxCycleCnt' reached: 3750. Shutting down flow.

View File

@ -0,0 +1,3 @@
info: : Activated preset:a
info: : Entering runtime.
info: : 'maxCycleCnt' reached: 3750. Shutting down flow.

View File

@ -0,0 +1,12 @@
: my : 0.000000 : count
info: : Entering runtime.
: my : 1.000000 : count
: my : 2.000000 : count
: my : 0.000000 : count
: my : 1.000000 : count
: my : 2.000000 : count
: my : 0.000000 : count
: my : 1.000000 : count
: my : 2.000000 : count
: my : 0.000000 : count
info: : 'maxCycleCnt' reached: 7500. Shutting down flow.

View File

@ -0,0 +1,12 @@
: cnt : 0.000000 : add : 3.000000 : count
info: : Entering runtime.
: cnt : 1.000000 : add : 4.000000 : count
: cnt : 2.000000 : add : 5.000000 : count
: cnt : 0.000000 : add : 3.000000 : count
: cnt : 1.000000 : add : 4.000000 : count
: cnt : 2.000000 : add : 5.000000 : count
: cnt : 0.000000 : add : 3.000000 : count
: cnt : 1.000000 : add : 4.000000 : count
: cnt : 2.000000 : add : 5.000000 : count
: cnt : 0.000000 : add : 3.000000 : count
info: : 'maxCycleCnt' reached: 7500. Shutting down flow.

View File

@ -0,0 +1,2 @@
info: : Entering runtime.
info: : 'maxCycleCnt' reached: 3750. Shutting down flow.

View File

@ -0,0 +1,2 @@
info: : Entering runtime.
info: : 'maxCycleCnt' reached: 3750. Shutting down flow.

View File

@ -0,0 +1,2 @@
info: : Entering runtime.
info: : 'maxCycleCnt' reached: 3750. Shutting down flow.

View File

@ -0,0 +1,2 @@
info: : Entering runtime.
info: : 'maxCycleCnt' reached: 3750. Shutting down flow.

View File

@ -0,0 +1,2 @@
info: : Entering runtime.
info: : 'maxCycleCnt' reached: 3750. Shutting down flow.

View File

@ -0,0 +1,2 @@
info: : Entering runtime.
info: : 'maxCycleCnt' reached: 1500. Shutting down flow.

View File

@ -0,0 +1,6 @@
: cycle: 0 : cnt: 0: out: 0 vid: 12 ch: -1 : : : u:0 :
: cycle: 0 : add: 0: out: 0 vid: 0 ch: -1 : : : i:13 :
info: : Entering runtime.
: cycle: 750 : cnt: 0: out: 0 vid: 12 ch: -1 : : : u:1 : dst:add:0.in:2:
: cycle: 750 : add: 0: out: 0 vid: 0 ch: -1 : : : i:14 :
info: : 'maxCycleCnt' reached: 15000. Shutting down flow.

View File

@ -0,0 +1,7 @@
: cycle: 0 : a: 0: out: 0 vid: 2 ch: -1 : : : <invalid>:
: cycle: 0 : a: 0: out: 0 vid: 2 ch: -1 : : : i:1 :
: cycle: 0 : b: 0: out: 0 vid: 2 ch: -1 : : : <invalid>:
: cycle: 0 : b: 0: out: 0 vid: 2 ch: -1 : : : i:2 :
: cycle: 0 : add: 0: out: 0 vid: 0 ch: -1 : : : i:3 :
info: : Entering runtime.
info: : 'maxCycleCnt' reached: 0. Shutting down flow.

View File

@ -0,0 +1,25 @@
: cycle: 0 : a: 0: value: 0 vid: 0 ch: -1 : : : i:1 :
: cycle: 0 : b: 0: value: 0 vid: 0 ch: -1 : : : i:2 :
: cycle: 0 : add: 0: out: 0 vid: 0 ch: -1 : : : i:3 : dst:b:0.store:0:
info: : Entering runtime.
: cycle: 0 : b: 0: value: 0 vid: 0 ch: -1 : : : i:3 : dst:add:0.in:1:
: cycle: 0 : add: 0: out: 0 vid: 0 ch: -1 : : : i:4 : dst:b:0.store:0:
: cycle: 1 : b: 0: value: 0 vid: 0 ch: -1 : : : i:4 : dst:add:0.in:1:
: cycle: 1 : add: 0: out: 0 vid: 0 ch: -1 : : : i:5 : dst:b:0.store:0:
: cycle: 2 : b: 0: value: 0 vid: 0 ch: -1 : : : i:5 : dst:add:0.in:1:
: cycle: 2 : add: 0: out: 0 vid: 0 ch: -1 : : : i:6 : dst:b:0.store:0:
: cycle: 3 : b: 0: value: 0 vid: 0 ch: -1 : : : i:6 : dst:add:0.in:1:
: cycle: 3 : add: 0: out: 0 vid: 0 ch: -1 : : : i:7 : dst:b:0.store:0:
: cycle: 4 : b: 0: value: 0 vid: 0 ch: -1 : : : i:7 : dst:add:0.in:1:
: cycle: 4 : add: 0: out: 0 vid: 0 ch: -1 : : : i:8 : dst:b:0.store:0:
: cycle: 5 : b: 0: value: 0 vid: 0 ch: -1 : : : i:8 : dst:add:0.in:1:
: cycle: 5 : add: 0: out: 0 vid: 0 ch: -1 : : : i:9 : dst:b:0.store:0:
: cycle: 6 : b: 0: value: 0 vid: 0 ch: -1 : : : i:9 : dst:add:0.in:1:
: cycle: 6 : add: 0: out: 0 vid: 0 ch: -1 : : : i:10 : dst:b:0.store:0:
: cycle: 7 : b: 0: value: 0 vid: 0 ch: -1 : : : i:10 : dst:add:0.in:1:
: cycle: 7 : add: 0: out: 0 vid: 0 ch: -1 : : : i:11 : dst:b:0.store:0:
: cycle: 8 : b: 0: value: 0 vid: 0 ch: -1 : : : i:11 : dst:add:0.in:1:
: cycle: 8 : add: 0: out: 0 vid: 0 ch: -1 : : : i:12 : dst:b:0.store:0:
: cycle: 9 : b: 0: value: 0 vid: 0 ch: -1 : : : i:12 : dst:add:0.in:1:
: cycle: 9 : add: 0: out: 0 vid: 0 ch: -1 : : : i:13 : dst:b:0.store:0:
info: : 'maxCycleCnt' reached: 10. Shutting down flow.

View File

@ -0,0 +1,21 @@
: cycle: 0 : srate: 0: out: 0 vid: 2 ch: -1 : : : <invalid>:
: cycle: 0 : srate: 0: out: 0 vid: 2 ch: -1 : : : f:48000.000000 :
: cycle: 0 : tmr: 0: srate: 0 vid: 0 ch: -1 : extern : : f:48000.000000 : src:srate:0.out:0:
: cycle: 0 : lfo: 0: srate: 0 vid: 0 ch: -1 : extern : : f:48000.000000 : src:srate:0.out:0:
: cycle: 0 : lfo: 0: hz: 0 vid: 2 ch: -1 : : : f:3.000000 :
: cycle: 0 : lfo: 0: dc: 0 vid: 4 ch: -1 : : : f:440.000000 :
info: : Entering runtime.
: cycle: 0 : lfo: 0: hz: 0 vid: 2 ch: -1 : : : f:1.000000 :
: cycle: 0 : lfo: 0: dc: 0 vid: 4 ch: -1 : : : f:880.000000 :
info: : Activated preset:a
: cycle: 1500 : lfo: 0: hz: 0 vid: 2 ch: -1 : : : f:2.000000 :
: cycle: 1500 : lfo: 0: dc: 0 vid: 4 ch: -1 : : : f:220.000000 :
info: : Activated preset:b
: cycle: 3000 : lfo: 0: hz: 0 vid: 2 ch: -1 : : : f:220.000000 :
info: : Activated preset:c
: cycle: 4500 : lfo: 0: hz: 0 vid: 2 ch: -1 : : : f:1.500000 :
: cycle: 4500 : lfo: 0: hz: 0 vid: 2 ch: -1 : : : f:1.500000 :
: cycle: 4500 : lfo: 0: dc: 0 vid: 4 ch: -1 : : : f:550.000000 :
: cycle: 4500 : lfo: 0: dc: 0 vid: 4 ch: -1 : : : f:550.000000 :
info: : Activated preset:d
info: : 'maxCycleCnt' reached: 15000. Shutting down flow.

View File

@ -0,0 +1,7 @@
: a : 0 : b : 0.000000 : c
info: : Entering runtime.
: a : 1 : b : 2.000000 : c
: a : 2 : b : 4.000000 : c
: a : 3 : b : 6.000000 : c
: a : 3 : b : 6.000000 : c
info: : 'maxCycleCnt' reached: 3750. Shutting down flow.

View File

@ -0,0 +1,20 @@
: cycle: 0 : srate: 0: out: 0 vid: 2 ch: -1 : : : <invalid>:
: cycle: 0 : srate: 0: out: 0 vid: 2 ch: -1 : : : f:48000.000000 :
: cycle: 0 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:false :
: cycle: 0 : cnt: 0: out: 0 vid: 12 ch: -1 : : : u:0 :
: cycle: 0 : list: 0: out: 0 vid: 2 ch: -1 : : : a :
info: : Entering runtime.
: cycle: 750 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:true : dst:cnt:0.trigger:0:
: cycle: 750 : cnt: 0: out: 0 vid: 12 ch: -1 : : : u:1 : dst:list:0.in:0:
: cycle: 750 : list: 0: out: 0 vid: 2 ch: -1 : : : b :
: cycle: 1500 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:false : dst:cnt:0.trigger:0:
: cycle: 1500 : cnt: 0: out: 0 vid: 12 ch: -1 : : : u:2 : dst:list:0.in:0:
: cycle: 1500 : list: 0: out: 0 vid: 2 ch: -1 : : : c :
: cycle: 2250 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:true : dst:cnt:0.trigger:0:
: cycle: 3000 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:false : dst:cnt:0.trigger:0:
: cycle: 3750 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:true : dst:cnt:0.trigger:0:
: cycle: 4500 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:false : dst:cnt:0.trigger:0:
: cycle: 5250 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:true : dst:cnt:0.trigger:0:
: cycle: 6000 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:false : dst:cnt:0.trigger:0:
: cycle: 6750 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:true : dst:cnt:0.trigger:0:
info: : 'maxCycleCnt' reached: 7500. Shutting down flow.

View File

@ -0,0 +1,24 @@
: cycle: 0 : srate: 0: out: 0 vid: 2 ch: -1 : : : <invalid>:
: cycle: 0 : srate: 0: out: 0 vid: 2 ch: -1 : : : f:48000.000000 :
: cycle: 0 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:false :
: cycle: 0 : cnt: 0: out: 0 vid: 12 ch: -1 : : : u:0 :
: cycle: 0 : x0v: 0: out: 0 vid: 2 ch: -1 : : : <invalid>:
: cycle: 0 : x0v: 0: out: 0 vid: 2 ch: -1 : : : i:2 :
: cycle: 0 : x1v: 0: out: 0 vid: 2 ch: -1 : : : <invalid>:
: cycle: 0 : x1v: 0: out: 0 vid: 2 ch: -1 : : : i:3 :
: cycle: 0 : add: 0: out: 0 vid: 0 ch: -1 : : : i:5 :
info: : Entering runtime.
: cycle: 750 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:true : dst:cnt:0.trigger:0:
: cycle: 750 : cnt: 0: out: 0 vid: 12 ch: -1 : : : u:1 : dst:add:0.in:2:
: cycle: 750 : add: 0: out: 0 vid: 0 ch: -1 : : : i:6 :
: cycle: 1500 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:false : dst:cnt:0.trigger:0:
: cycle: 1500 : cnt: 0: out: 0 vid: 12 ch: -1 : : : u:2 : dst:add:0.in:2:
: cycle: 1500 : add: 0: out: 0 vid: 0 ch: -1 : : : i:7 :
: cycle: 2250 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:true : dst:cnt:0.trigger:0:
: cycle: 3000 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:false : dst:cnt:0.trigger:0:
: cycle: 3750 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:true : dst:cnt:0.trigger:0:
: cycle: 4500 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:false : dst:cnt:0.trigger:0:
: cycle: 5250 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:true : dst:cnt:0.trigger:0:
: cycle: 6000 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:false : dst:cnt:0.trigger:0:
: cycle: 6750 : tmr: 0: out: 0 vid: 3 ch: -1 : : : b:true : dst:cnt:0.trigger:0:
info: : 'maxCycleCnt' reached: 7500. Shutting down flow.

View File

@ -0,0 +1,8 @@
: cycle: 0 : srate: 0: in: 0 vid: 3 ch: -1 : : : f:48000.000000 :
: cycle: 0 : tmr: 0: srate: 0 vid: 0 ch: -1 : extern : : f:48000.000000 : src:srate:0.out:0:
: cycle: 0 : lfo: 0: srate: 0 vid: 0 ch: -1 : extern : : f:48000.000000 : src:srate:0.out:0:
info: : Entering runtime.
info: : Activated preset:a
info: : Activated preset:b
info: : Activated preset:c
info: : 'maxCycleCnt' reached: 15000. Shutting down flow.

View File

@ -0,0 +1,8 @@
: cycle: 0 : tmr: 0: srate: 0 vid: 0 ch: -1 : : : f:48000.000000 :
: cycle: 0 : lfo: 0: srate: 0 vid: 0 ch: -1 : : : f:0.000000 :
: cycle: 0 : osc: 0: srate: 0 vid: 0 ch: -1 : : : f:0.000000 :
info: : Entering runtime.
info: : Activated preset:a
info: : Activated preset:b
info: : Activated preset:c
info: : 'maxCycleCnt' reached: 15000. Shutting down flow.

View File

@ -0,0 +1,2 @@
info: : Entering runtime.
info: : 'maxCycleCnt' reached: 7500. Shutting down flow.

View File

@ -0,0 +1,12 @@
: cycle: 0 : xfade_ctl: 0: trigger: 0 vid: 4 ch: -1 : extern : : a : src:list:0.out:0:
info: : Entering runtime.
info: : Activated preset:a
: cycle: 1500 : xfade_ctl: 0: trigger: 0 vid: 4 ch: -1 : extern : : b : src:list:0.out:0:
info: : Activated preset:b
: cycle: 3000 : xfade_ctl: 0: trigger: 0 vid: 4 ch: -1 : extern : : c : src:list:0.out:0:
info: : Activated preset:c
: cycle: 4500 : xfade_ctl: 0: trigger: 0 vid: 4 ch: -1 : extern : : b : src:list:0.out:0:
info: : Activated preset:b
: cycle: 6000 : xfade_ctl: 0: trigger: 0 vid: 4 ch: -1 : extern : : a : src:list:0.out:0:
info: : Activated preset:a
info: : 'maxCycleCnt' reached: 7500. Shutting down flow.

View File

@ -0,0 +1,12 @@
: cycle: 0 : xfade_ctl: 0: trigger: 0 vid: 4 ch: -1 : extern : : a : src:list:0.out:0:
info: : Entering runtime.
info: : Activated preset:a
: cycle: 1500 : xfade_ctl: 0: trigger: 0 vid: 4 ch: -1 : extern : : b : src:list:0.out:0:
info: : Activated preset:b
: cycle: 3000 : xfade_ctl: 0: trigger: 0 vid: 4 ch: -1 : extern : : c : src:list:0.out:0:
info: : Activated preset:c
: cycle: 4500 : xfade_ctl: 0: trigger: 0 vid: 4 ch: -1 : extern : : b : src:list:0.out:0:
info: : Activated preset:b
: cycle: 6000 : xfade_ctl: 0: trigger: 0 vid: 4 ch: -1 : extern : : a : src:list:0.out:0:
info: : Activated preset:a
info: : 'maxCycleCnt' reached: 7500. Shutting down flow.

View File

@ -0,0 +1,2 @@
info: : Entering runtime.
info: : 'maxCycleCnt' reached: 7500. Shutting down flow.

View File

@ -0,0 +1,32 @@
info: : ln:1 col:1 tok:<int> '123' len:3
info: : Number: int:123 dbl:123.000000 unsigned:0 float:0
info: : ln:1 col:4 tok:<ident> 'ident0' len:6
info: : ln:1 col:10 tok:<space> '
' len:2
info: : ln:2 col:3 tok:<real> '123.456' len:7
info: : Number: int:123 dbl:123.456000 unsigned:0 float:0
info: : ln:2 col:10 tok:<space> '
' len:1
info: : ln:3 col:2 tok:<ident> 'ident0' len:6
info: : ln:3 col:8 tok:<space> '
' len:1
info: : ln:4 col:2 tok:<hex> '0xa12' len:5
info: : Number: int:2578 dbl:2578.000000 unsigned:0 float:0
info: : ln:4 col:7 tok:+ '+' len:1
info: : ln:4 col:8 tok:<real> '.2' len:2
info: : Number: int:0 dbl:0.200000 unsigned:0 float:0
info: : ln:4 col:10 tok:<space> '
' len:24
info: : ln:5 col:25 tok:<lcmt> '// comment
' len:12
info: : ln:6 col:2 tok:<bcmt> '/* block
comment */' len:20
info: : ln:7 col:12 tok:<qstr> 'quoted string' len:13
info: : ln:7 col:27 tok:<ident> 'ident1' len:6
info: : ln:7 col:33 tok:<space> ' ' len:1
info: : ln:7 col:34 tok:<real> '1234.56f' len:8
info: : Number: int:1234 dbl:1234.560000 unsigned:0 float:1
info: : ln:7 col:42 tok:<int> '345u' len:4
info: : Number: int:345 dbl:345.000000 unsigned:1 float:0
info: : ln:7 col:46 tok:<space> ' ' len:23
info: : ln:7 col:69 tok:<lcmt> '// last line comment' len:20

View File

@ -0,0 +1,69 @@
: offset: 3
: m0 :: 3 : 2 :
: 0 | : 0.000 : 3.000 :
: 1 | : 1.000 : 4.000 :
: 2 | : 2.000 : 5.000 :
: m1 :: 2 : 3 :
: 0 | : 0.000 : 1.000 : 2.000 :
: 1 | : 3.000 : 4.000 : 5.000 :
: m2 :: 3 : 2 : 2 :
: 0
: 0 | : 0.000 : 1.000 :
: 1 | : 2.000 : 3.000 :
: 1
: 0 | : 4.000 : 5.000 :
: 1 | : 6.000 : 7.000 :
: 2
: 0 | : 8.000 : 9.000 :
: 1 | : 10.000 : 11.000 :
: m3 :: 3 :
: 0.000 : 1.000 : 2.000 :
: m4 :: 3 : 2 :
: 0 | : 10.000 : 13.000 :
: 1 | : 11.000 : 14.000 :
: 2 | : 12.000 : 15.000 :
: y0 :: 2 : 2 :
: 0 | : 5.000 : 14.000 :
: 1 | : 14.000 : 50.000 :
: y1 :: 3 : 3 :
: 0 | : 9.000 : 12.000 : 15.000 :
: 1 | : 12.000 : 17.000 : 22.000 :
: 2 | : 15.000 : 22.000 : 29.000 :
: y0 :: 2 : 2 :
: 0 | : 5.000 : 14.000 :
: 1 | : 14.000 : 50.000 :
: y1 :: 3 : 3 :
: 0 | : 9.000 : 12.000 : 15.000 :
: 1 | : 12.000 : 17.000 : 22.000 :
: 2 | : 15.000 : 22.000 : 29.000 :
: m0 :: 3 : 2 :
: 0 | : 0.000 : 3.000 :
: 1 | : 1.000 : 4.000 :
: 2 | : 2.000 : 5.000 :
: y2 :: 6 : 2 :
: 0 | : 0.000 : 3.000 :
: 1 | : 1.000 : 4.000 :
: 2 | : 2.000 : 5.000 :
: 3 | : 10.000 : 13.000 :
: 4 | : 11.000 : 14.000 :
: 5 | : 12.000 : 15.000 :
: m0 :: 3 : 2 :
: 0 | : 0.000 : 3.000 :
: 1 | : 1.000 : 4.000 :
: 2 | : 2.000 : 5.000 :
: m4 :: 3 : 2 :
: 0 | : 10.000 : 13.000 :
: 1 | : 11.000 : 14.000 :
: 2 | : 12.000 : 15.000 :
: y3 :: 3 : 4 :
: 0 | : 0.000 : 3.000 : 10.000 : 13.000 :
: 1 | : 1.000 : 4.000 : 11.000 : 14.000 :
: 2 | : 2.000 : 5.000 : 12.000 : 15.000 :
: y4 - slice :: 1 : 4 :
: 0 | : 0.000 : 3.000 : 10.000 : 13.000 :
: y4 - mod :: 1 : 4 :
: 0 | : 0.000 : 2.000 : 10.000 : 13.000 :
: y5 -(one_hot(y4)) :: 3 : 4 :
: 0 | : 1.000 : 0.000 : 0.000 : 0.000 :
: 1 | : 0.000 : 1.000 : 1.000 : 0.000 :
: 2 | : 0.000 : 0.000 : 0.000 : 1.000 :

View File

@ -0,0 +1,19 @@
: value:2
: {
: : : : a: : : 1: ,
: : : : b: : : 2: ,
: : : : c: : : [: : : : : : 1.230000: ,: : : : : : 4.560000: : ]: ,
: : : : d: : : true: ,
: : : : e: : : false: ,
: : : : f: : : true: ,
: }: G: 1 2
: R: 1 2 : 1 0 1
: 91 : { "a" : 1, "b" : 2, "c" : [ 1.230000, 4.560000 ] , "d" : true, "e" : false, "f" : true }
: {
: : : : a: : : 1: ,
: : : : b: : : 2: ,
: : : : c: : : [: : : : : : 1.230000: ,: : : : : : 4.560000: : ]: ,
: : : : d: : : true: ,
: : : : e: : : false: ,
: : : : f: : : true: ,
: }

View File

@ -0,0 +1 @@
: { "A" : "Abc", "B" : 1.234000, "v0" : [ 1.230000, 2.340000, 3.450000 ] , "v1" : [ -1, 0, 1, 2, 3, 4 ] }

View File

@ -0,0 +1,2 @@
: Hello
foo

View File

@ -0,0 +1,6 @@
: dMs:1000 : GTE:0 LTE:1
: 2 500000000
: 1 750000000
: 1 250000000
: usec:5000
: sleep 1000 ms

View File

@ -0,0 +1 @@
: 1 : 1 : 1 : 1 : 1 : 2 : 2 : 2 : 2 : 2 :