FluidDataSetWr:
Filter:
FluCoMa/Classes (extension) | Libraries > FluidCorpusManipulation

FluidDataSetWr
ExtensionExtension

Write to FluidDataSet on the server

Description

A UGen that adds data points with associated identifiers to a FluidDataSet Internally, this calls setPoint, so IDs that already exist will be overwritten, and new IDs will be added. The actual work is done on the server's command queue, rather than the real-thread.

By default the object takes a control input (idNumber) as a numerical index that gets used for the point identifiers. This index is used to write each time the Ugen is re-triggered with a zero to non-zero transition. The identifier is then concatenated with the idPrefix symbol, which is fixed at instantiation. In this way, one can make custom, incrementing identifiers, e.g.

would add points like my_data0, mydata1, mydata2... if successively retriggered.

Alternatively, for one shot use you may not want a numerical suffix at all. Setting idNumber to nil will bypass this and use only the idPrefix string.

Class Methods

.kr

The equivalent of calling FluidDataSet: -setPoint, but within a Synth

Arguments:

dataset

An instance of FluidDataSet

idPrefix

A string or symbol with a prefix for generated identifiers.

idNumber

 An integer with the offset to start creating identifiers from. If the UGen is run in a server-side loop (i.e. repeatedly re-triggered), the generated identifiers will count upwards from this offset. If nil, then no numerical index will be applied to the generated identifier (i.e. only the idPrefix is used).

buf

The Buffer containing the data point.

trig

A kr trigger signal

blocking

If 0 then the job will run in its own thread (not reccomended for this object)

Examples

incremental buffer writing - sky is the limit

Circular Writing

Each time FluidDataSetWr is triggered it is like the FluidDataSet: -setPoint method so if the identifier does not exist it creates it. If the identifier does it exist then it updates it with the new values.

By looping idNumber values, we can use a FluidDataSet similar to a "circle buffer", always have the most recent n points in it that we want.