### A simple wind-chime actor

The PentaActor simulates a wind chime with controllable tonal center, randomness, density, and one user-defined parameter (typically duration). It does not make sound itself, but calls a user-defined message group for each "chime"; this message group does the actual sound production.

To use the PentaActor, load pentatonic.so and create an actor of type PentaActor.

### PentaActor messages

In addition to the messages understood by all actors, the PentaActor understands the following messages:
SetMessageGroup hActor "name"
Set the sound-producing message group to the one with name name. The parameters sent to the message group are:
• *0 = frequency in Hz
• *1 = amplitude
• *2 = value
• *3 = random value in the range +-0.9, useful for panning.
The message group may of course ignore any or all of these parameters.
SetIrregularity hActor x
Set the irregularity of chime-occurrences. 0 or less produces a steady pulse; greater values of x produce greater irregularity. As x approaches 1, arbitrarily small and arbitrarily large pauses between chimes can occur. This is computed with what can be grandly referred to as Goudeseune's improvement to the Xenakis-Poisson-Myhill algorithm.
SetHueExact hActor x
Choose one of twelve possible pentatonic pitch sets for the chimes, exactly. x is an integer from 0 to 11 inclusive.
SetHue hActor x
Choose one of the twelve pitch sets, as x (floating point) ranges from 0 to 1.
SetSaturation hActor x
Set the mean number of chimes per second to x (x must be positive). Default is 1.
SetValue hActor x
Set this user-defined parameter, passed verbatim to *2 in the aforementioned message group. Duration of a chime is one useful interpretation of this value.
SetAmp hActor x
Set a scaling factor for amplitudes passed to *1 of the message group. Defaults to unity.
SetWidth hActor x
Set the average width of the effective pitch set used, x between 0 and 1 (default 0.25). Smaller values produce a pitch distribution more nearly Gaussian (and also somewhat more expensive to compute); unity produces a uniform pitch distribution.
SetLowestFreq hActor freq
Set the lowest frequency for the chimes, in Hz (20 to 8820 Hz). Defaults to 220 Hz.