SynthDefBuilder

class supriya.tools.synthdeftools.SynthDefBuilder(name=None, **kwargs)[source]

A SynthDef builder.

>>> from supriya.tools import synthdeftools
>>> from supriya.tools import ugentools
>>> builder = synthdeftools.SynthDefBuilder(
...     frequency=440,
...     trigger=synthdeftools.Parameter(
...         value=0,
...         parameter_rate=synthdeftools.ParameterRate.TRIGGER,
...         ),
...     )
>>> with builder:
...     sin_osc = ugentools.SinOsc.ar(
...         frequency=builder['frequency'],
...         )
...     decay = ugentools.Decay.kr(
...         decay_time=0.5,
...         source=builder['trigger'],
...         )
...     enveloped_sin = sin_osc * decay
...     out = ugentools.Out.ar(bus=0, source=enveloped_sin)
...
>>> synthdef = builder.build()
>>> graph(synthdef)  

Lineage

digraph InheritanceGraph { graph [background=transparent, bgcolor=transparent, color=lightslategrey, fontname=Arial, outputorder=edgesfirst, overlap=prism, penwidth=2, rankdir=LR, root="__builtin__.object", splines=spline, style="dotted, rounded", truecolor=true]; node [colorscheme=pastel19, fontname=Arial, fontsize=12, penwidth=2, style="filled, rounded"]; edge [color=lightsteelblue2, penwidth=2]; subgraph cluster_builtins { graph [label=builtins]; "builtins.object" [color=1, group=0, label=object, shape=box]; } subgraph cluster_synthdeftools { graph [label=synthdeftools]; "supriya.tools.synthdeftools.SynthDefBuilder.SynthDefBuilder" [color=black, fontcolor=white, group=1, label=<<B>SynthDefBuilder</B>>, shape=box, style="filled, rounded"]; } subgraph cluster_systemtools { graph [label=systemtools]; "supriya.tools.systemtools.SupriyaObject.AbstractBase" [color=3, group=2, label=AbstractBase, shape=box]; "supriya.tools.systemtools.SupriyaObject.SupriyaObject" [color=3, group=2, label=SupriyaObject, shape=box]; "supriya.tools.systemtools.SupriyaObject.AbstractBase" -> "supriya.tools.systemtools.SupriyaObject.SupriyaObject"; } "builtins.object" -> "supriya.tools.systemtools.SupriyaObject.AbstractBase"; "supriya.tools.systemtools.SupriyaObject.SupriyaObject" -> "supriya.tools.synthdeftools.SynthDefBuilder.SynthDefBuilder"; }

Bases

Attribute summary

build([name, optimize])
name
poll_ugen(ugen[, label, trigger, trigger_id])
__enter__()
__eq__(expr) Is true when ID of expr equals ID of Supriya object.
__exit__(exc_type, exc_value, traceback)
__format__([format_specification]) Formats Supriya object.
__getitem__(item)
__hash__() Hashes Supriya object.
__repr__() Gets interpreter representation of Supriya object.

Read-only properties

SynthDefBuilder.name

Methods

SynthDefBuilder.build(name=None, optimize=True)[source]
SynthDefBuilder.poll_ugen(ugen, label=None, trigger=None, trigger_id=-1)[source]

Special methods

SynthDefBuilder.__enter__()[source]
(SupriyaObject).__eq__(expr)

Is true when ID of expr equals ID of Supriya object. Otherwise false.

Returns boolean.

SynthDefBuilder.__exit__(exc_type, exc_value, traceback)[source]
(SupriyaObject).__format__(format_specification='')

Formats Supriya object.

Set format_specification to ‘’ or ‘storage’. Interprets ‘’ equal to ‘storage’.

Returns string.

SynthDefBuilder.__getitem__(item)[source]
(SupriyaObject).__hash__()

Hashes Supriya object.

Required to be explicitely re-defined on Python 3 if __eq__ changes.

Returns integer.

(SupriyaObject).__repr__()

Gets interpreter representation of Supriya object.

Returns string.