48 lines
No EOL
1.2 KiB
Python
48 lines
No EOL
1.2 KiB
Python
# Here, s stands for the sonnum object,
|
|
# c stands for compiler object
|
|
|
|
def i_create_simple(c, s, name):
|
|
# ;name*
|
|
|
|
node = s.add_node(name)
|
|
c.add_activity('create', 0, 0, node, None, [])
|
|
|
|
def i_create_relay(c, s, name):
|
|
# ;name@
|
|
|
|
node = s.add_node(name)
|
|
c.add_activity('create', 0, 0, node, None, [])
|
|
c.add_activity('relay', 0, s.g('endtick'), node, None, [])
|
|
|
|
def i_end_tick(c, s, endtick):
|
|
# ;endtick!
|
|
c.add_activity('endtick', 0, endtick, None, None, [])
|
|
s.s('endtick', endtick)
|
|
|
|
def i_wire(c, s, src_name, trg_name):
|
|
# ;name=>name
|
|
|
|
src_node = s.node_by_name(src_name)
|
|
trg_node = s.node_by_name(trg_name)
|
|
|
|
if src_node and trg_node:
|
|
c.add_activity('wire', 0, 0, src_node, trg_node, [])
|
|
|
|
def i_air(c, s, src_name, trg_name):
|
|
# ;name->name
|
|
|
|
src_node = s.node_by_name(src_name)
|
|
trg_node = s.node_by_name(trg_name)
|
|
|
|
if src_node and trg_node:
|
|
c.add_activity('air', 0, 0, src_node, trg_node, [])
|
|
|
|
def i_pos(c, s, node_name, tick, x, y, z):
|
|
|
|
node = s.node_by_name(node_name)
|
|
c.add_activity('setpos', tick, tick, node, None, [x, y, z])
|
|
|
|
def i_setfreq(c, s, node_name, tick, freq, r_amp):
|
|
|
|
node = s.node_by_name(node_name)
|
|
c.add_activity('setfreq', tick, tick, node, None, [freq, r_amp]) |